實作容器群組
在 Azure Container Instances 中,最上層的資源就是容器群組。 容器群組是在相同主機電腦上進行排程的容器集合。 這些容器會共用生命週期、資源、區域網路和儲存體磁碟區。
關於容器的須知事項
讓我們檢閱有關容器群組 Azure 容器執行個體的一些詳細資料。
容器群組類似 Kubernetes 中的 Pod。 Pod 通常會有 1:1 與容器的對應,但 Pod 可包含多個容器。 多容器 Pod 中的容器可共用相關資源。
Azure 容器執行個體會透過新增群組中所有容器的資源要求,將資源配置至多容器群組。 資源可包含 CPU、記憶體和 GPU 等專案。
請考慮有兩個容器的容器群組,每個容器都需要 CPU 資源。 每個容器都會要求一個 CPU。 Azure 容器執行個體為容器群組配置兩個 CPU。
以下是部署多容器群組的兩個常見方式:使用 Azure Resource Manager (ARM) 範本或和 YAML 檔案。
ARM 範本. 當您部署容器執行個體 (例如 Azure 檔案檔案共用) 時,建議使用 ARM 範本部署其他 Azure 服務資源。
YAML 檔案。 由於 YAML 格式的簡潔性,建議在您的部署僅包括容器執行個體時才使用 YAML 檔案。
容器群組可以共用對外 IP 位址、該 IP 位址上的一或多個連接埠,以及 FQDN 的 DNS 標籤。
外部用戶端存取。 您必須在 IP 位址上及從容器公開連接埠,讓外部用戶端連線到群組內的容器。
連接埠對應。 因為群組內的容器會共用連接埠命名空間,所以不支援連接埠對應。
已刪除群組。 刪除容器群組時,會釋出其 IP 位址和 FQDN。
設定範例
請考慮下列具有兩個容器的多容器群組範例。
多容器群組具有下列特性和組態:
- 容器群組會排程在單一主機電腦上,並指派 DNS 名稱標籤。
- 容器群組會公開單一公用 IP 位址,以及一個公開的連接埠。
- 群組中的一個容器會接聽埠 80。 另一個容器會接聽埠 1433。
- 群組包含兩個 Azure 檔案儲存體檔案共用作為磁碟區裝載。 群組中的每個容器都會在本機裝載其中一個檔案共用。
使用容器群組時要考量的事項
當您想要將單一功能性工作分割成多個容器映像時,多容器群組會很實用。 不同的小組可以傳遞映像,而映像可以有不同的資源需求。
請考慮使用多容器群組的下列案例。 請考慮哪些選項可支援線上零售商的內部應用程式。
請考慮 Web 應用程式更新。 藉由實作多容器群組支援 Web 應用程式的更新。 群組中的一個容器提供 Web 應用程式,另一個容器會從原始檔控制提取最新的內容。
請考慮記錄資料收集。 使用多容器群組來擷取應用程式的相關記錄和計量資料。 您的應用程式容器會輸出記錄和計量。 記錄容器會收集輸出資料,並將資料寫入長期儲存體。
請考慮應用程式監視。 使用多容器群組啟用應用程式的監視。 監視容器會定期對應用程式容器提出要求,確保您的應用程式正在執行並正確回應。 如果監視容器識別出您的應用程式可能的問題,就會引發警示。
請考慮前端和後端支援。 建立多容器群組來保存前端容器和後端容器。 前端容器可以提供 Web 應用程式。 後端容器可以執行服務來擷取資料。