【多AZ】浅述云计算多az
多AZ(Availability Zone)是云计算中一种重要的容灾和冗余策略,它通过在差别的地理位置或差别的设备上存储数据副本以及网络切换策略,以包管在单个设备或地理位置发生故障时,云加计算集群仍然能够提供服务。多AZ的特点包括:
高可用性:
多AZ可以进步系统的可用性,因为当一个AZ发生故障时,其他AZ可以继承提供服务,克制了单点故障的风险。
数据冗余:
多AZ可以包管数据的冗余存储,即使一个AZ的数据发生丢失,也可以从其他AZ的数据副本中规复。
容灾本领:
多AZ可以提供更好的容灾本领,当一个AZ受到天然灾难、电力故障等影响时,其他AZ可以包管服务的连续性。
多AZ的使用常见于以下场景:
数据库:
数据库是使用多AZ最多的应用之一,通过在多个AZ中存储数据副本,可以包管在任何一个AZ发生故障时,数据库仍然能够正常运行。
文件存储:
文件存储也可以使用多AZ,将文件存储在多个AZ中,可以克制文件丢失或损坏的风险。
缓存:
缓存也可以使用多AZ,将缓存数据存储在多个AZ中,可以进步缓存的可用性和可靠性。
视频直播:
视频直播需要大量的存储和传输本领,使用多AZ可以包管视频直播的稳定性和可靠性。
总之,多AZ是云计算中重要的容灾和冗余策略,可以提供更好的系统可用性和容错性。
AWS多AZ实现过程
(1)前端ELB层,
可以将ELB设置成跨多个AZ,即将需要的子网(Available Subnet)添加进ELB就行,(点击Available Subnet前面的绿色加号按钮),这个时候,每个AZ至少选择一个Subnet,ELB就可以将流量分发到差别AZ上的实例。有一点需要注意的是,ELB是将流量均分到差别AZ中的,而不会考虑哪个AZ中实例多哪个少,因此摆设的时候尽量在差别AZ匀称分布计算资源。实质上,ELB服务包含多AZ后,会在差别AZ创建差别LB实例,其私网IP是差别的,access日志中能看到,只不过这些LB会使用一个统一的url(endpoint)。因此可以在Route53中将域名CNAME或者Alias到ELB的endpoint上。
(2)web server服务层,
添加到ELB中的实例,也可以均分到差别的AZ,这是一个高可用方案的根本措施。如果实例已经运行在同一个AZ中了,可以通过将线上服做成AMI(注意勾选No reboot),然后基于此AMI再在别的AZ中创建同样的实例,并参加到ELB实例组中。你可以随时将实例退出或参加ELB实例组。
(3)缓存层,
ElasticCache服务不管是Memcached照旧Redis,目前都不支持Node节点跨AZ,因此需要在差别AZ中创建单独的ElasticCache实例和节点,同事需要程序代码上做点改动。允许配置多个缓存实例,例如redis-master,redis-slave。信任不久AWS就会推出自动跨AZ的ElasticCache(即统一的endpoint,可以在差别AZ创建node)。
(4)DB层,
读写分离是一个比较好的方案,一写多读,多个读实例用内网ELB做负载平衡。但是写照旧单点的,建议在差别AZ创建一个热备,作为DB slave(EC2做DB的方案);如果使用RDS服务的话,就更方便一些,你可以使用跨AZ的replica(创建RDS实例的时候可以选择Multi-AZ),似乎近来有添加了跨Region的“Multi-AZ”,还可以使用RDS的读写分离功能,创建多个读实例,然后这些读实例可以参加到一个内网的ELB中实现负载平衡。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]