利用地址池分配ip地址
咱們在建立虛擬機實例時能夠設置gateway和netmask,還有一個有用的捷徑是在設置ip時採用動態ip地址,能夠設置--ip=auto選項,在建立虛擬機時會從/etc/xen-tools/ips.txt中獲取ip地址,例如設置一個192.168.1.00-192.168.1.200的地址池:
for i in $(seq 100 200) ; do echo 192.168.1.$i >> /etc/xen-tools/ips.txt ; done
如今咱們建立虛擬機實例使用--ip=auto就會自動得到ip
xen-create-image --ip=auto --hostname=blah
在獲取到地址池的ip後,相應的ip會被標記爲使用狀態,假如全部的ip都被佔用則系統會建立失敗。
分區及文件系統定製
默認的虛擬機在建立時會建立兩個LVM卷,一個是根系統,一個是swap分區,若是你想指定一個自定義的分區規劃,只要在 /etc/xen-tools/partitions.d/目錄下自定義你的分區規劃,參照sample-server模版文件,編寫好模版後用--partition選項指定文件便可。
設置xen配置文件
在一個虛擬機實例被建立後,相應的配置文件會在/etc/xen目錄下生成,能夠使用--output選項從新指定, 配置文件是由/etc/xen-tools/xm.tmpl文件自動生成的
本地鏡像實例
xen-create-image --size=2Gb --swap=128Mb --dhcp --dist=stable \
--dir=/home/xen --hostname=vm01.my.flat
xen-create-image --size=2Gb --swap=128Mb \
--ip=192.168.1.200 \
--netmask=255.255.255.0
--gateway=192.168.1.1 \
--nameserver=192.168.1.1 \
--dir=/home/xen --hostname=vm02.my.flat
當在配置文件中設置loopback images的保存路徑後,會在以下路徑保存相關虛擬機實例鏡像
$dir/domains/vm01.my.flat/
$dir/domains/vm01.my.flat/disk.img
$dir/domains/vm01.my.flat/swap.img
$dir/domains/vm02.my.flat/
$dir/domains/vm02.my.flat/disk.img
$dir/domains/vm02.my.flat/swap.img
lvm實例
xen-create-image --size=2Gb --swap=128Mb --dhcp \
--lvm=myvolumegroup --hostname=vm01.my.flat
在myvolumegroup卷組中會建立以下兩個文件:
vm01.my.flat-swap
vm01.my.flat-disk
虛擬機快速安裝
xen-create-image --size=2Gb --swap=128Mb --dhcp \
--lvm=myvolumegroup --hostname=vm01.my.flat \
--install-method=tar --install-source=/path/to/tar.file.tar
xen-create-image --size=2Gb --swap=128Mb --dhcp \
--lvm=myvolumegroup --hostname=vm01.my.flat \
--install-method=copy --install-source=/path/to/copy/from
由於tar和copy文件都是在本地的,因此安裝起來至關快。
skel目錄的應用
任何在/etc/xen-tools/skel目錄下的文件都會被拷貝進虛擬機實例中,這個目錄的規則和/etc/skel目錄相似
一個典型的應用就是給每一個新建的虛擬機實例拷貝公鑰文件。
mkdir -p /etc/xen-tools/skel/root/.ssh
chmod -R 700 /etc/xen-tools/skel/root
cp /root/.ssh/id_rsa.pub /etc/xen-tools/skel/root/.ssh/authorized_keys2
chmod 644 /etc/xen-tools/skel/root/.ssh/authorized_keys2