來自 的可用 Amazon EKS 附加元件 AWS - Amazon EKS

協助改善此頁面

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

想要為此使用者指南做出貢獻? 捲動至此頁面底部,然後選取編輯此頁面 GitHub。您的貢獻將幫助我們的使用者指南更適合每個人。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

來自 的可用 Amazon EKS 附加元件 AWS

您可以在叢集上建立下列 Amazon EKS 附加元件。您可以使用 eksctl、 AWS Management Console或 檢視最新的可用附加元件清單 AWS CLI。若要查看所有可用的附加元件或安裝附加元件,請參閱 建立 Amazon EKS 附加元件。如果附加元件需要IAM許可,則您必須擁有 IAM OpenID Connect (OIDC) 叢集的提供者。若要判斷您是否已經擁有一個,或是需要建立一個,請參閱 建立 IAM OIDC 叢集的提供者。您可以在安裝附加元件之後建立或刪除附加元件。如需詳細資訊,請參閱 更新 Amazon EKS 附加元件從叢集移除 Amazon EKS 附加元件。如需使用 Amazon EKS混合節點執行EKS附加元件之特定考量的詳細資訊,請參閱 設定混合節點的常見附加元件

您可以使用下列任何 Amazon EKS 附加元件。

描述 進一步了解 相容運算類型

為您的叢集提供原生VPC聯網

適用於 Kubernetes 的 Amazon VPCCNI外掛程式

EC2

彈性、可擴展的DNS伺服器,可做為 Kubernetes 叢集 DNS

核心DNS

EC2、Fargate、EKS自動模式、Amazon EKS混合節點

維護每個 Amazon EC2節點的網路規則

Kube-proxy

EC2、Amazon EKS混合節點

為您的叢集提供 Amazon EBS儲存

Amazon EBSCSI驅動程式

EC2

為您的叢集提供 Amazon EFS儲存體

Amazon EFSCSI驅動程式

EC2、EKS自動模式

為您的叢集提供 Amazon S3 儲存體

Mountpoint 適用於 Amazon S3 CSI驅動程式

EC2、EKS自動模式

偵測其他節點運作狀態問題

節點監控代理程式

EC2

在相容CSI驅動程式中啟用快照功能,例如 Amazon EBSCSI驅動程式

CSI 快照控制器

EC2、Fargate、EKS自動模式、Amazon EKS混合節點

OpenTelemetry 專案的安全、生產就緒、 AWS 支援的分發

AWS 的 Distro OpenTelemetry

EC2、Fargate、EKS自動模式、Amazon EKS混合節點

分析和處理基礎資料來源的安全監控服務,包括 AWS CloudTrail 管理事件和 Amazon VPC流程日誌。Amazon GuardDuty 也會處理 功能,例如 Kubernetes 稽核日誌和執行時間監控

Amazon GuardDuty 代理程式

EC2、EKS自動模式

提供的監控和可觀測性服務 AWS。此附加元件會安裝 CloudWatch 代理程式,並為 Amazon 啟用 CloudWatch Application Signals 和 CloudWatch Container Insights 並具有增強的可觀測性 EKS

Amazon CloudWatch 可觀測性代理程式

EC2、EKS自動模式、Amazon EKS混合節點

能夠管理應用程式的登入資料,類似於EC2執行個體設定檔提供登入資料給EC2執行個體的方式

EKS Pod Identity Agent

EC2、Amazon EKS混合節點

適用於 Kubernetes 的 Amazon VPCCNI外掛程式

所以此 Amazon VPC CNI plugin for Kubernetes Amazon EKS 附加元件是 Kubernetes 容器網路介面 (CNI) 外掛程式,為您的叢集提供原生VPC聯網。根據預設,此附加元件的自我管理或受管類型會安裝在每個 Amazon EC2節點上。如需詳細資訊,請參閱 Kubernetes 容器網路介面 (CNI) 外掛程式

注意

您不需要在 Amazon EKS Auto Mode 叢集上安裝此附加元件。如需詳細資訊,請參閱Amazon EKS Auto 模式的考量事項

Amazon 附加EKS元件名稱為 vpc-cni

所需的 IAM 許可

此附加元件會使用 IAM角色來提供 Amazon 的服務帳戶功能EKS。如需詳細資訊,請參閱服務帳戶的 IAM 角色

如果您的叢集使用 IPv4 系列,則需要 AmazonEKS_CNI_Policy 中的許可。如果您的叢集使用 IPv6 系列,您必須建立 IAM政策,並在 IPv6 模式中具有 許可。您可以建立IAM角色、將其中一個政策連接至角色,並註釋 Kubernetes 附加元件搭配下列命令使用的 服務帳戶。

