我们在 GCP 和 AWS 中有类似 Azure "Availability Set" 的东西吗

Do we have anything similar to Azure "Availability Set" in GCP and AWS

上下文 :

我们正在为我们的应用程序(基于微服务)的多云部署制作原型。 为了在高可用性和共处之间取得平衡,我们使用了 Azure 中的 "Availability Sets" 功能。哪种方式确保 Azure platform/service 升级不会同时发生在两个不同的集合中。

Availability sets Azure

场景:

我在 Google Cloud Platform 和 AWS 中找不到任何类似的东西。所以在这种情况下,我们必须使用单独的 "Zones" 来实现高可用性。

支持可用性集的一个论点(理论上)是它们比区域更接近,因为前者位于数据中心内。

我们在 GCP 和 AWS 中有接近 "availability sets" 的东西吗?请分享您的想法。

听起来 Placement Groups 可能是 AWS 中的等效功能。有几种不同的配置,您可以要求 AWS 集群 您的实例非常接近以最大化网络 I/O 性能或 传播 您的实例跨硬件以减少相关故障。

Cluster – packs instances close together inside an Availability Zone. This strategy enables workloads to achieve the low-latency network performance necessary for tightly-coupled node-to-node communication that is typical of HPC applications.

Partition – spreads your instances across logical partitions such that groups of instances in one partition do not share the underlying hardware with groups of instances in different partitions. This strategy is typically used by large distributed and replicated workloads, such as Hadoop, Cassandra, and Kafka.

Spread – strictly places a small group of instances across distinct underlying hardware to reduce correlated failures.

我不能代表 Google 云,因为我不知道有类似的功能,但我也不太熟悉他们的产品。

希望对您有所帮助。

关于GCP,high-availability有几种解决方案。一般建议Design Robust Systems prone to failures and Building scalable and resilient applications.

通过设计稳健的系统,您可以确保您的 VM 在出现单个实例故障、实例重启或区域出现问题时可用。

与可用性集最相似的是 Managed Instance Groups

托管实例组 auto-updater 允许您将新版本的软件部署到 MIG 中的实例,支持不同的部署方案(滚动更新、金丝雀更新)。您可以控制部署的速度和范围以及服务中断的程度。

您还可以使用 Regional Persistent Disk 跨区域(数据中​​心)复制数据。