服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - 服务器知识 - 在具有共享存储的xen Server上实现共享VM的启动方法

在具有共享存储的xen Server上实现共享VM的启动方法

2020-12-15 22:27wqjsir 服务器知识

这篇文章主要介绍了在具有共享存储的xen Server上实现共享VM的启动方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

如果在一台xen server主机上创建了一个vm,该vm安装在共享的盘阵上。那么如果该主机因硬件原因出现宕机,怎么在其他主机启动共享盘上的vm实现vm的高可用呢。citrix xen server 的高级版本和企业版本提供了高可用支持,且要求xen server主机要在同一个池中。

这里我们不通过同一个池,怎么实现vm的启动呢。在网上花费了很多时间用于查找相关资料。都未能插到我需要的资料。

后来就思考,按照道理来说这个功能应该是能够实现的才对。功夫不負有心人

环境

citrix xen serer 6.1免费版:

免费版这里需要三台服务器

a、b为xen server 服务器。c主机用于iscsi 虚拟出一个共享磁盘出来。
在主机a上虚拟机的建立

1、建立iscsi sr

2、新建虚拟机  在选择主服务器页面时, 选择不为此vm分配主服务器(d),如图:在具有共享存储的xen Server上实现共享VM的启动方法
3、用iscsi sr库来为新vm分配存储如图:
在具有共享存储的xen Server上实现共享VM的启动方法
4、继续完成vm的安装。

在主机b上启动在主机a上建立的vm     要在主机b上启动在主机a上建立的vm,需要主机a与共享盘阵断开连接。iscsi sr库右键->分离(d)...。注意,需要sr上的所有虚拟机都关机的情况下,才能执行分离操作。

如果主机a不与共享盘阵分离,在主机b连上盘阵后,就会对盘阵数据照成破坏。

1、新建iscsi 存储库  

 在iscsi存储库路径输入页面,输入iscsi目标主机ip地址。点击完成,会弹出如下对话框:在具有共享存储的xen Server上实现共享VM的启动方法
选择连接sr(a)

2、新建虚拟机且不启动(与源虚拟机参数一致)

3、给新添加的vm添加之前建立的iscsi 磁盘,并设置位置为0在具有共享存储的xen Server上实现共享VM的启动方法
选择 交换这些磁盘(s)

此时如果我们不需要刚刚新建的磁盘,则可以将其删除(刚新建的磁盘没有数据,可以直接删除)

4、去掉dvd驱动器

将dvd驱动器设置为空,否则会从dvd驱动中启动虚拟机。(这里应该可以通过配置虚拟机的启动参数来修改虚拟机的启动项)在具有共享存储的xen Server上实现共享VM的启动方法
此时我们启动虚拟机,则会报:error from bootloader:no bootable disk。说当前虚拟机没有启动磁盘。

5、设置虚拟机引导参数:

执行xe vm-list 命令,查看但前xen主机上的虚拟机

执行xe vm-param-list uuid=<vm-uuid>命令看看指定uuid虚拟机的参数

我们可以看到:

在具有共享存储的xen Server上实现共享VM的启动方法
pv-bootloader (rw):elioader  这一行。

修改pv-bootloader (rw)的值为pygrub,命令如下:

xe vm-param-set pv-bootloader=pygrub uuid=<vm-uuid>

再执行启动虚拟机操作,如果依然报error from bootloader:no bootable disk,则执行第6

6、修改vbd参数

执行命令

xe vbd-list 列出当前主机上的所有vbd,找到对应虚拟机的vbd

执行命令 xe vbd-param-list uuid=<vbd-uuid>在具有共享存储的xen Server上实现共享VM的启动方法
可以看到 bootable(rw):的值为false,需要修改该值为true。执行命令如下

:xe vbd-param-set bootable=true uuid=<vbd-uuid>在具有共享存储的xen Server上实现共享VM的启动方法
重新执行启动,这次就启动成功了;
在具有共享存储的xen Server上实现共享VM的启动方法

7、修改网络物理地址(mac地址)如果在主机b上建立虚拟机时,指定了源主机a上虚拟机的mac地址。则跳过这一步。否则需要修改mac地址。在具有共享存储的xen Server上实现共享VM的启动方法
将mac地址修改为虚拟机内部设置的mac地址(原主机a上虚拟机的mac地址)

这样我们就实现了在另一台主机上启动共享虚拟机的功能了。

注意:    这里只是我的实验结果,具体对虚拟机或者对xen server有没有影响,现在还不清楚。有待后续测试完善。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

延伸 · 阅读

精彩推荐