全部產品
Search
文件中心

Container Service for Kubernetes:ContainerOS概述

更新時間:Aug 30, 2025

ContainerOS 是阿里雲專為容器情境最佳化的官方作業系統,完全相容 Kubernetes 生態。基於 Alibaba Cloud Linux 3,ContainerOS 提供更高的安全性、更快的啟動速度以及精簡的系統服務和軟體包,預設整合雲原生組件,開箱即用。

適用範圍

  • 適用於ACK託管叢集節點池,叢集版本為1.24及以上,且容器運行時為containerd,請參見建立ACK託管叢集。如需升級叢集,請參見手動升級叢集

  • 不適用於GPU節點和Arm架構的節點。

ContainerOS介紹

在容器化部署情境下,使用雲原生組件(如容器運行時、Kubernetes),您可以更專註於應用開發,而無需過多關注底層基礎設施的細節。傳統作業系統為適應多種使用情境,包含了大量使用者態工具、軟體包和系統服務,導致系統臃腫、啟動緩慢,且軟體包種類繁多、版本分散,給營運工作帶來極大挑戰。

為解決傳統作業系統在雲原生情境中的適配問題,提升使用體驗,ACK專為容器情境設計了作業系統 ContainerOS。相比之下,ContainerOS 更加輕量、模組化,啟動和運行容器的速度更快。同時,它具備更高的安全性和更低的資源需求,適用於雲端運算和大規模部署情境。

功能特性

特性

說明

鏡像精簡

只包含Kubernetes Pod運行所依賴的軟體包和系統服務,通過全系統整合最佳化,可大大縮短系統啟動時間。ContainerOS的系統軟體包數量約210個;而傳統作業系統(例如Alibaba Cloud Linux3、Alibaba Cloud Linux 2、CentOS等)預設預裝的軟體包數量約為600個。

  • 減少系統佔用空間:ContainerOS軟體包數量精簡了60%以上,大幅降低了系統佔用的儲存空間。

  • 減少CVE漏洞:更少的軟體包意味著更少的CVE漏洞,大大減少了整個系統的攻擊面。

此外,ContainerOS不提供Python支援,也不直接提供SSH登入功能。您可以專註於業務的開發和運行,無需關心作業系統層面的問題。

極速啟動

通過全鏈路最佳化,顯著提升了 OS 啟動速度,並縮短了 ACK 鏈路中的節點擴容時間。通過簡化 OS 啟動流程,預置叢集管控所需組件的容器鏡像,減少了節點啟動時因鏡像拉取產生的延遲。結合 ACK 管控鏈路最佳化,進一步加快了節點擴容速度。

以下圖為例,ContainerOS千節點擴容P90節點就緒時間僅為53s。相較於CentOS、Alibaba Cloud Linux 2自訂鏡像最佳化方案,ContainerOS優勢更為明顯。

重要

本樣本中提供的資料僅為理論值,實際資料可能會因產品功能最佳化略有偏差,請以您的作業環境為準。

安全強化

根檔案系統為唯讀許可權,僅/etc/var目錄可寫,以滿足基礎的系統配置需求。這一設計不僅符合雲原生情境中的不可變基礎設施原則,還能有效防止逃逸容器篡改主機檔案系統。同時,ContainerOS禁止使用者直接登入到系統中進行一系列可能無法追溯的操作,但提供了專用的營運容器,用於滿足非日常營運需求。

原子升級

遵循雲原生不可變基礎設施原則,不提供 yum 包管理工具,支援以作業系統鏡像為粒度進行更新、復原(替盤升級)以及有限的分層熱升級,從而確保叢集中各節點的軟體版本和系統配置保持一致。

每個鏡像在上線前均經過嚴格的自我裝載。相比傳統作業系統基於單個 RPM 包升級所帶來的不確定性,鏡像層級的測試和發布更能保障升級後系統的穩定性。

功能優勢

優勢

說明

容器情境垂直最佳化

針對容器情境進行了垂直最佳化,具備快速啟動、安全強化以及根檔案系統不可變等特性。它不僅提升了效能,還簡化了叢集範圍內的營運與管理,確保叢集中各節點的高度一致性。

節點極速擴容

通過整合 ACK 管控鏈路最佳化與 OS 內部最佳化,顯著提升了節點擴容速度。目前,節點擴容時間占 ACK 節點自動調整總耗時的 90% 以上。使用 ContainerOS 後,節點池的自動調整體驗將顯著改善。

OS可營運能力

