
按服务的重要性来分类,越是重要的服务就需要通过跨机、跨机房或跨地域来保障服务容灾性,当然这种容灾成本也会相应的升高,因为相当于一批硬件资源解决的是容灾保障而非带来收益,但这仍然是有必要的,当硬件出现异常情况时可以通过保险逃生通道来保证业务稳定性与连续性。 而云是提供类似的保障方案,相应的硬件设备会均摊到需要类似服务的用户上,相当于买保险的价格来保障我们的服务。 近年也有很多类似的事件,如锂电池失火导致机房不可用、空调异常导致机房高温服务异常等问题,本章以腾讯云为例来演示如果通过同地域跨可用区来保障业务高可用。
以下为搭建环境相应的配置与架构图

架构图

购买云服务器,云服务器控制台。

购买负载均衡clb,负载均衡控制台

注意可用区为五区与八区。

购买数据库,云数据库MySQL控制台

注意可用区为五区与八区。

放通两个子网安全组。

设置库。

将两个可用区的云服务器加入负载均衡中。

登录任意一台购买云服务器,通过安装wordpress来模拟机器故障,wordpress依然能访问场景。
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo安装docker
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y修改docker源
vi /etc/docker/daemon.json添加内容如下
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://mirror.ccs.tencentyun.com"]
}重启容器
sudo systemctl daemon-reload
sudo systemctl restart docker配置容器
docker run --name vurt-wordpress \
-p 8080:80 \
-e WORDPRESS_DB_HOST=步骤4中MySQL数据库内网ip:端口 \
-e WORDPRESS_DB_USER=步骤4中MySQL数据库用户名 \
-e WORDPRESS_DB_PASSWORD=步骤4中设置的数据库密码 \
-e WORDPRESS_DB_NAME=wordpress \
-e WORDPRESS_CONFIG_EXTRA='define("WP_HOME","http://步骤3中CLB的公网IP:8080"); define("WP_SITEURL","http://步骤3中CLB的公网IP:8080");' \
-d wordpress访问负载均衡IP会到以下界面。

调整权重为0,来模拟服务故障。

切换主备

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。