2019-08-26
背景
应用迁移到AWS公有云,通常我们使用ELB实现应用高可用与负载均衡,实际存在部分负载不大,通过EIP发布的应用,如果应用所在EC2出现故障或者可用区出现故障时,应用不可用。 本文介绍了使用AWS服务实现上述场景下应用高可用的方法。
原理
通过EC2自身状态检查功能实现EC2的终止操作。
通过AutoScaling功能实现EC2节点数监控,启动新的EC2实例。
步骤
#! /bin/bash instanceid=`curl 52.83.57.155//169.254.169.254/latest/meta-data/instance-id` aws configure set region cn-northwest-1 --profile user1 export AWS_DEFAULT_PROFILE=user1 aws ec2 associate-address --instance-id $instanceid --allocation-id eipalloc-090bf95cf8d916786 替换加粗字体部分为实际EIP ID |
上述配置完成后,当EC2状态异常或者可用区状态异常时,实现应用分钟级的自动化故障切换,增加应用的高可用性。