在 Oracle Cloud Infrastructure Kubernetes Engine 節點上保留 Kubelet 和作業系統協助程式的資源

簡介

在 Oracle Cloud Infrastructure Kubernetes Engine (OKE) 上執行 Kubernetes 工作負載時,必須確保工作節點具備 Kubernetes 控制元件和作業系統 (OS) 協助程式的保留資源。適當的保留可避免資源競爭、降低記憶體壓力,以及提升叢集穩定性。這在多租用戶環境、高密度工作負載或疑難排解節點壓力問題時尤其重要。在本教學課程中,您將瞭解如何使用在建立節點集區時套用的自訂 cloud-init 命令檔來設定這些保留。您可以利用 cloud-init,以最少的努力,將這些組態標準化至叢集節點。

Kubelet 資源組態

Kubernetes 的主要節點代理程式 Kubelet 支援透過組態旗標或檔案管理資源。您可以定義:

目標

必備條件

步驟 1:撰寫 cloud-init 命令檔

下列 cloud-init 程序檔會建立保留 CPU、記憶體和臨時儲存體的 Kubelet 組態檔,並設定收回臨界值。

#!/bin/bash
curl --fail -H "Authorization: Bearer Oracle" -L0 http://169.254.169.254/opc/v2/instance/metadata/oke_init_script | base64 --decode >/var/run/oke-init.sh
bash /var/run/oke-init.sh --kubelet-extra-args "--kube-reserved=cpu=500m,memory=1Gi --system-reserved=cpu=100m,memory=100Mi"

步驟 2:使用 cloud-init 命令檔建立節點集區

  1. 前往 OCI 主控台並瀏覽至您的 OKE 叢集。

  2. 選取節點集區,然後按一下新增節點集區以建立新的節點集區,或按一下編輯以修改現有的節點集區。

  3. 依您的名稱區間節點位置資源配置以及網路偏好設定設定您的節點集區。

  4. 顯示進階選項底下,按一下貼上 Cloud-init 命令檔並貼上您的自訂命令檔。

  5. 完成其餘的節點集區設定值,然後按一下新增

新增節點集區

佈建節點之後,命令檔會在啟動時執行,並自動套用您的資源限制。

注意:如果您使用 Terraform 自動執行設定,則可以在建立節點集區資源時,傳送 node_config_details.cloud_init_script 區塊中的命令檔。

確認

其他學習資源

docs.oracle.com/learn 上探索其他實驗室,或在 Oracle Learning YouTube 頻道上存取更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。

如需產品文件,請造訪 Oracle Help Center