有几台xenserver主机挂了,需要将里面的虚拟机恢复出来。首先,需要找出故障主机中running的vm,接下来就需要停掉这些vm,vm停了之后就会出现在pool中。
#!/bin/bash
xe vm-list | grep uuid | awk '{print $5}' >>/root/vmuuid
host=3ce95efe-9a8a-4fc3-9407-d339bbb2fe24
for i in `cat /root/vmuuid`
    do xe vm-param-list uuid="$i" > /root/vm
       if grep -q "$host" /root/vm
           then echo $i >> /root/vmrun
       fi
done
for i in `cat /root/vmrun`
    do
      xe vm-reset-powerstate uuid=$i force=true
done
然后把故障主机t掉了。

xe host-forget uuid=host_uuid
最后重装xenserver主机加入pool。

xe pool-join master-address=ip master-username=username master-password=pw --force