與ACK管控配合,支援持續更新 Kubernetes 和其他系統軟體版本、修複 CVE 漏洞,提升 OS 的可營運能力,並支援鏡像按需發布。相較於Alibaba Cloud Linux 2自訂鏡像方案(同樣通過預置鏡像以提升節點啟動速度),ContainerOS提供官方維護和CVE保障,有效減少對自訂 OS 鏡像的維護、升級及重大問題的修複工作。

同時,通過與ACK聯合最佳化,ContainerOS 顯著縮短了因營運操作導致的節點不可用時間,保障業務的平穩運行。

Alibaba Cloud Linux 3相容

ContainerOS 的核心版本和大部分軟體包與Alibaba Cloud Linux 3完全一致,採用最新的 kernel 5.10 LTS,為雲上應用程式提供 Linux 社區的最新功能支援。

安全記事

ContainerOS應用如下設計原則來增強其安全性。

作業系統安全性

特性

說明

最小化執行環境

ContainerOS中僅包含容器情境所需的軟體包與系統服務,軟體包數量約210個。更少數量的軟體包意味著更少的CVE數量,減少作業系統自身的攻擊面。剔除高CVE軟體包,如binutils、Python、openssh、tcpdump等,ContainerOS儘可能縮減指令碼語言執行環境,不支援Python、Perl、Ruby指令碼執行。

ContainerOS節點營運方式

採用最小化執行環境和不可變根檔案系統以增加安全性。營運 ContainerOS 節點的方式與普通 Linux 作業系統有所不同,請參見營運ContainerOS節點

不可變根檔案系統

不支援yum等包管理軟體,僅支援使用rpm-ostree進行可追溯的OS變更與復原。根檔案系統/與核心目錄/usr(存放二進位與動態庫的目錄)為唯讀,保留/etc(動態配置目錄)與/var(日誌記錄與容器鏡像存放目錄)為可寫狀態。

展開查看檔案系統中的路徑及其屬性和建議用法

路徑

屬性

用途

/

/usr

唯讀

可執行

根檔案系統//usr目錄以唯讀方式掛載,保證系統完整性並防止被篡改。

/etc

可寫

有狀態

通常包含系統的設定檔(如:自訂的systemd服務檔案、對一些軟體的個人化配置等),使用者在升級系統後此目錄下自訂的設定檔會被保留。

/var

可寫

有狀態

通常用於儲存一些組件在運行時需要建立的目錄(例如:/var/run/NetworkManager)以及一些組件的工作目錄(例如:/var/lib/containerd),使用者在升級系統後此目錄下的內容會全部被保留。

/home

/mnt

/opt

/root

/usr/local

可寫

有狀態

這些目錄都軟串連在/var目錄下,以便於系統運行過程中使用(例如:在/home目錄下建立新使用者,/mnt目錄下掛載其他的資料盤等)。

/run

/tmp

可寫

無狀態

掛載tmpfs,可用於存放系統運行所需臨時檔案,重啟後資料會被清除。

系統硬碟唯讀

系統硬碟被設定為唯讀模式,不能寫入資料,以保護系統不被篡改並免受持久化攻擊。為了保證系統能正常啟動和運行,需額外掛載一個資料盤。

使用者資料會儲存在資料盤上,實現資料盤與系統硬碟的隔離。資料盤預設掛載至/var目錄。

ContainerOS 3.5.0及以上版本支援。

移除Shell解譯器

系統中移除了Shell指令碼解譯器(如/bin/bash、/bin/sh),阻斷了Shell指令碼的執行通道,從而降低惡意指令碼攻擊的風險。

新增Bootstrap容器

提供了Bootstrap容器,用於在主容器啟動前執行自訂的使用者資料(User Data)指令碼。Bootstrap容器會在初始化任務完成後自動結束,避免對主系統或主業務容器造成安全風險。

基礎架構安全性

基於Alibaba Cloud Linux的軟體包體系:Alibaba Cloud Linux是阿里雲打造的Linux伺服器作業系統發行版,是阿里雲上使用量佔比第一的作業系統發行版。ContainerOS基於Alibaba Cloud Linux並雲端式情境做了大量的最佳化,複用Alibaba Cloud Linux多年的軟體包與鏡像構建交付經驗,同時在鏡像發布前,執行OS基礎測試、ACK整合測試來保障鏡像的可用性與安全性。

計費說明

ContainerOS是免費鏡像。您可以在ACK節點池中免費使用ContainerOS鏡像,並免費獲得阿里雲針對該作業系統的長期支援。

但當您使用ContainerOS鏡像時,涉及到的其他資源,例如vCPU、記憶體、儲存、公網頻寬和快照等需要收費。關於其他資源的計費詳情,請參見計費概述

相關文檔