AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
如何對 Amazon EKS 中的記錄問題進行疑難排解?
我想解決在 Amazon Elastic Kubernetes Service (Amazon EKS) 叢集中啟用記錄時發生的問題。
解決方法
在您進行疑難排解之前,請確保您的應用程式有寫入日誌。
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
確認您的網路設定正確
確認 Amazon Virtual Private Cloud (Amazon VPC) 子網路與安全群組的網路設定正確。檢查以下項目:
- 如果您使用網際網路閘道,請確認它已正確關聯到路由表。同時,確認傳入或傳出的網路流量路由正確。
- 如果您使用 NAT 閘道,請確認它已在公有子網路中正確設定。然後驗證關聯的路由表已正確路由。
- 如果您有僅限有限網際網路存取的私有叢集,請確保您的叢集具有 com.amazonaws.region.logs VPC 介面端點,並附加了正確的政策。
- 如果您有服務帳戶,您可能已使用 AWS Identity and Access Management (IAM) 角色設定了 Pod。如果沒有傳出網際網路存取,您必須在 VPC 中使用 AWS Security Token Service (AWS STS) 端點 com.amazonaws.region.logs。
- 您可能想從私有 Amazon Elastic Container Registry (Amazon ECR) 資料儲存器提取映像檔。如果您沒有 NAT 閘道或傳出網際網路存取,您需要以下 VPC 端點及 Amazon Simple Storage Service (Amazon S3) 閘道端點:
com.amazonaws.region-code.s3
com.amazonaws.region-code.ecr.api
com.amazon.region-code.ecr.dkr - VPC 端點的安全群組必須有傳入規則,允許來自 443 連接埠的流量。同時,確認節點安全群組允許傳出流量傳輸至 VPC 端點。
確認 Pod 有足夠的權限
如果您使用服務帳戶的 IAM 角色的 Pod,請確認您已將服務帳戶註解為正確的 IAM 角色。然後,確認您已為叢集建立 IAM OpenID Connect (OIDC) 提供者。
若要檢查服務帳戶的 IAM 角色與權限,請完成以下步驟:
-
描述服務帳戶的 IAM 角色,然後確認存在以下註解。執行以下命令:
eks.amazonaws.com/role-arn: arn:aws:iam::111122223333:role/YOUR-ROLE-NAME**注意:**將 YOUR-ROLE-NAME 替換為您的帳戶 IAM 角色名稱。
-
確認該 IAM 角色已附加 CloudWatchAgentServerPolicy。或確認該角色具有相同權限的政策。如果沒有,請確保節點角色已附加 CloudWatchAgentServerPolicy。
Fluent Bit 組態疑難排解
如果您安裝了 Fluent Bit 日誌路由器,請確認 Pod 正在執行,且系統已將日誌傳送到 Amazon CloudWatch。如果沒有,您可能會遇到 IAM 權限或網路問題。
若要對 Fluent Bit 部署與組態進行疑難排解,請確認以下項目:
若要檢查安裝 Fluent Bit 的命名空間中的 Pod,請執行以下命令:
kubectl get pods -n NAMESPACE
**注意:**將 NAMESPACE 替換為您的命名空間名稱。
如果您的節點有污點,請確保 Pod 已設定容忍度。
如果 Pod 的狀態不是執行中,請執行以下命令檢查 Pod 事件:
kubectl describe pod POD_NAME -n NAMESPACE
**注意:**將 POD_NAME 替換為您的 Pod 名稱,將 NAMESPACE 替換為您的命名空間名稱。
若要檢查 Pod 的日誌錯誤,請執行以下命令:
kubectl logs POD_NAME -n NAMESPACE
**注意:**將 POD_NAME 替換為您的 Pod 名稱,將 NAMESPACE 替換為您的命名空間名稱。
預設情況下,Fluent Bit 的日誌等級設定為資訊。如果您需要更多深入解析,請將其設定為偵錯。如需更多資訊,請參閱 Fluent Bit 網站上的組態檔。
若要檢視 Fluent Bit ConfigMap 組態,請執行以下命令:
kubectl get cm CONFIGMAP_NAME -n NAMESPACE -o yaml
**注意:**將 CONFIGMAP_NAME 替換為您的 ConfigMap 名稱,將 NAMESPACE 替換為您的命名空間名稱。
確認節點角色或與服務帳戶關聯的角色已根據設定的目的地,具有正確的 IAM 權限。
CloudWatch 代理程式疑難排解
確認節點 IAM 角色具有必要權限。如果您使用具有服務帳戶角色的 IAM 角色,請確認您已建立 OIDC 提供者以及 IAM 角色和政策。確認服務帳戶正確註解為適當的 IAM 角色。
確認 cloudwatch-agent DaemonSet Pod 可正常運作。如果您的節點有污點,請確認 Pod 已設定容忍度。若要取得 Pod 清單,請執行以下命令:
kubectl logs POD_NAME -n amazon-cloudwatch
**注意:**將 POD_NAME 替換為您 Pod 的名稱。
如果 Pod 的狀態不是執行中,請檢查 Pod 事件。執行以下命令:
kubectl describe pod POD_NAME -n amazon-cloudwatch
**注意:**將 POD_NAME 替換為您 Pod 的名稱。
確認您已在 ConfigMap 中正確設定叢集名稱。若要檢查 Pod 的日誌,請執行以下命令:
kubectl logs POD_NAME -n amazon-cloudwatch
**注意:**將 POD_NAME 替換為您 Pod 的名稱。
如果您在 DaemonSet 中使用公有映像檔,請確保節點具有網際網路存取權。如果您使用私有資料儲存器的映像檔,請確認已允許所需流量。
對 Fargate 叢集的記錄問題進行疑難排解
**注意:**AWS Fargate 日誌不支援 ConfigMap 的動態組態。變更不會套用至現有 Pod,因此對 ConfigMap 的任何變更僅適用於新 Pod。
若要檢查您是否已建立名為 aws-observability 的命名空間,並帶有 aws-observability: enabled 標籤,請執行以下命令:
kubectl get ns aws-observability -o yaml
確認您已在 Fargate 設定檔的 Pod 執行角色中指定了正確的 IAM 政策。例如,如果您想將日誌傳送到 CloudWatch,請確保 Pod 執行角色具有以下權限:
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:CreateLogGroup", "logs:DescribeLogStreams", "logs:PutLogEvents", "logs:PutRetentionPolicy" ], "Resource": "*" }] }
確認您已在 aws-observability 命名空間中正確建立 ConfigMap。確認 ConfigMap 符合 Fargate 用來驗證欄位的規則。
如果缺少 Fluent Bit 處理日誌,請確認您在 ConfigMap 中設定了 flb_log_cw: "true"。
對 Amazon EKS 中的 CloudWatch Observability 附加元件進行疑難排解
如果 Amazon EKS 中的 CloudWatch Observability 附加元件使用服務帳戶的 IAM 角色,請確認您已為叢集建立 OIDC 提供者。然後,確認您已使用正確的角色設定服務帳戶。該角色必須附加 CloudWatchAgentServerPolicy 政策。
如果您使用 AWS 管理主控台安裝受管附加元件,請確認 Pod 與附加元件的狀態在主控台中為啟用。如果附加元件處於失敗狀態,請檢查失敗原因。同樣地,如果您使用 Helm 安裝附加元件,請確認 Helm 安裝成功。
如果您觀察到現有資源失敗,可能是因為您已安裝附加元件所需的元件。如果您先前安裝過 CloudWatch 代理程式,請在安裝附加元件前將其從叢集中移除。在安裝附加元件前,您還必須備份對原始 CloudWatch 代理程式所做的任何自訂或修改。安裝或更新附加元件或 Helm Chart 後,您可以重新套用自訂內容。
相關資訊
- 語言
- 中文 (繁體)

相關內容
- 已提問 2 年前
- 已提問 1 年前
- 已提問 1 年前