實作容器群組

已完成

在 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。

設定範例

請考慮下列具有兩個容器的多容器群組範例。

Diagram that depicts an Azure Container Instances multi-container group that has two containers.

多容器群組具有下列特性和組態:

  • 容器群組會排程在單一主機電腦上,並指派 DNS 名稱標籤。
  • 容器群組會公開單一公用 IP 位址,以及一個公開的連接埠。
  • 群組中的一個容器會接聽埠 80。 另一個容器會接聽埠 1433。
  • 群組包含兩個 Azure 檔案儲存體檔案共用作為磁碟區裝載。 群組中的每個容器都會在本機裝載其中一個檔案共用。

使用容器群組時要考量的事項

當您想要將單一功能性工作分割成多個容器映像時,多容器群組會很實用。 這些影像可由不同小組傳送,且有不同的資源需求。

請考慮使用多容器群組的下列案例。 請考慮哪些選項可支援線上零售商的內部應用程式。

  • 請考慮 Web 應用程式更新。 藉由實作多容器群組支援 Web 應用程式的更新。 群組中的一個容器提供 Web 應用程式,另一個容器會從原始檔控制提取最新的內容。

  • 請考慮記錄資料收集。 使用多容器群組來擷取應用程式的相關記錄和計量資料。 您的應用程式容器會輸出記錄和計量。 記錄容器會收集輸出資料,並將資料寫入長期儲存體。

  • 請考慮應用程式監視。 使用多容器群組啟用應用程式的監視。 監視容器會定期對應用程式容器提出要求,確保您的應用程式正在執行並正確回應。 如果監視容器識別出您的應用程式可能的問題,就會引發警示。

  • 請考慮前端和後端支援。 建立多容器群組來保存前端容器和後端容器。 前端容器可以提供 Web 應用程式。 後端容器可以執行服務來擷取資料。