您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關 xenserver如何批量安裝vm 的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
[root@xenserver-1 ~]# vim install.py
#!/bin/env python
import threading
import time
import os
loops=['192.168.11.203','192.168.11.204','192.168.11.205']
def work(ip):
cmd='bash -x ./install.sh '+ip
os.system(cmd)
def main():
threads=[]
nloops=range(len(loops))
for i in loops:
kscmd="sed -ci \'s/^network.*/network --onboot yes --device eth0 --bootproto=static --ip="+i+" --netmask=255.255.255.0 --gateway=192.168.11.21 --nameserver=114.114.114.114 --noipv6/\' /var/www/html/repo/ks/centos-6.3.ks
"
print kscmd
os.system(kscmd)
t=threading.Thread(target=work,args=(i,))
t.start()
time.sleep(40)
# work(i)
if __name__=="__main__":
main()
[root@xenserver-1 ~]# vim install.sh
#!/bin/bash
function installvm(){
networkip=$1
sruuid=`xe sr-list | grep -C 1 "Local"|head -3|grep uuid|awk -F': ' '{print $2}'`
#初始化一個空的VM
uuid=`xe vm-install new-name-label=centos6_$networkip sr-uuid=$sruuid template=Other\ install\ media`
#設置VM的CPU,內存
xe vm-param-set VCPUs-max=2 uuid=$uuid
xe vm-param-set VCPUs-at-startup=2 uuid=$uuid
xe vm-param-set memory-static-max=1073741824 uuid=$uuid
xe vm-param-set memory-dynamic-max=512435456 uuid=$uuid
xe vm-param-set memory-dynamic-min=512435456 uuid=$uuid
xe vm-param-set memory-static-min=268217728 uuid=$uuid
#xe vm-param-set memory-dynamic-max=906MiB uuid=$uuid
#xe vm-param-set memory-static-max=1024MiB uuid=$uuid
#xe vm-param-set memory-dynamic-min=812MiB uuid=$uuid
#xe vm-param-set memory-static-min=512MiB uuid=$uuid
#為自動化安裝VM設置bootloader,httprepo,kickstart
xe vm-param-set HVM-boot-policy="" uuid=$uuid
xe vm-param-set PV-bootloader="eliloader" uuid=$uuid
xe vm-param-set other-config:install-repository="http://192.168.11.200:8080/repo/centos/6.3/" uuid=$uuid
xe vm-param-set PV-args="ip=$networkip netmask=255.255.255.0 gateway=192.168.11.21 ns=114.114.114.114 ks=http://192.168.11.200:8080/repo/ks/centos-6.3.ks ksdevice=eth0" uuid=$uuid
#為VM添加一塊虛擬硬盤
xe vm-disk-add uuid=$uuid sr-uuid=$sruuid device=0 disk-size=20GiB
#設置虛擬硬盤為bootable
uuid1=`xe vbd-list vm-uuid=$uuid userdevice=0 params=uuid --minimal`
xe vbd-param-set bootable=true uuid=$uuid1
#為VM創建網絡
networkid=`xe network-list bridge=xenbr0 --minimal`
xe vif-create vm-uuid=$uuid network-uuid=$networkid mac=random device=0
#啟動VM,接下來,VM將自動化安裝好所有的基礎軟件包,并啟動SSH服務
xe vm-start uuid=$uuid
}
installvm $1
[root@xenserver-1 ~]# more /var/www/html//repo/ks/centos-6.3.ks
cmdline
skipx
install
cdrom
lang en_US.UTF-8
keyboard us
rootpw 12345678
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --disabled
timezone --utc Etc/UTC
bootloader --location=mbr --driveorder=xvda --append="crashkernel=auto"
zerombr
clearpart --all --initlabel
autopart
reboot
%packages --nobase
@core
%end
network --onboot yes --device eth0 --bootproto=static --ip=192.168.11.205 --netmask=255.255.255.0 --gateway=192.168.11.21 --nameserver=114.114.114.114 --noipv6
感謝各位的閱讀!關于“ xenserver如何批量安裝vm ”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。