Ongoing service disruptions
For the most recent update on ongoing service disruptions affecting the AWS Middle East (UAE) Region (ME-CENTRAL-1), refer to the AWS Health Dashboard. For information on AWS Service migration, see How do I migrate my services to another region?
如何對 Amazon Elastic Kubernetes Service 叢集中的存取項目問題進行疑難排解?
當我在 Amazon Elastic Kubernetes Service (Amazon EKS) 叢集中使用存取項目時,出現錯誤訊息或遇到問題。
解決方法
**先決條件:**您的 Amazon EKS 叢集執行 Kubernetes 版本 1.23 或更新版本。
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
驗證模式錯誤
當您修改叢集的驗證模式時,收到以下錯誤訊息:
- 「An error occurred (InvalidParameterException) when calling the UpdateClusterConfig operation: Unsupported authentication mode update from API_AND_CONFIG_MAP to CONFIG_MAP.」
- 「An error occurred (InvalidParameterException) when calling the UpdateClusterConfig operation: Unsupported authentication mode update from API to CONFIG_MAP.」
- 「An error occurred (InvalidParameterException) when calling the UpdateClusterConfig operation: Unsupported authentication mode update from API to API_AND_CONFIG_MAP.」
當您設定驗證模式後,無法回復此操作。例如,在您將模式變更為 API 之後,便無法回到 CONFIG_MAP 或 API_AND_CONFIG_MAP。如需詳細資訊,請參閱深入了解簡化的 Amazon EKS 存取管理控制。
為防止驗證模式錯誤,請使用存取項目而不是 aws-auth ConfigMap。
AccessDeniedException 錯誤
當 AWS Identity and Access Management (IAM) 主體沒有足夠的權限使用存取項目時,您會收到錯誤訊息。錯誤訊息類似下列內容:
「An error occurred (AccessDeniedException) when calling the CreateAccessEntry operation: User: [principalARN] is not authorized to perform: eks:CreateAccessEntry on resource: arn:aws:eks:us-east-1:000000000:cluster/your-eks-cluster.」
若要解決此問題,請將以下權限新增至提出請求的 IAM 主體 IAM 政策中:
CONFIG_MAP 到 API_AND_CONFIG_MAP 移轉或更新問題
當您從 CONFIG_MAP 移轉或更新存取項目至 API_AND_CONFIG_MAP 時,會出現以下通知:
「在現有的 ConfigMap/AWS-Auth 中定義的節點 IAM 角色對應已自動新增為存取項目。然而,在 aws-auth 中,該角色定義為兩個 system:nodes/system:bootstrappers 群組,但在存取項目端只有 system:nodes/。」
此處沒有任何錯誤需要進行疑難排解,因為移轉程序會預設將您的節點 IAM 角色對應到 system:nodes 群組。
完成存取項目移轉後,您不再需要 aws-auth ConfigMap 或 system:bootstrappers 群組授予的 IAM 存取項目組態。您的節點可透過 system:nodes 群組授予的權限執行所有作業。system:nodes 群組可確認 CONFIG_MAP 到 API_AND_CONFIG_MAP 的移轉已從存取項目中移除不必要的群組。
類型錯誤
當您沒有將 IAM 角色設定為存取項目的目的地 IAM 主體時,會發生以下錯誤:
「AccessEntry principalArn must be IAM role when using types [EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX].」
若要解決此問題,請使用以下其中一種存取項目類型:
- EC2_LINUX
- EC2_WINDOWS
- FARGATE_LINUX
如需有關存取項目類型的更多資訊,請參閱建立存取項目。
使用者名稱錯誤
如果在建立存取項目時提供了不正確的使用者名稱,那麼您會收到以下錯誤訊息:
「The username must not begin with [eks:, aws:, system:, amazon:, iam:].」
如果您指定自己的使用者名稱,則開頭不得使用以下首碼:
- eks:
- aws:
- system:
- amazon:
- iam:
若要解決此問題,請確保您的使用者名稱符合存取項目的使用者名稱要求。如需有關使用者名稱要求的更多資訊,請參閱建立存取項目。
**注意:**為防止可能的錯誤,最佳實務是讓 Amazon EKS 自動為您產生使用者名稱。
權限錯誤
您可能會遇到權限錯誤,因為 Amazon EKS 不會確認叢集中的 Kubernetes 角色型存取控制 (RBAC) 物件是否包含您指定的群組名稱。Amazon EKS 不會驗證您指定的群組名稱是否存在於叢集的繫結中。
若要解決此問題,請執行下列動作:
- 確認您的 aws-auth ConfigMap 或 IAM 存取項目已成功建立您在 Kubernetes RoleBinding 或 ClusterRoleBinding 中指定為主體的群組。
- 檢查您在存取項目中參考的 Kubernetes 群組拼寫與格式是否正確。
服務連結角色錯誤
如果您在建立存取項目時指定服務連結角色,那麼您會收到以下錯誤訊息:
「The caller is not allowed to modify access entries with a principalArn value of a Service Linked Role.」
存取項目不支援服務連結角色。因此,當主體 Amazon Resource Name (ARN) 是服務連結角色時,您無法建立存取項目。您可以透過 ARN 識別服務連結角色。例如,arn:aws:iam::*:role/aws-service-role/* ARN 表示服務連結角色。
若要授予服務連結角色對叢集的存取權,請使用 CONFIG_MAP 或 API_AND_CONFIG_MAP 驗證模式,並在 aws-auth ConfigMap 中指定服務連結角色。
相關資訊
- 語言
- 中文 (繁體)
