我正在努力通过一个AWS认证的练习考试。其中一个问题如下:
The web tier for an a pplication is running on 6 EC2 instances spread
across 2 AZs behind a classic ELB. The data tier is a MySQL database
running on an EC2 instance. What changes will increase the
availability of the application? (select TWO)
A: Turn on CloudTrail in the AWs account
B: Migrate the MySQL database to a Multi-AZ RDS MySQL database instance
C: Turn on cross-zone load balancing on the ELB
D: Launch the web tier EC2 instances in an Auto Scaling Group
E: Increase the instance size of the web tier EC2 instance正确的答案是B和D。我的问题是,为什么C不是正确的答案?教员(亚马逊员工)对C进行了掩饰,解释说:“启用跨区域负载平衡对可用性几乎没有影响。”但在我看来,如果ELB不能将流量发送到两个AZ,那么我们实际上是将我们的6实例系统变成了一个3实例系统(假设每个AZ中有3)。单一的AZ系统从来都不是一个高度可用的体系结构,因为如果这个AZ失败了,那么整个系统就不可用了。
发布于 2019-05-12 02:48:50
启用跨区域负载平衡不会影响可用性,因为ELB可以在不启用功能的情况下向所有配置的AZs发送流量。不是跨区域平衡的意思。
配置在两个可用区域中的ELB始终至少有两个均衡器节点,每个AZ中有一个。您不能直接看到这一点,但是如果您查看EC2控制台中的“网络接口”,您可以找到附加到平衡器节点的弹性网络接口(ENIs)。每个节点都有一个ENI。该服务根据负载确定平衡器有多少节点。这是自动管理的,而且您不是根据节点计数计费的。
跨区域负载平衡控制每个节点的功能。“已启用”是指A区的平衡器节点可以将流量发送到A区或B区的实例,而不仅仅是A区的实例,B区的平衡器节点也是如此。
这并不能提高可用性,因为如果一个可用性区域丢失了,那么该区域中的平衡器节点也会丢失,因此它本来可以向另一个区域中的实例发送流量这一事实并不重要。
跨区域负载平衡有助于确保工作负载尽可能均匀地分布在平衡器后面的所有实例中,如果您有不对称性--例如一个AZ中的3个应用程序实例和另一个AZ中的2个应用程序实例(在这种情况下,每个实例的流量要比有3个的区域要多) --或者其他实例看不到均衡的工作负载的情况--当平衡器后面的实例数量很少时,或者如果请求处理时间由于某些请求的复杂性而存在很大的差异,则更有可能出现这种情况。
发布于 2019-05-12 08:51:01
哪些更改将增加应用程序的可用性?
可用性的增加意味着应用程序服务请求的时间更短。
当AZ中没有健康实例时,跨区域负载平衡会有所帮助,但是在AZ中,ELB正在处理通信量。这是一个不太可能的场景,特别是在AZ中有3个实例,但我可以理解其中的论点。然而,其他两个答案要强得多。
值得一提的是,正式的AWS认证问题经过了几个级别的技术评审,不应该在问题中留下这样的模糊性。试题样本(不管是在AWS课程还是其他课程中)可能还没有经过如此详细的审查。
https://stackoverflow.com/questions/56095603
复制相似问题