在 Azure 平台配置可用性集加负载
在 Azure 平台配置可用性集加负载
可用性集(Availability Set)帮助您的业务在虚拟机停机维护的时候仍然可用。将两个或更多相似配置的虚拟机放置于一个可用性集中以提供冗余,实现应用程序或者服务的高可用。 结合可用性集和负载均衡,可以实现服务一直高可用。
要将您的虚拟机放置于可用性集中,有两种方式:
-
在创建虚拟机同时创建可用性集。然后再创建新的虚拟机时加入到可用性集中来。
-
将现有的虚拟机添加到可用性集。
接下来我们来看这两种方式的具体过程。
在创建虚拟机同时创建可用性集
-
登录 Azure 管理控制台输入用户名密码。
-
点击左下角“新建” -- > “计算“ -- > “虚拟机” -- > “从库中“。
-
选择映像,然后继续下一步。
-
输入虚拟机名,选择规格,输入 OS 用户名,密码,继续下一步。
-
选择”创建新云服务“,输入云服务 DNS 名称,我这里输入newtest1, 之后直接访问 newtest1.chinacloudap.cn 即可访问到此虚拟机,当然也可使用此虚拟机的公网 IP 地址;选择区域,注意如果想让此虚拟机加入到自己定义的虚拟网络的话,要先创建虚拟网络然后在这里选择自己定义的虚拟网络。虚拟网络可以理解成自定义的网络,可以设置子网,IP 范围,网关等;使用自动生成的存储账号;选择“创建可用性集“,输入可用性集名称;添加终结点。也可以创建后虚拟机后再添加。终结点可以理解成这台虚拟机要对外开放的端口;然后继续下一步。
-
创建。
-
创建好此虚拟机后找到它,点击”配置“,可以看到我们创建好的可用性集。
-
这时可以创建新的虚拟机,再加入到此可用性集里来。但是,在创建虚拟机时必须选择之前的虚拟机所创建的云服务,才能选择到和之前虚拟机所处的同样一个可用性集。也就是说,要想处于同样的可用性集,必须处于同样的云服务。
将现有的虚拟机添加到可用性集
-
同样的,要想处于同样的可用性集,必须处于同样的云服务。还是以上面创建的云服务 newtest1 为例子,假设现有一台虚拟机,它的云服务同样是 newtest1, 我们在此虚拟机控制面板的”配置“里,可以看到”选择可用性集”。
-
选择我们之前创建的可用性集 newatest。
-
点击保存。
-
之后我们可以看到此可用性集有了两个虚拟机了。
-
我们检查下这两台虚拟机的云服务的详细信息。首先是 newtest1 的控制面板的“仪表板”下查看到的信息:
然后看newtest2的信息
所以我们连接newtest1.chinacloudapp.cn:22即是连接到newtest1, 连接newtest1.chinacloudapp.cn:49559即是连接到newtest2。
服务高可用
-
我们演示如何利用负载均衡集和可用性集做 HTTP 80 服务的高可用。首先给 newtest1 添加一个终结点。选择“终结点”—“添加“。
-
选择”添加独立终结点“,继续。
-
选择 HTTP, 勾选“创建负载均衡集“, 继续下一步。
-
设置负载均衡集名字,确认添加。
-
之后我们去到 newtest2, 添加终节点时选择“将终结点添加到现有负载均衡集“,选择我们在 newtest1 上创建的负载均衡集名字,然后继续。
-
设置终结点名字,确认即可创建。
-
SSH 连接到两台虚拟机,安装后 HTTP SERVER 并启动。比如 CentOS 是
sudo yum install httpd
sudo service httpd start -
在 newtest1 执行 echo “newtest1” > /var/www/html/index.html。 在 newtest2 执行 echo “newtest2” > /var/www/html/index.html。
-
在浏览器访问http://newtest1.chinacloudapp.cn/ 结果如下:
-
过15秒(之前创建负载均衡集时设置的探测间隔)重新访问http://newtest1.chinacloudapp.cn 发现结果如下:
-
停掉虚拟机 newtest1。
-
再度访问http://newtest1.chinacloudapp.cn 还是能够访问。
配置成功。