天天看点

CloudStack 实现VM高可用特性

一般情况下,我们希望实现主机宕机的时候,该主机上面的所有虚拟机资源都可以成功迁移到另外一台主机上面,不过在现阶段,CloudStack还未能实现这样的功能,仅仅提供了虚拟机高可用方案,也就是一台主机上面的虚拟机由于某些原因以外关机,可以在另外一台上面自动启动,并成功运行,前提是该以外关机的虚拟机资源是完整的,也就是需要保证该虚拟机是可以正常被重新启动的。

这样的情况是很有可能出现的,比如一台主机的资源消耗的很多,资源已经不再够其中虚拟机资源的使用,导致虚拟机以外宕机,此时,该主机也很有可能随时宕机,所以在一台虚拟机以外宕机之后,及时将其迁移至另外一台主机上面是很有道理的。

默认情况下,虚拟路由器跟弹性负载均衡虚拟机被自动配置成高可用特性,当启用高可用的实例出现宕机的时候,CloudStak会发现并自动重启同一个zone中的宕机实例。

HA特性只能用于同一个zone中,CloudStack重启虚拟机的策略,确保同一时间内没有同一个虚拟机的两个实例同时运行。管理节点尝试在同一个集群上的另外一个主机中启动虚拟机。并且HA特性需要共享存储支持

下面就是实现的步骤,主要分为如下几个步骤。

1.设置全局变量中的HA标签

2.给需要成为VM高可用特性的主机打上HA标签

3.创建支持VM高可用特性的计算方案

4.通过普通模板,HA计算方案,创建实例

5.对一台虚拟机实现关机操作,查看是否会自动迁移到另外一台主机上面

注意:以上的所有特性均需要提供VM高可用特性的主机处于同一集群中。

以下为相关步骤截图:

<a href="http://blog.51cto.com/attachment/201310/171710881.png" target="_blank"></a>

图 全局变量配置HA标签,重启生效

<a href="http://blog.51cto.com/attachment/201310/171716306.png" target="_blank"></a>

图 对主机1添加主机标签,跟全局变量设置一致

<a href="http://blog.51cto.com/attachment/201310/171719561.png" target="_blank"></a>

图 图 对主机2添加主机标签,跟全局变量设置一致

<a href="http://blog.51cto.com/attachment/201310/171723482.png" target="_blank"></a>

图 创建支持高可用特性的计算方案

<a href="http://blog.51cto.com/attachment/201310/171728789.png" target="_blank"></a>

图 创建高可用计算方案的实例

<a href="http://blog.51cto.com/attachment/201310/171756792.png" target="_blank"></a>

图 定义实例主机名

<a href="http://blog.51cto.com/attachment/201310/171800626.png" target="_blank"></a>

图 查看实例所在主机

<a href="http://blog.51cto.com/attachment/201310/171804807.png" target="_blank"></a>

图 创建文件,对实例做相关标记

<a href="http://blog.51cto.com/attachment/201310/171809502.png" target="_blank"></a>

图 对实例进行关机操作

<a href="http://blog.51cto.com/attachment/201310/171811673.png" target="_blank"></a>

图 Console断开连接,表明关机成功

<a href="http://blog.51cto.com/attachment/201310/171816564.png" target="_blank"></a>

图 显示实例正在自动启动

<a href="http://blog.51cto.com/attachment/201310/171820407.png" target="_blank"></a>

图 查看实例当前所在主机

<a href="http://blog.51cto.com/attachment/201310/171823404.png" target="_blank"></a>

图 查看实例中相关文件是否一致

注意:在后续的测试中发现,虚拟机不一定每次被关机后,都会在另外一台主机上面启动,也有可能在本机上面被重启,然而,不管怎样,这个功能还是在一定意义上面保证了虚拟机实例的高可用,意外关机后可以被自动启动,在一定程度上面满足了某些高可用定义。

在配置VM高可用之前,需要先让两个SSVM跟虚拟路由器启动,否则都会报错!

本文转自 暗黑魔君 51CTO博客,原文链接:http://blog.51cto.com/clovemfong/1316868,如需转载请自行联系原作者