Xenserver 的VM 的基本benchmarks

服务器仍然为online.net 的服务器,硬盘是 3 x 500 GB SSD

测试使用的程序:

wget -qO- bench.sh | bash

VM 的配置为:

8 vCPU
8GB RAM
80GB SSD

下面是测试结果(主要侧重于IO测试):

----------------------------------------------------------------------
CPU model            : Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz
Number of cores      : 8
CPU frequency        : 3493.688 MHz
Total size of Disk   : 71.3 GB (2.0 GB Used)
Total amount of Mem  : 8040 MB (203 MB Used)
Total amount of Swap : 7628 MB (0 MB Used)
System uptime        : 2 days, 8 hour 12 min
Load average         : 0.08, 0.02, 0.01
OS                   : Debian GNU/Linux 9
Arch                 : x86_64 (64 Bit)
Kernel               : 4.9.0-8-amd64
----------------------------------------------------------------------
I/O speed(1st run)   : 235 MB/s
I/O speed(2nd run)   : 234 MB/s
I/O speed(3rd run)   : 214 MB/s
Average I/O speed    : 227.7 MB/s

 

Online.net Xenserver 使用RPN-SAN的诸多问题

Online.net 的系统本身就有很多问题,加上XenServer 以后问题就更多了,再加上RPN – SAN 以后,那问题就更更更多了。。。

为什么要是用RPN-SAN? 

因为online.net 的服务器很多都是纯SSD 服务器,如果我们需要放置大量的图片的话,显然是不够的,这个时候RPN-SAN 就派上用场了, 在纯dedicated server上使用SAN,那是很容易的事情,直接挂载就可以了,在XenServer上挂载iSCSI 的 SAN,则稍微麻烦点, 有几点注意事项:

  1. XenServer 7 是建立在CentOS 7 上面的, iSCSI用的port 是3260, 所以需要在防火墙上打开3260
  2. Online.net 的RPN-SAN 用的是内网,位于 10.88.0.0/14. 如果你的online.net 的服务器是用的IPMI 安装的系统,那么你需要把这台服务器自带的Private IP 配置上. 关于private ip 的 netmask,和gateway 可以先用DHCP 激活,然后自己记录下来,稍后你可以一直使用DHCP,或者按照自己的意愿使用static
  3. 在购买完了Online.net 的 RPN-SAN以后,你需要在此RPN-SAN的管理页面,给使用此RPN-SAN 的dedicated server授权,这是从security 的角度考虑
  4. 于此同时,你还需要在RPN Group里面,把RPN-SAN 和使用此SAN 的服务器放置于同一个Group里面
  5. 一般来说,RPN-SAN 和 服务器的Private IP 需要在一个网段,我们这里可以使用10.88.0.0/14 或者10.90.0.0/15
  6. XenServer 需要手动添加一条面向private network 10.88.0.0/14 或者10.90.0.0/15的 route,这样是他们互相通信,为了方便,此文下面假设我们使用的是10.90.0.0/15这个网段
  7. XenServer 通过xapi 添加static route 的办法:
xe network-list
xe network-param-set uuid=<UUID> other-config:static-routes=10.90.0.0/15/10.90.23.1

在这命令里面,我们的网卡为xenbr2,IP 为10.90.23.44, Gateway 为10.90.23.1

运行完这条命令, 如果我们使用route -n 来查看route, 会发现没有任何变化, 这是因为我们需要重启系统或者运行xe-toolstack-restart 来使新的配置生效

添加static route 很简单,但是删除就比较麻烦了. 删除的话,需要一次性删除所有的static route,然后再添加我们认为必须的route.

删除所有static route:

xe network-param-remove uuid={network UUID} param-name=other-config param-key=static-routes

If there were some needed static route, add them back, for example:

xe network-param-set uuid={network UUID} other-config:static-routes=192.168.98.0/24/192.168.1.1,192.168.99.0/24/192.168.1.1

 

After that, reboot to make them take effect.

对于storage来说,我们经常会把NIC 的MTU 改为9000, steps to modify MTU in Senserver:

  1. shutdown guests
  2. reconfigure network

xe network-param-set uuid=<network-uuid> MTU=9000

      3. reboot hosts

       4. verify proper MTU sizing

Xenserver 快速安装debian

回首看看过去一年写过的博文,我真为我自己的语言水平感到汗颜。。我自己都读的不通顺。。。

回归正题,之所以有在Xenserver上安装debian的需求,完全是因为我有几台online.net的服务器,说起online.net, 真是对他又爱又恨。。。爱他是因为他的网络真心的稳定,价格便宜实惠而且网络又好。。。恨他是因为他家独有的float IP。。。让玩Xen 虚拟化的人吃劲了麻烦。。。尤其是在服务器的主IP 和 failover IP 不在一个/16的IP 段的时候,你就基本上不能使用net install 来安装centos 和 debian 了

但是没有想到今天无意间看到一篇关于在xenserver 上创建 SR 的文章, 通过本地的local SR,可以直接添加centos 和 debian 的minimum instal ISO file

过程如下:

步骤一: 直接ssh 登录你的xenserver 服务器,创建如下目录

mkdir -p /var/opt/xen/iso_import

步骤二: 创建 local SR ( storage repository)