my-cluster 取代為您的叢集名稱,並將 AmazonEKSVPCCNIRole 取代為您角色的名稱。如果您的叢集使用 IPv6 系列,則請將 AmazonEKS_CNI_Policy 取代為您建立的政策名稱。此命令需要您在裝置上安裝 eksctl。如果您需要使用不同的工具來建立角色,請將政策連接至該角色,並註釋 Kubernetes 服務帳戶,請參閱指派 IAM 的角色 Kubernetes 服務帳戶

eksctl create iamserviceaccount --name aws-node --namespace kube-system --cluster my-cluster --role-name AmazonEKSVPCCNIRole \ --role-only --attach-policy-arn arn:aws: iam::aws:policy/AmazonEKS_CNI_Policy --approve

更新資訊

您一次只能更新一個次要版本。例如,如果目前的版本是 1.28.x-eksbuild.y ,並且您想要更新至 1.30.x-eksbuild.y ,則您必須將目前的版本更新至 1.29.x-eksbuild.y ,然後再更新至 1.30.x-eksbuild.y 。如需更新附加元件的詳細資訊,請參閱 更新 Amazon VPC CNIAmazon EKS 附加元件)

核心DNS

CoreDNS Amazon EKS附加元件是彈性、可擴展的DNS伺服器,可作為 Kubernetes 叢集 DNS。根據預設,在您建立叢集時,會安裝此附加元件的自我管理類型或受管理類型。當您啟動具有至少一個節點的 Amazon EKS叢集時,CoreDNS 無論叢集中部署的節點數量為何,映像都是預設部署。所以此 CoreDNS Pods 為所有 提供名稱解析 Pods 在叢集中。您可以部署 CoreDNS Pods 如果您的叢集包含具有符合 命名空間之命名空間的 Fargate 設定檔,則 會傳送至 Fargate 節點 CoreDNS 部署。如需詳細資訊,請參閱 定義 Pods 啟動時使用 AWS Fargate

注意

您不需要在 Amazon EKS Auto Mode 叢集上安裝此附加元件。如需詳細資訊,請參閱Amazon EKS Auto 模式的考量事項

Amazon 附加EKS元件名稱為 coredns

所需的 IAM 許可

此附加元件不需要任何許可。

其他資訊

若要進一步了解 CoreDNS,請參閱《》中的使用 CoreDNS for Service Discovery and Customizing DNS Service。Kubernetes 文件中)。

Kube-proxy

Amazon 附加EKS元件會維護每個 Kube-proxy Amazon EC2節點的網路規則。它可啟用與 的網路通訊 Pods。 根據預設,此附加元件的自我管理或受管類型會安裝在叢集中的每個 Amazon EC2節點上。

注意

您不需要在 Amazon EKS Auto Mode 叢集上安裝此附加元件。如需詳細資訊,請參閱Amazon EKS Auto 模式的考量事項

Amazon 附加EKS元件名稱為 kube-proxy

所需的 IAM 許可

此附加元件不需要任何許可。

更新資訊

更新目前版本之前,請考慮下列要求:

其他資訊

若要進一步了解 kube-proxy,請參閱 中的 kube-proxy Kubernetes 文件中)。

Amazon EBSCSI驅動程式

Amazon EBSCSI驅動程式 Amazon EKS 附加元件是 Kubernetes 容器儲存介面 (CSI) 外掛程式,為您的叢集提供 Amazon EBS儲存。

注意

您不需要在 Amazon EKS Auto Mode 叢集上安裝此附加元件。自動模式包含區塊儲存功能。如需詳細資訊,請參閱將範例具狀態工作負載部署至EKS自動模式

Amazon 附加EKS元件名稱為 aws-ebs-csi-driver

所需的 IAM 許可

此附加元件會利用 Amazon 服務帳戶功能IAM的角色EKS。如需詳細資訊,請參閱服務帳戶的 IAM 角色mazonEBSCSIDriver政策 AWS 受管政策中的許可是必要的。您可以使用下列命令建立角色,並將受管政策連接至該IAM角色。將 my-cluster 取代為您的叢集名稱,並將 AmazonEKS_EBS_CSI_DriverRole 取代為您角色的名稱。此命令需要您在裝置上安裝 eksctl。如果您需要使用不同的工具或需要使用自訂KMS金鑰進行加密,請參閱 步驟 1:建立IAM角色

eksctl create iamserviceaccount \ --name ebs-csi-controller-sa \ --namespace kube-system \ --cluster my-cluster \ --role-name AmazonEKS_EBS_CSI_DriverRole \ --role-only \ --attach-policy-arn arn:aws: iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy \ --approve

其他資訊

若要進一步了解 附加元件,請參閱 使用 Amazon 存放 Kubernetes 磁碟區 EBS

Amazon EFSCSI驅動程式

