OS 政策是指包含 OS 資源宣告式設定的檔案,例如套件、存放區、檔案或由指令碼定義的自訂資源。詳情請參閱 OSPolicy
的資源定義。
OS 政策指派是 VM 管理員用來將 OS 政策套用至 VM 的 API 資源。詳情請參閱 OSPolicyAssignment
的資源定義。
OS 政策
OS 政策是 JSON 或 YAML 檔案,包含三個部分:
Mode」(模式)。政策行為。可用的模式如下:
Validation
:在這個模式中,政策會檢查資源是否處於所選狀態,但不會採取任何行動。Enforcement
:在這個模式中,政策會檢查資源是否處於所選狀態,如果不是,則會執行必要的動作,將資源設為所選狀態。
無論是哪種模式,VM Manager 都會回報 OS 政策和相關資源的符合性。
資源群組:關聯資源規格適用的作業系統名稱和版本。舉例來說,您可以定義單一政策,在不同作業系統發行版和版本中安裝或部署代理程式。
資源。VM 取得所選設定所需的規格。您最多可以在每個資源群組中指定 10 個資源 ID。支援的資源類型如下:
pkg
:用於安裝或移除 Linux 和 Windows 套件repository
:用於指定可從哪些存放區安裝軟體套件exec
:用於啟用 ad hoc shell (/bin/sh
) 或 PowerShell 指令碼的執行file
:用於管理系統上的檔案
OS 政策範例
下列範例說明如何建立 OS 政策。建立 OS 政策指派作業時,您可以將這些 OS 政策上傳至 Google Cloud 控制台。
- 範例 1:安裝套件。
- 範例 2:執行指令碼。
- 範例 3:執行儲存在 Cloud Storage 值區中的指令碼,並將輸出檔案複製到 Cloud Storage 值區。
- 範例 4:指定下載存放區,並從該存放區安裝套件。
- 範例 5:在執行 Container-Optimized OS (COS) 的 VM 上設定 CIS 基準掃描。如要進一步瞭解如何使用 OS 政策進行 CIS 基準掃描,請參閱「自動啟用並檢查 CIS 相容性狀態」。
如需可在環境中套用的 OS 政策範例完整清單,請參閱 GoogleCloudPlatform/osconfig GitHub 存放區。
範例 1
建立 OS 政策,安裝從 Cloud Storage 值區下載的 Windows MSI。
範例 2
建立 OS 政策,確認 Apache 網路伺服器是否在 Linux VM 上執行。
範例 3
建立 OS 政策,確認 Apache 網路伺服器是否在 Linux VM 上執行。在這個範例中,apache-validate.sh
指令碼會儲存在 Cloud Storage 值區中。如要將輸出內容複製到 Cloud Storage bucket,apache-enforce.sh
指令碼必須包含類似以下的指令:
gcsutil cp my-exec-output-file gs://my-gcs-bucket
範例 4
建立 OS 政策,在 CentOS VM 上安裝 Google Cloud 觀測代理程式。
範例 5
設定定期的 CIS 層級 1 掃描作業,預設間隔為每天一次。
OS 政策指派作業
OS 政策指派作業包含下列部分:
OS 政策。您想套用至 VM 的一或多項 OS 政策。如要下載或建立政策,請參閱「OS 政策」。
目標 VM:您要套用政策的單一可用區內的 VM 組合。在區域中,您可以使用 OS 系列和包含或排除標籤,限制或限制 VM。您可以選取下列選項的組合:
- OS 系列:指定 OS 政策適用的目標作業系統。如需支援 OS 政策的作業系統和版本完整清單,請參閱「作業系統詳細資料」。
- 納入集:根據 VM 或系統標籤指定 OS 政策套用的 VM。
- 排除集:指定 OS 政策應根據 VM 或系統標籤略過的 VM。
無論是包含和排除標籤組,只要單一字串標籤符合系統使用的命名慣例,系統就會接受該標籤。不過,大部分標籤都是以
key:value
組合指定。如要進一步瞭解標籤,請參閱「標示資源」。舉例來說,您可以選取測試環境中的所有 Ubuntu VM,並指定下列項目,排除執行 Google Kubernetes Engine 的 VM:
- OS 系列:
ubuntu
- 包含:
env:test
、env:staging
- 排除:
goog-gke-node
推出率。指定將 OS 政策套用至 VM 的速度。作業系統政策會逐步推出,讓您追蹤系統健康狀況,並在更新導致環境回歸時進行修改。推行計畫包含下列元件:
- 波次大小 (中斷預算):一次可推行更新的 VM 固定數量或百分比。也就是說,在推行期間的任何時間點,系統只會指定特定數量的 VM。
- 等待時間:服務將政策套用至 VM 與 VM 從中斷門檻移除之間的時間。舉例來說,如果等待時間為 15 分鐘,表示在將政策套用至 VM 後,推出程序必須等待 15 分鐘,才能將 VM 從中斷門檻中移除,並繼續推出。等待時間有助於控制推出速度,也能讓您及早發現並解決潛在的推出問題。請選取足夠長的時間,以便您監控推出作業的狀態。
舉例來說,如果您將目標設為 10 個 VM、將中斷門檻設為 20%,並將烘焙時間設為 15 分鐘,那麼在任何特定時間,系統只會排定 2 個 VM 的更新作業。每個 VM 更新完畢後,必須等待 15 分鐘,系統才會將該 VM 從中斷門檻中移除,並將另一個 VM 新增至新版。
如要進一步瞭解階段推出,請參閱「階段推出」。
OS 政策指派範例
下列範例說明如何建立 OS 政策指派。您可以使用這些範例,透過 Google Cloud CLI 或 OS Config API 建立 OS 政策指派作業。
- 範例 1:安裝套件。
- 範例 2:執行指令碼。
- 範例 3:指定下載存放區,並從該存放區安裝套件。
如需在環境中套用的 OS 政策指派範例清單,請參閱 GoogleCloudPlatform/osconfig GitHub 存放區。
範例 1
建立 OS 政策指派作業,安裝從 Cloud Storage 值區下載的 Windows MSI。
範例 2
建立 OS 政策指派,驗證 Apache 網路伺服器是否在所有 Linux VM 上執行。
範例 3
建立 OS 政策指派作業,在 CentOS VM 上安裝 Google Cloud 觀測代理程式。
後續步驟
- 進一步瞭解作業系統政策。
- 建立 OS 政策指派作業。
- 管理 OS 政策。