让XenServer 虚拟机开机自动启动

XenServer 6.2中的虚拟机默认是不会自动启动的(据说是为了防止在HA环境中出现某些异常),所以如果母鸡(宿主机)异常断电恢复启动后,所有的虚拟机均为关机状态。
但如果只是单台XenServer跑若干独立虚拟机,还是有必要让虚拟机开机自动启动的。
下面的方法可实现虚拟机开机自动启动:
一、用Citrix XenCenter登录并切换到Console —— Local Command Shell,或SSH工具(如putty、SecureCRT)登录到XenServer;

二、查看所有的pool并设置pool自动启动:
1、xe pool-list 查看所有的pool:

[root@xenserver ~]# 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的自动启动:

[root@xenserver ~]# xe pool-param-set uuid=c7d7a7e4-77ad-e6a6-c935-4cba102881a8 other-config:auto_poweron=true

注意要把上面的c7d7a7e4-77ad-e6a6-c935-4cba102881a8换成你的pool的uuid。

三、列出所有的虚拟机并设置自动启动:
1、xe vm-list 列出所有的虚拟机:

[root@xenserver ~]# 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、设置所有虚拟机开机自动启动:

[root@xenserver ~]# 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这台虚拟机自动启动,则操作如下:

[root@xenserver ~]# xe vm-param-set uuid=adad6140-1cc8-30e9-dc4d-05fb426eaf4e other-config:auto_poweron=true 

注意adad6140-1cc8-30e9-dc4d-05fb426eaf4e是上面MYSQL-MASTER这台虚拟机的uuid,你需要换成你想要设置开机自动启动的虚拟机的uuid。

服务器维护 服务器配置 服务器 维护 运维 网管 系统调优 网络调优 数据库优化