Amazon EFSCSI驅動程式 Amazon EKS 附加元件是 Kubernetes 容器儲存介面 (CSI) 外掛程式,為您的叢集提供 Amazon EFS儲存。

Amazon 附加EKS元件名稱為 aws-efs-csi-driver

所需的 IAM 許可

必要IAM許可 – 此附加元件會針對 Amazon 的服務帳戶功能使用 IAM角色EKS。如需詳細資訊,請參閱服務帳戶的 IAM 角色mazonEFSCSIDriver政策 AWS 受管政策中的許可是必要的。您可以使用下列命令來建立 IAM 角色,並將 受管政策連接至該角色。將 my-cluster 取代為您的叢集名稱,並將 AmazonEKS_EFS_CSI_DriverRole 取代為您角色的名稱。這些命令需要您在裝置上安裝 eksctl。如果您需要使用其他工具,請參閱 步驟 1:建立IAM角色

export cluster_name=my-cluster export role_name=AmazonEKS_EFS_CSI_DriverRole eksctl create iamserviceaccount \ --name efs-csi-controller-sa \ --namespace kube-system \ --cluster $cluster_name \ --role-name $role_name \ --role-only \ --attach-policy-arn arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy \ --approve TRUST_POLICY=$(aws iam get-role --role-name $role_name --query 'Role.AssumeRolePolicyDocument' | \ sed -e 's/efs-csi-controller-sa/efs-csi-*/' -e 's/StringEquals/StringLike/') aws iam update-assume-role-policy --role-name $role_name --policy-document "$TRUST_POLICY"

其他資訊

若要進一步了解 附加元件,請參閱 使用 Amazon 存放彈性檔案系統 EFS

Mountpoint 適用於 Amazon S3 CSI驅動程式

所以此 Mountpoint for Amazon S3 CSI驅動程式 Amazon EKS 附加元件是 Kubernetes 容器儲存介面 (CSI) 外掛程式,為您的叢集提供 Amazon S3 儲存。

Amazon 附加EKS元件名稱為 aws-mountpoint-s3-csi-driver

所需的 IAM 許可

此附加元件會使用 IAM角色來提供 Amazon 的服務帳戶功能EKS。如需詳細資訊,請參閱服務帳戶的 IAM 角色

建立IAM的角色需要提供 S3 存取權的政策。建立政策時,請遵循掛載點IAM許可建議。或者,您可以使用 AWS 受管政策 AmazonS3FullAccess,但此受管政策授予的許可超過 所需的許可 Mountpoint.

您可以使用下列命令建立角色,並將政策連接至該IAM角色。my-cluster 將 取代為您的叢集名稱、region-code使用正確的 AWS 區域碼、AmazonEKS_S3_CSI_DriverRole使用 角色的名稱,以及 AmazonEKS_S3_CSI_DriverRole_ARN 角色 ARN。這些命令需要您在裝置上安裝 eksctl。如需使用 IAM 主控台或 的指示 AWS CLI,請參閱 建立 IAM 角色

CLUSTER_NAME=my-cluster REGION=region-code ROLE_NAME=AmazonEKS_S3_CSI_DriverRole POLICY_ARN=AmazonEKS_S3_CSI_DriverRole_ARN eksctl create iamserviceaccount \ --name s3-csi-driver-sa \ --namespace kube-system \ --cluster $CLUSTER_NAME \ --attach-policy-arn $POLICY_ARN \ --approve \ --role-name $ROLE_NAME \ --region $REGION \ --role-only

其他資訊

若要進一步了解 附加元件,請參閱 使用 Amazon S3 CSI驅動程式的掛載點存取 Amazon S3 物件

CSI 快照控制器

容器儲存介面 (CSI) 快照控制器可在相容的CSI驅動程式中使用快照功能,例如 Amazon EBSCSI驅動程式。

Amazon 附加EKS元件名稱為 snapshot-controller

所需的 IAM 許可

此附加元件不需要任何許可。

其他資訊

若要進一步了解 附加元件,請參閱 啟用磁碟CSI區的快照功能

節點監控代理程式

節點監控代理程式 Amazon EKS 附加元件可以偵測其他節點運作狀態問題。選用的節點自動修復功能也可以利用這些額外的運作狀態訊號,視需要自動取代節點。

注意

您不需要在 Amazon EKS Auto Mode 叢集上安裝此附加元件。如需詳細資訊,請參閱Amazon EKS Auto 模式的考量事項

Amazon 附加EKS元件名稱為 eks-node-monitoring-agent

所需的 IAM 許可

此附加元件不需要額外的許可。

其他資訊

如需詳細資訊,請參閱啟用節點自動修復並調查節點運作狀態問題

AWS 的 Distro OpenTelemetry

