可從 Amazon EKS 附加組件 AWS - Amazon EKS

協助改善此頁面

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

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

可從 Amazon EKS 附加組件 AWS

您可以在叢集上建立下列 Amazon EKS 附加元件。您可以使用eksctl、或檢視最新的可用附加元件清單 AWS CLI。 AWS Management Console若要查看所有可用的附加元件或安裝附加元件,請參閱 創建一個 Amazon EKS 插件。如果附加元件需要IAM權限,則您的叢集必須有 IAM OpenID Connect (OIDC) 提供者。若要判斷您是否已經擁有一個,或是需要建立一個,請參閱 為您的叢集建立IAMOIDC提供者。您可以在安裝附加元件後更新刪除該附加元件。

您可以使用以下任何一個 Amazon EKS 附加組件。

描述 進一步了解

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

Amazon VPC CNI plugin for Kubernetes

可作為Kubernetes叢集使用的彈性、可擴充DNS伺服器 DNS

核心 DNS
在每個 Amazon EC2 節點上維護網路規則 Kube-proxy
為您的叢集提供 Amazon EBS 儲存空間 Amazon EBS CSI 驅動
為您的叢集提供 Amazon EFS 儲存空間 Amazon EFS CSI 驅動
為您的叢集提供 Amazon S3 儲存 MountpointAmazon S3 CSI 驅動程序
在相容的驅動程式 (例如 Amazon CSI EBS CSI 驅動程式) 中啟用快照功能 CSI快照控制器
安全、生產就緒、 AWS 支援的專案發佈 OpenTelemetry AWS 發行版的 OpenTelemetry
安全監控服務,可分析和處理基礎資料來源,包括 AWS CloudTrail 管理事件和 Amazon VPC 流程日誌。Amazon GuardDuty 也會處理Kubernetes稽核日誌和執行階段監控等功能 Amazon GuardDuty 代理
監測和觀察服務提供 AWS. 此附加元件會安裝 CloudWatch 代理程式,並透過增強 Amazon 的可觀察性啟 CloudWatch 用應用程式訊號和 CloudWatch 容器見解 EKS Amazon CloudWatch 可觀測代理
能夠管理應用程式的認證,類似於執行個體設定檔為EC2EC2執行個體提供憑證的方式 EKS網繭身分代理程

Amazon VPC CNI plugin for Kubernetes

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

Amazon EKS 附加組件的名稱是vpc-cni.

所需IAM權限

此附加元件使用 Amazon 服務帳戶功能的IAM角色EKS。如果您的叢集使用該IPv4系列,則需要 Amazon EKS CNI _ 政策中的許可。如果您的叢集使用IPv6系列,您必須建立具有IPv6模式權限的IAM原則。您可以使用以下命令創建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 CNI plugin for Kubernetes Amazon EKS 加載項

核心 DNS

Core DNS Amazon EKS 附加元件是一個靈活、可擴充的DNS伺服器,可做為Kubernetes叢集使用DNS。根據預設,在您建立叢集時,會安裝此附加元件的自我管理類型或受管理類型。當您啟動具有至少一個節點的 Amazon EKS 叢集時,依預設會部署兩個CoreDNS映像複本,無論叢集中部署的節點數目為何。CoreDNS Pods 為叢集中的所有 Pods 提供名稱解析。如果您的叢集包含命名空間與 CoreDNS deployment 的命名空間相匹配的 定義啟動 AWS Fargate 時的Pods用途,則可將 CoreDNS Pods 部署至 Fargate 節點。

Amazon EKS 附加組件的名稱是coredns.

所需IAM權限

此附加元件不需要任何權限。

其他資訊

若要進一步了解 CoreDNS,請參閱Kubernetes文件中的使DNS用核心進行DNS服務探索和自訂服務

Kube-proxy

Kube-proxyAmazon EKS 附加組件在每個 Amazon EC2 節點上維護網絡規則。其可以與您的 Pods 進行網路通訊。此附加元件的自我管理或受管類型預設會安裝在叢集中的每個 Amazon EC2 節點上。