xe sr-create name-label=LocalISO type=iso device-config:location=/var/opt/xen/iso_import device-config:legacy_mode=true content-type=iso

这个时候你就可以在xencenter 上看到这个local SR 了

步骤三: 将你的想用的iso 直接wget 到/var/opt/xen/iso_import 这个目录下面, 比如说centos mini iso, debian netinst iso 等等,在xencenter 上点击rescan 就可以啦

这样在你安装新的centos 和 debian 的时候,就可以直接选择这些iso 啦

 

 

一些常用的xenserver 的命令集合

这是在搜索xenserver 的 SR 的问题的时候无意中找到的,很有帮助,对于我这种懒人来说

xe help –all|more
Show a list of XenServer CLI commands

xsconsole
Runs up the XenServer text based console

xe-toolstack-restart
Restarts the XenServer management tools

ls –l
List files in a Directory

less /var/log/dmesg
Display Boot Messages from Linux

xe host-dmesg
Xen Hypervisor Boot messages

tail –f /var/log/xensource.log
Look at xapi messages as they happen

tail –f /var/log/xensource.log | grep xxx
Look at xapi messages only for vm uuid xxx

tail –f [log name] > [target filename]
Send output to a file for analysis later

cat /etc/xensource-inventory
Display XenSource Inventory info

xen-bugtool –yes
Build a status report when xapi is down

xe-backup-metadata -d –u [uuid of SR]
Back up Pool metadata for all VMs

tcpdump –i [inf] –vvv –w [filename]
Get a Packet trace from [inf]. E.g. Inf=eth0, xenbr0, vif2.0 etc.

top
List the top processes running in Dom0

xentop
List top Xen processes

mpstat 5
Processor stats in Dom0

vmstat 2
Virtual memory in Dom0

netstat –s
Networking statistics

iostat -d 2 6
Storage traffic stats

list_domains
Lists VMs that are running

fdisk –l
List the disk partitions

hdparm –t /dev/sda3
Device read times for sda3 (normally local SR)

pvs
Show local and remote LVHD SRs

ll /dev/disks/by-id
Look at disk partitions

lvs
List logical volumes (virtual disks)

vgs
List LVM volume groups

cd /var/run/sr-mount
Look at NFS SRs

df -h
Shows how much disk space you have left

dd if=/dev/sdb of=/dev/null iflag=direct bs=1M count=512
Read data performance from sdb.

dd if=/dev/zero of=/dev/sdb oflag=direct bs=1M count=4096
Write performance on sdb. * Don’t use on disks with VMs on them!

ifconfig
Show info on NICs, virtual switches and vNICs

brctl show
Show info on virtual switches

ethtool eth0
Info for NIC eth0

mii-tool
Info on NIC bonding

iscsiadm -m discovery –type sendtargets –port 192.168.250.14
Discover iSCSI targets available to this server

iscsiadm –m session
Open iscsi sessions

history
Lists the history of commands you’ve used

!136
Executes command #136 in the history

history -w history-list.txt
Writes the history info to a text file

 

Xenserver 上安装 centos 和 debian

以前很傻呼呼的,都是直接用的minimal cd 安装的,现在知道了原来还可以用URL 的方式安装

对于centos来说,可以使用这些URL:

http://mirrors.sonic.net/centos/6/os/x86_64/

http://less.cogeco.net/centos/6/os/x86_64/

http://centos.mirror.constant.com/6/os/x86_64/

http://centos.mirror.root.lu/centos/6/os/x86_64/

http://mirror.nl.leaseweb.net/centos/6/os/x86_64/

http://repos.lax.quadranet.com/centos/6/os/x86_64/

亚洲的可选:

http://centos.mirror.cdnetworks.com/6/os/x86_64/

安装完以后安装 xentools:

mount /dev/cdrom /media
cd /media/Linux/

./install.sh

 

在 xenserver上安装debian,可以使用一下URL:

ftp://ftp.us.debian.org/debian

安装xen tools:

mount /dev/cdrom /media
cd /media/Linux/

./install.sh

在Xenserver 的 VM 上用 GUI 的方式安装 CentOS

最近一阵子一直在用 虚拟化技术,既可以充分利用资源,也可以省下很多在购买cPanel 的license 的费用

但是,默认centos 安装是 text, 也就是说你不能选择创建自己的分区,必须使用LVM 等等。 但是我的一台xenserver 的服务器上,有一个2TB 的硬盘,还有一个 120G 的SSD

我是想把 mysql 放在 ssd 上,其余的放在 sata 上,这样的话就不能使用 LVM,必须自己创建分区。

更多

解决Xenserver 同时添加多个硬盘的问题

这周三,周四的时候看到 quadranet 有一个超级 deal, E3-1241V3, 32GB RAM, 4X1TB 硬盘, /25  的IP,很是便宜于是赶紧拿下,并且让他们安装了 XenServer 系统。

于是乎问题来了。。。

平常使用的XenServer 都是只有一块硬盘,所以安装的时候 Xenserver 会自动延伸使用整个硬盘, 但是我这个服务器上有四个 1TB 的硬盘,而且我在 xencenter 上并没有看到按理说应该有的local storage,这该怎么办?

更多