設定具有 EC2 啟動類型或 Kubernetes 叢集的 Amazon EKS 叢集上的 AWS App Mesh 範例工作負載 - Amazon CloudWatch

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

設定具有 EC2 啟動類型或 Kubernetes 叢集的 Amazon EKS 叢集上的 AWS App Mesh 範例工作負載

如果您要在執行 Amazon EKS 且具有 EC2 啟動類型的叢集或 Kubernetes 叢集上設定 App Mesh,請使用這些指示。

設定 IAM 許可

您必須將 AWSAppMeshFullAccess 政策新增至您的 Amazon EKS 或 Kubernetes 節點群組的 IAM 角色。在 Amazon EKS 上,此節點群組名稱看起來類似於 eksctl-integ-test-eks-prometheus-NodeInstanceRole-ABCDEFHIJKL。在 Kubernetes 上,它可能看起來類似於 nodes.integ-test-kops-prometheus.k8s.local.

安裝 App Mesh

若要安裝 App Mesh Kubernetes 控制器,請遵循 App Mesh 控制器中的說明進行。

安裝範例應用程式

aws-app-mesh-examples 包含數個 Kubernetes App Mesh 演練。在本教學課程中,您將安裝一個範例色彩應用程式,該應用程式顯示 http 路由如何使用標頭來比對傳入的請求。

若要使用範例 App Mesh 應用程式來測試 Container Insights
  1. 使用這些指示安裝應用程式:https://github.com/aws/aws-app-mesh-examples/tree/main/walkthroughs/howto-k8s-http-headers

  2. 啟動 curler pod 以產生流量:

    kubectl -n default run -it curler --image=tutum/curl /bin/bash
  3. 透過變更 HTTP 標頭來 Curl 不同的端點。多次執行 curl 命令,如此處所示:

    curl -H "color_header: blue" front.howto-k8s-http-headers.svc.cluster.local:8080/; echo; curl -H "color_header: red" front.howto-k8s-http-headers.svc.cluster.local:8080/; echo; curl -H "color_header: yellow" front.howto-k8s-http-headers.svc.cluster.local:8080/; echo;
  4. 透過 https://console.aws.amazon.com/cloudwatch/ 開啟 CloudWatch 主控台。

  5. 在叢集執行的 AWS 區域中,選擇導覽窗格中的指標。指標位於 ContainerInsights/Prometheus 命名空間中。

  6. 若要查看 CloudWatch Logs 事件,請在導覽窗格中選擇 Log groups (日誌群組)。事件位於日誌串流 kubernetes-pod-appmesh-envoy 中的 日誌群組 /aws/containerinsights/your_cluster_name/prometheus 中。

刪除 App Mesh 測試環境

當您使用完 App Mesh 和範例應用程式時,請使用以下命令刪除不必要的資源。輸入下列命令以刪除範例應用程式:

cd aws-app-mesh-examples/walkthroughs/howto-k8s-http-headers/ kubectl delete -f _output/manifest.yaml

輸入以下命令以刪除 App Mesh 控制器:

helm delete appmesh-controller -n appmesh-system