XenServer 6.2中的VM随宿主机开机自启动 注意:XenServer HA环境中请慎用 方法一: 一、SSH工具(如putty、SecureCRT)登录到XenServer; 二、查看所有的pool并设置pool自动启动: 1、xe pool-list 查看所有的pool: # xe pool-list uuid ( RO) : c7d7a7e4-77ad-e6a6-c935-4cba102881a8 name-label ( RW): name-description ( RW): master ( RO): b35d1618-ad4e-4830-89da-d93788e9f082 default-SR ( RW): 85280950-f08d-9e4d-5e51-f0ec4e221a7a 2、设置pool的自动启动: # xe pool-param-set uuid=c7d7a7e4-77ad-e6a6-c935-4cba102881a8 other-config:auto_poweron=true 三、列出所有的虚拟机并设置自动启动: 1、xe vm-list 列出所有的虚拟机: # xe vm-list uuid ( RO) : adad6140-1cc8-30e9-dc4d-05fb426eaf4e name-label ( RW): MYSQL-Master power-state ( RO): running uuid ( RO) : 8e342f09-3a87-604e-11f4-96b37b8bcc40 name-label ( RW): Windows Server 2003 (64-bit) power-state ( RO): running uuid ( RO) : d7432a76-0486-492c-84f6-eab02c52af54 name-label ( RW): Control domain on host: xenserver power-state ( RO): running 2、设置所有虚拟机开机自动启动: # for i in `xe vm-list params=uuid --minimal | sed 's/,/ /g'`;do xe vm-param-set uuid=$i other-config:auto_poweron=true;done 3、如果只需要设置单台虚拟机自动启动,则根据虚拟机的UUID来指定auto_poweron=true,例如让上面MYSQL-Master虚拟机自动启动,则操作如下: # xe vm-param-set uuid=adad6140-1cc8-30e9-dc4d-05fb426eaf4e other-config:auto_poweron=true 注意:adad6140-1cc8-30e9-dc4d-05fb426eaf4e是上面MYSQL-Master的uuid,替换为你想要设置开机自动启动的虚拟机的uuid。 缺点:随机开机,无法指定某些VM按顺序逐次优先开机 ---------------------------------- 方法二: Step1: 给需要开机自启动的VM做标记(Tags) XenCenter里面选中VM---Properties---General--Tags--Edit Tags,比如输入autostart作为tags的值,给所有需要自动启动的虚拟机都做同样的tags。 或者用命令操作,如下: xe vm-param-add uuid=VM-UUID param-name=tags param-key=autostart Step2: 在xenserver系统修改开机任务脚本 通过SSH工具连到XenServer,用vi编辑文件/etc/rc.d/rc.local,在文件末尾添加两行内容: sleep 60 xe vm-start tags=autostart --multiple 注意:multiple前面是两个中杠,tags=autostart和Step1保持一样,保存并退出。 另:通过此种方法来实现VM按照指定的顺序启动。 --------------------------- 参考VM自启动脚本(部分VM按指定顺序优先启动)