Google 的 Container-Optimized OS 是已針對執行容器最佳化,適合用於 Compute Engine VM 的作業系統映像檔。Container-Optimized OS 由 Google 維護,並以開放原始碼的 Chromium OS 專案為基礎。有了 Container-Optimized OS,您就能在 Google Cloud Platform 上快速、有效率且安全地啟動容器。
特色與優勢
Container-Optimized OS 提供下列優勢:
- 可立即執行容器:Container-Optimized OS 執行個體預先安裝了 Docker 和 containerd 執行階段與
cloud-init
。使用 Container-Optimized OS 執行個體時,您可以在建立 VM 的同時啟動容器,且不需要主機端設定。 - 減少攻擊表面:Container-Optimized OS 所佔空間較小,可降低執行個體表面可能遭受攻擊的機率。
- 預設鎖定:Container-Optimized OS 執行個體預設包含鎖定防火牆及其他安全性設定。
- 自動更新:Container-Optimized OS 執行個體設定為會在背景自動下載每週更新;只要重新啟動即可使用這些最新更新。
限制
對於您在其他作業系統中可能熟悉的常見功能,Container-Optimized OS 僅會提供有限支援或甚至不提供支援。
- Container-Optimized OS 不包含套件管理員;因此,您將無法直接在執行個體上安裝軟體套件。不過,您可以使用 CoreOS 工具箱在隔離容器中安裝並執行偵錯與管理工具。
- Container-Optimized OS 不支援非容器化應用程式的執行作業。
- Container-Optimized OS 核心為鎖定狀態;您將無法安裝第三方核心模組或驅動程式。
- Container-Optimized OS 在 Google Cloud Platform 環境之外不受支援。
使用 Container-Optimized OS
Container-Optimized OS 是 Google Cloud Platform 上的 Kubernetes Engine 及其他 Kubernetes 部署的預設節點 OS 映像檔。如要進一步瞭解如何搭配 Kubernetes Engine 使用 Container-Optimized OS,請參閱 Kubernetes Engine 快速入門。
您也可以使用 Container-Optimized OS,在 Compute Engine 執行個體上快速啟動容器,且只需進行最少的設定。詳情請參閱建立並設定執行個體。
您可以使用預先安裝在 Container-Optimized OS 的 /usr/bin/toolbox
中的 CoreOS 工具箱公用程式,來執行 ping
、Google Cloud CLI、pstree
、htop
、emacs
等多種工具。詳情請參閱「使用工具箱進行偵錯」。
Container-Optimized OS 的使用案例
Container-Optimized OS 可用於執行大多數容器。如有下列需求,您應考慮使用 Container-Optimized OS 作為 Compute Engine 執行個體的作業系統:
- 您需要容器或 Kubernetes 支援,且設定步驟不需太多。
- 您需要所佔空間不多的作業系統,且作業系統已針對容器強化安全性。
- 您需要經過測試與驗證的作業系統,可在 Compute Engine 執行個體上執行 Kubernetes。
下列情形可能不適合使用 Container-Optimized OS:
- 您的應用程式尚未經過容器化,或您的容器化應用程式需要使用 Container-Optimized OS 並未提供的核心模組、驅動程式及其他額外套件。
- 您需要 Linux 供應商 (Canonical、Core OS、Redhat、SUSE 等) 提供的專業客戶服務。
- 您希望圖片和 OS 應用程式可在Google Cloud以外的環境中獲得完整支援。
請參閱「 Google Cloud上的容器」,瞭解可用於在 Google Cloud上執行容器化應用程式的其他作業系統。Compute Engine 會針對其他常用作業系統提供映像檔,包括針對容器最佳化的映像檔。