EC2 Placement Groups(EC2放置群組)是AWS提供的一種功能,用於控制EC2實例在物理硬件上的放置方式。當有很多個EC2 instance時希望他們如何被安置(要分開來還是在一起) # 各類型Placement Groups 下面是一些EC2 Placement Groups的特點和適用情境: 1. Cluster Placement Group(集群放置群組): - 全部放在一起 - 適用於需要實現低延遲和高吞吐量的應用程序,如HPC(高性能計算)、大數據分析等。 - EC2實例在同一物理硬件上放置,以最大程度地減少實例之間的網絡延遲。 - 不能跨多個可用區。 - 缺點是當硬件出現故障時,大家會憶起故障 2. Spread Placement Group(分散放置群組): - 全部分開 - 適用於需要提高應用程序的容錯能力和可靠性的應用場景。 - EC2實例在物理硬件上分散放置。 - 可以跨多個可用區。 - 當其中一個hardware壞了,其他都還可以用。 - 限制每個AZ只能存放7個instance 3. Partition Placement Group(分區放置群組): * 分區數量和範圍: - 每個可用區(AZ)最多可以有7個分區。 - 分區放置群組可以橫跨同一區域中的多個可用區。 * EC2實例數量: - 分區放置群組可以容納數百個EC2實例。 * 分區之間的隔離: - 每個分區中的實例與其他分區中的實例不共用機架(rack)。 - 這種隔離確保了在一個分區發生故障時,不會影響其他分區中的EC2實例。 * 分區信息: - EC2實例可以通過元數據(metadata)獲取有關分區的信息。 - 這些信息可以幫助實例進行相關操作或設置,以實現低延遲和高吞吐量的應用。 * 分區放置群組常用於需要高吞吐量和低延遲的應用程序,如HDFS(Hadoop分佈式文件系統)、HBase(分佈式NoSQL數據庫)、Cassandra(分佈式NoSQL數據庫)、Kafka(分佈式消息隊列)等。 # 創建 Placement Group ![](https://hackmd.io/_uploads/S1Fijwt_n.png) 在EC2頁面下拉找到Network & Security中的placement group <br></br> ![](https://hackmd.io/_uploads/H1GxhDKu2.png) 點擊創建<br></br> ## 創建 Cluster ![](https://hackmd.io/_uploads/Bk-HnDK_n.png) ## 創建 Spread ![](https://hackmd.io/_uploads/Sy-n2PtO3.png) ## 創建 Partition ![](https://hackmd.io/_uploads/B1Og6vKun.png) 可以選擇要分幾組 # 套用 Placement Group 回到Instance分頁中 ![](https://hackmd.io/_uploads/Bkp3TDtO3.png) 創建新的instance ![](https://hackmd.io/_uploads/HysJ0vtd2.png) 下拉至最底 點開Advanced details ![](https://hackmd.io/_uploads/HyCM0Ptd2.png) 在其中可以找到選擇Placement Group的地方 可以選擇套用剛才創的各個分群方式 (另外要特別注意Placement Group的地區跟Instance的地區是否相同)