AWS Distro for OpenTelemetry Amazon EKS 附加元件是安全、生產就緒且 AWS 支援的 OpenTelemetry 專案分佈。如需詳細資訊,請參閱適用於 AWS 的 Distro OpenTelemetry GitHub。

Amazon 附加EKS元件名稱為 adot

所需的 IAM 許可

如果您使用的是其中一個預先設定的自訂資源,可透過進階組態選擇加入,則此附加元件才需要IAM許可。

其他資訊

如需詳細資訊,請參閱適用於 AWS 的 Distro 中的 OpenTelemetry 使用EKS附加元件的 Distro 入門 AWS OpenTelemetry 文件中)。

ADOT 需要 cert-manager 做為先決條件部署在叢集上,否則如果直接使用 https://registry.terraform.io/modules/terraform-aws-modules/eks/aws/latest cluster_addons 屬性部署,此附加元件將無法運作。如需更多需求,請參閱適用於 AWS 的 Distro 中的 OpenTelemetry 使用EKS附加元件的 Distro 入門需求 AWS OpenTelemetry 文件中)。

Amazon GuardDuty 代理程式

Amazon GuardDuty 代理程式 Amazon EKS附加元件是一種安全性監控服務,可分析和處理基礎資料來源,包括 AWS CloudTrail 管理事件和 Amazon VPC流程日誌。Amazon GuardDuty 也會處理 功能,例如 Kubernetes 稽核日誌和執行時間監控。

Amazon 附加EKS元件名稱為 aws-guardduty-agent

所需的 IAM 許可

此附加元件不需要任何許可。

其他資訊

如需詳細資訊,請參閱 Amazon 中 Amazon EKS叢集的執行期監控 GuardDuty

  • 若要偵測 Amazon EKS叢集中的潛在安全威脅,請啟用 Amazon GuardDuty 執行期監控並將 GuardDuty 安全代理程式部署到您的 Amazon EKS叢集。

Amazon CloudWatch 可觀測性代理程式

Amazon CloudWatch Observability 代理程式 Amazon EKS附加元件 提供的監控和觀察服務 AWS。此附加元件會安裝 CloudWatch 代理程式,並為 Amazon 啟用 CloudWatch Application Signals 和 CloudWatch Container Insights,並具有增強的可觀測性EKS。如需詳細資訊,請參閱 Amazon CloudWatch Agent

Amazon 附加EKS元件名稱為 amazon-cloudwatch-observability

所需的 IAM 許可

此附加元件會使用 IAM角色來提供 Amazon 的服務帳戶功能EKS。如需詳細資訊,請參閱服務帳戶的 IAM 角色。需要 AWSXrayWriteOnlyAccessCloudWatchAgentServerPolicy AWS 受管政策中的許可。您可以建立IAM角色、將受管政策連接至角色,並註釋 Kubernetes 附加元件搭配下列命令使用的 服務帳戶。將 my-cluster 取代為您的叢集名稱,並將 AmazonEKS_Observability_role 取代為您角色的名稱。此命令需要您在裝置上安裝 eksctl。如果您需要使用不同的工具來建立角色,請將政策連接到該角色,並註釋 Kubernetes 服務帳戶,請參閱指派 IAM 的角色 Kubernetes 服務帳戶

eksctl create iamserviceaccount \ --name cloudwatch-agent \ --namespace amazon-cloudwatch \ --cluster my-cluster \ --role-name AmazonEKS_Observability_Role \ --role-only \ --attach-policy-arn arn:aws: iam::aws:policy/AWSXrayWriteOnlyAccess \ --attach-policy-arn arn:aws: iam::aws:policy/CloudWatchAgentServerPolicy \ --approve

其他資訊

如需詳細資訊,請參閱安裝 CloudWatch 代理程式

EKS Pod Identity Agent

Amazon EKS Pod Identity Agent Amazon EKS附加元件可讓您管理應用程式的登入資料,類似於EC2執行個體設定檔提供登入資料給EC2執行個體的方式。

注意

您不需要在 Amazon EKS Auto Mode 叢集上安裝此附加元件。Amazon EKS Auto Mode 與 Pod Identity EKS 整合。如需詳細資訊,請參閱Amazon EKS Auto 模式的考量事項

Amazon 附加EKS元件名稱為 eks-pod-identity-agent

所需的 IAM 許可

此附加元件使用者來自 Amazon EKS節點IAM角色Amazon EKS節點IAM角色的許可。

更新資訊

您一次只能更新一個次要版本。例如,如果目前的版本是 1.28.x-eksbuild.y,並且您想要更新至 1.30.x-eksbuild.y,則您必須將目前的版本更新至 1.29.x-eksbuild.y,然後再更新至 1.30.x-eksbuild.y。如需更新附加元件的詳細資訊,請參閱 更新 Amazon VPC CNIAmazon EKS 附加元件)