Configurar o NGINX com tráfego de amostra no Amazon EKS e no Kubernetes - Amazon CloudWatch

Configurar o NGINX com tráfego de amostra no Amazon EKS e no Kubernetes

O NGINX é um servidor web que também pode ser usado como load balancer e proxy reverso. Para obter mais informações sobre como o Kubernetes usa o NGINX para entrada, consulte kubernetes/ingress-nginx.

Como instalar o Ingress-NGINX com uma amostra de serviço de tráfego para testar o suporte ao Container Insights Prometheus
  1. Insira comando a seguir para adicionar o repositório ingress-nginx do Helm:

    helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
  2. Insira os comandos a seguir:

    kubectl create namespace nginx-ingress-sample helm install my-nginx ingress-nginx/ingress-nginx \ --namespace nginx-ingress-sample \ --set controller.metrics.enabled=true \ --set-string controller.metrics.service.annotations."prometheus\.io/port"="10254" \ --set-string controller.metrics.service.annotations."prometheus\.io/scrape"="true"
  3. Verifique se os serviços foram iniciados corretamente inserindo o comando a seguir:

    kubectl get service -n nginx-ingress-sample

    A saída deste comando deve exibir várias colunas, incluindo uma coluna EXTERNAL-IP.

  4. Defina uma variável EXTERNAL-IP para o valor da coluna EXTERNAL-IP na linha do controlador de entrada do NGINX.

    EXTERNAL_IP=your-nginx-controller-external-ip
  5. Inicie alguns exemplos de tráfego do NGINX inserindo o comando a seguir.

    SAMPLE_TRAFFIC_NAMESPACE=nginx-sample-traffic curl https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/latest/k8s-deployment-manifest-templates/deployment-mode/service/cwagent-prometheus/sample_traffic/nginx-traffic/nginx-traffic-sample.yaml | sed "s/{{external_ip}}/$EXTERNAL_IP/g" | sed "s/{{namespace}}/$SAMPLE_TRAFFIC_NAMESPACE/g" | kubectl apply -f -
  6. Insira o comando a seguir para confirmar se todos os três pods estão no status Running.

    kubectl get pod -n $SAMPLE_TRAFFIC_NAMESPACE

    Se eles estiverem em execução, logo você verá as métricas no namespace ContainerInsights/Prometheus .

Como desinstalar o NGINX e o aplicativo de tráfego de exemplo
  1. Exclua o serviço de tráfego de exemplo inserindo o comando a seguir:

    kubectl delete namespace $SAMPLE_TRAFFIC_NAMESPACE
  2. Exclua a saída do NGINX pelo nome da versão do Helm.

    helm uninstall my-nginx --namespace nginx-ingress-sample kubectl delete namespace nginx-ingress-sample