什么是高可用性?
高可用(High Availability,HA)是云上业务部署中必须考虑的因素之一,它通常是指,通过业务系统的设计减少云服务器不能提供服务的时间。
假设系统一直能够提供服务,我们说系统的可用性是100%。
如果系统每运行100个时间单位,会有1个时间单位无法提供服务,我们说系统的可用性是99%。
高可用性重要吗?
云服务器运行在物理机上,物理机可能会因为异常或其他原因导致宕机。当检测到云服务器所在的物理机发生故障,系统会启动保护性迁移,将服务器迁移到性能正常的物理机上。但是一旦发生宕机迁移,云服务器就会被重启,部署在云服务器上的业务就会受到影响。
当检测到弹性云服务器所在的物理机故障宕机时,云平台默认提供的自动恢复功能,会自动将弹性云服务器以冷迁移方式迁移至正常的物理机,保障您的业务受到的影响最小。
为了保障您的业务不因这些故障受到影响,我们建议您在业务部署时构建高可用的业务系统。
怎样构建高可用的业务系统?
业务系统构建时,需要考虑不同的故障模式对业务系统的影响,并通过冗余部署、监控、备份等手段来提高业务系统的可用性。
注意:
如果云服务器故障系统启动保护性迁移,服务器就会被重启。如果希望服务器重启以后部署的应用自动恢复,需要把应用程序设置成开机自动启动。如果应用服务连接的数据库,需要在程序中设置成自动重连机制。
故障有不同的影响范围,例如火灾、网络设备的故障会导致某个可用区不可用,而不影响该区域下其他可用区的业务,因此如果您的应用需要较高的容灾能力,建议您将资源部署在不同的区域内,或同一区域的不同可用区内。
通过云监控服务可以对弹性云服务器的CPU、内存、带宽等资源进行监控,用以了解业务系统的负载情况,并可以联动弹性伸缩进行资源的扩充和缩减。
弹性伸缩是根据用户的业务需求和预设策略,自动调整计算资源,使云服务器数量自动随业务负载增长而增加,随业务负载降低而减少,保证业务平稳健康运行。
弹性负载均衡可以通过流量分发扩展应用系统对外的服务能力,通过后端云服务器的冗余部署,提升应用系统的可用性。
图1-1 云监控联动弹性伸缩、负载均衡进行资源的扩充和缩减
存储容灾服务是可以为弹性云服务器和云硬盘提供数据容灾的服务。通过存储复制、数据冗余和缓存加速等多项技术,提供高级别的数据可靠性以及业务连续性。容灾系统不仅保护数据,更重要的目的在于保证业务的连续性;而数据备份系统只保护不同时间点版本数据的可恢复。
图1-2 存储容灾
云服务器组是对云服务器的一种逻辑划分,云服务器组中的弹性云服务器遵从反亲和性策略,即同一云服务器组中的弹性云服务器分散地创建在不同的主机上,提高业务的可靠性。