Configura un carico di lavoro di AWS App Mesh esempio su un EKS cluster Amazon con il tipo di lancio Fargate - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configura un carico di lavoro di AWS App Mesh esempio su un EKS cluster Amazon con il tipo di lancio Fargate

Usa queste istruzioni se stai configurando App Mesh su un cluster che esegue Amazon EKS con il tipo di avvio Fargate.

Configura le IAM autorizzazioni

Per impostare IAM le autorizzazioni, inserisci il seguente comando. Replace (Sostituisci) MyCluster con il nome del tuo cluster.

eksctl create iamserviceaccount --cluster MyCluster \ --namespace howto-k8s-fargate \ --name appmesh-pod \ --attach-policy-arn arn:aws:iam::aws:policy/AWSAppMeshEnvoyAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSCloudMapDiscoverInstanceAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSXRayDaemonWriteAccess \ --attach-policy-arn arn:aws:iam::aws:policy/CloudWatchLogsFullAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSAppMeshFullAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSCloudMapFullAccess \ --override-existing-serviceaccounts \ --approve

Installazione di App Mesh

Per installare il controller App Mesh Kubernetes, segui le istruzioni in Controller di App Mesh. Assicurati di seguire le istruzioni per Amazon EKS con il tipo di lancio Fargate.

Installazione di un'applicazione di esempio

aws-app-mesh-examplescontiene diverse procedure dettagliate per Kubernetes App Mesh. Per questo tutorial, installi un'applicazione a colori di esempio che funziona per EKS i cluster Amazon con il tipo di avvio Fargate.

Per utilizzare un'applicazione App Mesh di esempio per testare Container Insights
  1. Installa l'applicazione seguendo queste istruzioni: https://github.com/aws/aws-app-mesh-examples/tree/main/walkthroughs/howto-k8s-fargate.

    Queste istruzioni presuppongono che tu stia creando un nuovo cluster con il profilo Fargate corretto. Se desideri utilizzare un EKS cluster Amazon che hai già configurato, puoi utilizzare i seguenti comandi per configurare quel cluster per questa dimostrazione. Replace (Sostituisci) MyCluster con il nome del tuo cluster.

    eksctl create iamserviceaccount --cluster MyCluster \ --namespace howto-k8s-fargate \ --name appmesh-pod \ --attach-policy-arn arn:aws:iam::aws:policy/AWSAppMeshEnvoyAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSCloudMapDiscoverInstanceAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSXRayDaemonWriteAccess \ --attach-policy-arn arn:aws:iam::aws:policy/CloudWatchLogsFullAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSAppMeshFullAccess \ --attach-policy-arn arn:aws:iam::aws:policy/AWSCloudMapFullAccess \ --override-existing-serviceaccounts \ --approve
    eksctl create fargateprofile --cluster MyCluster \ --namespace howto-k8s-fargate --name howto-k8s-fargate
  2. Esegui il port forwarding dell'implementazione dell'applicazione front:

    kubectl -n howto-k8s-fargate port-forward deployment/front 8080:8080
  3. Esegui il curl dell'App front:

    while true; do curl -s http://localhost:8080/color; sleep 0.1; echo ; done
  4. Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  5. Nella AWS regione in cui è in esecuzione il cluster, scegli Metriche nel riquadro di navigazione. La metrica si trova nello spazio dei nomi ContainerInsights/Prometheus.

  6. Per visualizzare gli eventi di CloudWatch Logs, scegli Log groups nel riquadro di navigazione. Gli eventi si trovano nel gruppo di log /aws/containerinsights/your_cluster_name/prometheus nel flusso di log kubernetes-pod-appmesh-envoy.

Eliminazione dell'ambiente di test di App Mesh

Al termine dell'utilizzo di App Mesh e dell'applicazione di esempio, utilizza i seguenti comandi per eliminare le risorse non necessarie. Elimina l'applicazione di esempio immettendo il seguente comando:

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

Elimina il controller App Mesh immettendo il seguente comando:

helm delete appmesh-controller -n appmesh-system