本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
CloudWatch 記錄功能
本主題說明如何為 EKS 叢集的控制平面元件設定 Amazon CloudWatch 記錄。CloudWatch 記錄可讓您了解叢集的控制平面操作,這對於疑難排解問題、稽核叢集活動和監控 Kubernetes 元件的運作狀態至關重要。
啟用 CloudWatch 記錄
由於資料擷取和儲存成本,EKS 控制平面的 CloudWatch 記錄預設不會啟用。
若要在建立叢集時啟用控制平面記錄,您需要在 中定義cloudWatch.clusterLogging.enableTypes
設定 ClusterConfig
(請參閱以下範例)。
因此,如果您的組態檔案具有正確的cloudWatch.clusterLogging.enableTypes
設定,您可以使用 建立叢集eksctl create cluster --config-file=<path>
。
如果您已建立叢集,您可以使用 eksctl utils update-cluster-logging
。
注意
根據預設,此命令會以計劃模式執行,您需要指定 --approve
旗標,才能將變更套用至叢集。
如果您使用的是組態檔案,請執行:
eksctl utils update-cluster-logging --config-file=<path>
或者,您可以使用 CLI 旗標。
若要啟用所有類型的日誌,請執行:
eksctl utils update-cluster-logging --enable-types all
若要啟用audit
日誌,請執行:
eksctl utils update-cluster-logging --enable-types audit
若要啟用日誌以外的所有 controllerManager
,請執行:
eksctl utils update-cluster-logging --enable-types=all --disable-types=controllerManager
如果已啟用 api
和 scheduler
日誌類型,若要controllerManager
同時停用scheduler
和啟用 ,請執行:
eksctl utils update-cluster-logging --enable-types=controllerManager --disable-types=scheduler
這會將 api
和 保留controllerManager
為唯一啟用的日誌類型。
若要停用所有類型的日誌,請執行:
eksctl utils update-cluster-logging --disable-types all
ClusterConfig
範例
在 EKS 叢集中, 下的 enableTypes
欄位clusterLogging
可以取得可能的值清單,以啟用控制平面元件的不同類型日誌。
以下為可能值:
-
api
:啟用 Kubernetes API 伺服器日誌。 -
audit
:啟用 Kubernetes 稽核日誌。 -
authenticator
:啟用驗證器日誌。 -
controllerManager
:啟用 Kubernetes 控制器管理員日誌。 -
scheduler
:啟用 Kubernetes 排程器日誌。
若要進一步了解,請參閱 EKS 文件。
停用所有日誌
若要停用所有類型,請使用 []
或完全移除 cloudWatch
區段。
啟用所有日誌
您可以使用 "*"
或 啟用所有類型"all"
。例如:
cloudWatch: clusterLogging: enableTypes: ["*"]
啟用一或多個日誌
您可以透過列出您要啟用的類型來啟用類型子集。例如:
cloudWatch: clusterLogging: enableTypes: - "audit" - "authenticator"
日誌保留期間
根據預設,日誌會無限期儲存在 CloudWatch Logs 中。您可以指定在 CloudWatch Logs 中保留控制平面日誌的天數。下列範例會保留日誌 7 天:
cloudWatch: clusterLogging: logRetentionInDays: 7
完成範例
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: cluster-11 region: eu-west-2 nodeGroups: - name: ng-1 instanceType: m5.large desiredCapacity: 1 cloudWatch: clusterLogging: enableTypes: ["audit", "authenticator"] logRetentionInDays: 7