Amazon EKS 附加組件的名稱是kube-proxy.

所需IAM權限

此附加元件不需要任何權限。

更新資訊

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

其他資訊

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

Amazon EBS CSI 驅動

Amazon EBS CSI 驅動程序 Amazon EKS 插件是一個Kubernetes容器存儲界面(CSI)插件,可為您的集群提供 Amazon EBS 存儲。

Amazon EKS 附加組件的名稱是aws-ebs-csi-driver.

所需IAM權限

此附加元件利用 Amazon 服務帳戶功能的IAM角色EKS。AmazonEBSCSIDriverPolicy 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 EFS CSI 驅動

Amazon EFS CSI 驅動程序 Amazon EKS 插件是一個Kubernetes容器存儲界面(CSI)插件,可為您的集群提供 Amazon EFS 存儲。

Amazon EKS 附加組件的名稱是aws-efs-csi-driver.

所需IAM權限

所需IAM權限 — 此附加元件利用 Amazon 服務帳戶功能的IAM角色EKS。AmazonEFSCSIDriverPolicy 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

MountpointAmazon S3 CSI 驅動程序

Amazon S3 CSI 驅動程序亞馬遜EKS插件是一個Kubernetes容器存儲界面(CSI)插件,可為您的集群提供 Amazon S3 存儲。Mountpoint

Amazon EKS 附加組件的名稱是aws-mountpoint-s3-csi-driver.

所需IAM權限

此附加元件使用 Amazon 服務帳戶功能的IAM角色EKS。建立的IAM角色將需要提供 S3 存取權的政策。建立原則時,請遵循MountpointIAM權限建議。或者,您可以使用 AWS 受管理的策略 AmazonS3FullAccess,但是此受管理策略授與的權限超過所需的權限Mountpoint。

您可以建立IAM角色,並使用下列命令將原則附加至該角色。Replace (取代) 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 驅動程序的掛載點訪問 Amazon S3 對象 CSI

CSI快照控制器

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

Amazon EKS 附加組件的名稱是snapshot-controller.

所需IAM權限

此附加元件不需要任何權限。

其他資訊

若要深入瞭解附加元件,請參閱啟用CSI磁碟區的快照功能

AWS 發行版的 OpenTelemetry

OpenTelemetry Amazon AWS 發行版EKS附加元件是專案的安全、可生產就緒且 AWS 受支援的發行版。 OpenTelemetry 有關更多信息,請參閱(詳見)的AWS 發 OpenTelemetry行 GitHub版

Amazon EKS 附加組件的名稱是adot.

所需IAM權限

只有當您使用可透過進階設定選擇加入的預先設定自訂資源之一時,此附加元件才需要IAM權限。

其他資訊

有關更多信息,請參閱發行 AWS 版中的OpenTelemetry使用EKS附加組件的入門以 AWS 獲取文檔。OpenTelemetry

ADOT需要作為先決條件部署在叢集上,否則如果直接使用 Amazon EKS Terraform cert-manager cluster_addons 屬性部署,則此附加元件將無法運作。有關更多要求,請參閱發行版中OpenTelemetry使用EKS附加組件的發行 AWS 版入門要求以獲取 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 可觀察代理 Amazon EKS 附加提供的監控和可觀察性服務。 AWS此附加元件會安裝 CloudWatch 代理程式,並啟用 CloudWatch 應用程式訊號和 CloudWatch 容器見解,並增強 Amazon EKS 的可觀察性。如需詳細資訊,請參閱 Amazon CloudWatch 代理程式

Amazon EKS 附加組件的名稱是amazon-cloudwatch-observability.

所需IAM權限

此附加元件使用 Amazon 服務帳戶功能的IAM角色EKS。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網繭身分代理程

Amazon P EKS od 身分代理程式 Amazon EKS 附加元件提供管理應用程式登入資料的功能,類似於執行個體設定檔為EC2執行個體提供登入資料的方式。EC2

Amazon EKS 附加組件的名稱是eks-pod-identity-agent.

所需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 CNI plugin for Kubernetes Amazon EKS 加載項