xenserver命令解决问题
XenServer 通过ionice 限制VM 虚拟机硬盘IO
发布时间:June 8, 2013 // 分类:虚拟化 // 1 Comment
之前有⽂章介绍Xen 下通过ionice 限制VM 虚拟机硬盘IO 优先级,XenServer 获取虚拟机进程和Xen 不同,可通过以下⽅法查虚拟机IO 进程,并使⽤ionice 限制。
⾸先获取VM 虚拟机的UUID : 1 x e vm-list name-label= --minimal
然后再获取VM 的DOM ID : 1 l ist_domains |awk '// {print $1}'
通过DOM ID 获取VM 相对应的进程ID : 1 2 3 ps aux|grep xb.*.xvd
root 10995 0.0 0.0 0 0 ? S 10:08 0:01 [xb.00003.xvda] root 10996 0.0 0.0 0 0 ? S 10:08 0:00 [xb.00003.xvdd] 使⽤ionice 调整相应进程的IO 优先级策略即可。
XenServer 修改Linux/Windows 系统模板内存等资源限制发布时间:January 5, 2013 // 分类:虚拟化 // No Comments XenServer 虚拟机系统模板对内存等资源有做限制,在新建虚拟机时分配的资源不能⼩于模板最⼩限额。 XenServer 下查看CentOS 6 32位模板内存最⼩限制:
1 2 xe template-list name-label=CentOS\ 6\ \(32-bit\) params=memory-static-min --minimal 536870912
可见内存最⼩限制为512M ,如果安装Centos6虚拟机内存不能⼩于512M ,修改Centos 模板内存最⼩限制为128M : 1 2 3 4 xe template-list name-label=CentOS\ 6\ \(32-bit\) params=uuid --minimal #查看Centos 模板uuid
xe template-param-set uuid= memory-static-min=128MiB
#修改内存最⼩限制为128M
XenServer 通过⽹络安装Debian Squeeze/CentOS 虚拟机发布时间:December 3, 2012 // 分类:虚拟化 // No Comments XenServer 可以通过在本地新建ISO 存储或NFS 存储挂载ISO 镜像安装系统,对于Linux 可⽀持通过⽹络http 或ftp 安装,以下记录下XenServer 通过⽹络安装Debian 和CentOS 系统。
新建虚拟机:
1 2 xe vm-install template=Debian\ Squeeze\ 6.0\ \(32-bit\) new-name-label=debian6 sr-name-label=Local\ storage
#返回vm uuid
设置安装源:
1 x e vm-param-set uuid=
2 3 other-config:install -repository=www.doczj/doc/c42c89ee10a6f524cdbf85b8.html /debian/
#debian5:www.doczj/doc/c42c89ee10a6f524cdbf85b8.html /debian-archive/
#centos 使⽤类似链接:www.doczj/doc/c42c89ee10a6f524cdbf85b8.html /centos/6.3/os/i386/
新建虚拟⽹卡: 1 2 3 xe vif-create vm-uuid= network-uuid= mac=random device=0 #查看⽹卡uuid
xe network-list bridge=xenbr0 --minimal
启动虚拟机:
1 x e vm-start name-label=debian6
XenServer 获取所有VM 虚拟机IP 及对应MAC 地址
发布时间:November 20, 2012 // 分类:虚拟化,Shell // 1 Comment
XenServer 5.6下编写,⽤于获取所有VM 虚拟机IP 和对应MAC 地址,Shell 脚本如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #!/bin/bash
#
if [[ ! - ]];
then
else
>
fi
for vps in `xe vm-list |awk '/name/ {print $4}'`
do
case $vps in
*"Control"* ) continue ;;
esac
writeline=`xe vif-list vm-name-label=$vps params=MAC|awk '/MAC/ {print $5}'` writeline+=" "
writeline+=`xe vm-list name-label=$vps params=networks|awk '/network/ {print $5}'`
echo $writeline >>
done
XenServer 获取VM 虚拟机名称与MAC 地址参考:
/archives/xenserver-vmname-mac.html 。
XenServer 获取所有VM 虚拟机名称及对应MAC 地址
发布时间:November 19, 2012 // 分类:虚拟化,Shell // No Comments
XenServer 5.6测试通过,⽤于查所有VM 及其对应MAC 地址写⼊output.csv ⽂件,直接下载shell 脚本。 1 #!/bin/bash 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 #
if [ $(whoami ) != 'root' ];
then
echo "Must be root to run $0"
tcpip详解卷二pdfexit 1;
fi
if [[ ! -e output.csv ]];
then
touch output.csv
else
> output.csv
fi
for vmuuid in `xe vm-list | awk -F ':' '/^uuid/ {print $2}'` ;
do
namelabel=`xe vm-param-get uuid=$vmuuid param-name=name-label`
case $namelabel in
*"Control domain"* ) continue ;;
esac
i=`xe vif-list vm-name-label="$namelabel" | grep device | wc -l`
writeline="\"$namelabel\""
writeline+=","
for ((j=0;j<$i;j++))
do
mac=`xe vif-list vm-name-label="$namelabel" params=MAC device=$j | awk -F ': ' '/^MAC/ {print $2}'`
if [ -z "$mac" ]
then
i=`expr $i + 1`
continue
else
writeline+=$mac
fi
if [ $j -lt `expr $i - 1` ]
then
writeline+=","
fi
done
echo "$writeline" >> output.csv
done
echo "VMs and their respective MAC addresses have been written to output.csv in the current directory."
exit 0
使⽤sFlowTrend 监控XenServer 服务器
发布时间:October 22, 2012 // 分类:虚拟化 // No Comments
服务器端安装Host sFlow Agent 代理客户端,⽤作发送sFlow 数据到sFlowTrend 分析端,⽀持多种Windows /Linux /Uinx 系统。Host sFlow 下载地址:www.doczj/doc/c42c89ee10a6f524cdbf85b8.html /
sFlowTrend 下载地址:www.doczj/doc/c42c89ee10a6f524cdbf85b8.html /products/sFlowTrend.php
XenServer 6可直接安装Host sFlow ,XenServer5要先配置为Open vSwitch 模式⽀持sFlow 。 1 2 wget
www.doczj/doc/c42c89ee10a6f524cdbf85b8.html /project/host-sflow/REL-1_22/hsflowd_XenServer_56FP 2-1.22.2-1.i386.rpm
rpm -ivh hsflowd_XenServer_56FP2-1.22.2-1.i386.rpm
配置Host sFlow : 1 2 3 4 5 6 7 8 9 10 11 cat /f
#
sflow {
DNSSD = off
polling = 20
sampling = 512
collector {
ip = 192.168.1.155
udpport = 6343
}
}
启动Host sFlow Agent :
1 /etc/init.d/hsflowd start
然后在sFlowTrend配置代理端,不久即可看到监控的数据:
分析XenServer 虚拟交换机sFlow 数据: 1 2 ovs-vsctl -- --id =@sflow create sflow agent=xenbr0 targe=\"192.168.1.155:6343\" header=128 sampling=512 polling=30 \
-- set bridge eth0 sflow=@sflow
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论