Acessar recursos do Kubernetes usando o portal do Azure
Neste artigo, você aprenderá a acessar e gerenciar seus recursos do AKS (Serviço de Kubernetes do Azure) usando o portal do Azure.
Antes de começar
Para exibir recursos do Kubernetes no portal do Azure, você precisa de um cluster AKS. Qualquer cluster tem suporte, mas se você estiver usando a integração do Microsoft Entra, seu cluster deverá usar a integração do Microsoft Entra gerenciada pelo AKS. Se o cluster usar o Microsoft Entra ID herdado você poderá atualizar o cluster no portal ou com a CLI do Azure. Você também pode usar o portal do Azure para criar um novo cluster AKS.
Exibir recursos do Kubernetes
No portal do Azure, navegue até o recurso do cluster do AKS.
No menu de serviço, selecione Recursos do Kubernetes. A lista de recursos do Kubernetes exibe as seguintes categorias:
- Namespaces mostra informações sobre os namespaces do cluster.
- As cargas de trabalho mostram informações sobre implantações, pods, conjuntos de réplicas, conjuntos com estado, conjuntos de daemon, trabalhos e trabalhos cron implantados no cluster.
- Serviços e entradas mostra todos os recursos de serviço e de entrada do cluster.
- Armazenamento mostra as suas classes de armazenamento do Azure e as informações de volume persistentes.
- Configuração mostra os segredos e os mapas de configurações do cluster.
- Recursos personalizados mostra todos os recursos personalizados implantados no cluster.
- Eventos mostra todos os eventos relacionados ao cluster.
- Executar Comando permite que você invoque comandos remotamente, como
kubectl
ehelm
, no seu cluster por meio da API do Azure sem se conectar diretamente ao cluster.
Implantar um aplicativo de exemplo
Nesta seção, implantaremos o aplicativo Azure Store no início rápido do AKS.
Conectar-se ao seu cluster
Para implantar o aplicativo Azure Store, você precisa se conectar ao seu cluster do AKS. Siga estas etapas para se conectar ao cluster usando o portal do Azure:
- Na página Visão geral do cluster do AKS, selecione Conectar.
- Siga as instruções para se conectar ao cluster usando o Cloud Shell, CLI do Azure ou Executar Comando.
Implantar o aplicativo Azure Store
Na lista Recursos do Kubernetes, selecione Serviços e entradas.
Selecione Criar>Aplicar um YAML.
Copie e cole o YAML a seguir no editor:
apiVersion: apps/v1 kind: Deployment metadata: name: rabbitmq spec: replicas: 1 selector: matchLabels: app: rabbitmq template: metadata: labels: app: rabbitmq spec: nodeSelector: "kubernetes.io/os": linux containers: - name: rabbitmq image: mcr.microsoft.com/mirror/docker/library/rabbitmq:3.10-management-alpine ports: - containerPort: 5672 name: rabbitmq-amqp - containerPort: 15672 name: rabbitmq-http env: - name: RABBITMQ_DEFAULT_USER value: "username" - name: RABBITMQ_DEFAULT_PASS value: "password" resources: requests: cpu: 10m memory: 128Mi limits: cpu: 250m memory: 256Mi volumeMounts: - name: rabbitmq-enabled-plugins mountPath: /etc/rabbitmq/enabled_plugins subPath: enabled_plugins volumes: - name: rabbitmq-enabled-plugins configMap: name: rabbitmq-enabled-plugins items: - key: rabbitmq_enabled_plugins path: enabled_plugins --- apiVersion: v1 data: rabbitmq_enabled_plugins: | [rabbitmq_management,rabbitmq_prometheus,rabbitmq_amqp1_0]. kind: ConfigMap metadata: name: rabbitmq-enabled-plugins --- apiVersion: v1 kind: Service metadata: name: rabbitmq spec: selector: app: rabbitmq ports: - name: rabbitmq-amqp port: 5672 targetPort: 5672 - name: rabbitmq-http port: 15672 targetPort: 15672 type: ClusterIP --- apiVersion: apps/v1 kind: Deployment metadata: name: order-service spec: replicas: 1 selector: matchLabels: app: order-service template: metadata: labels: app: order-service spec: nodeSelector: "kubernetes.io/os": linux containers: - name: order-service image: ghcr.io/azure-samples/aks-store-demo/order-service:latest ports: - containerPort: 3000 env: - name: ORDER_QUEUE_HOSTNAME value: "rabbitmq" - name: ORDER_QUEUE_PORT value: "5672" - name: ORDER_QUEUE_USERNAME value: "username" - name: ORDER_QUEUE_PASSWORD value: "password" - name: ORDER_QUEUE_NAME value: "orders" - name: FASTIFY_ADDRESS value: "0.0.0.0" resources: requests: cpu: 1m memory: 50Mi limits: cpu: 75m memory: 128Mi initContainers: - name: wait-for-rabbitmq image: busybox command: ['sh', '-c', 'until nc -zv rabbitmq 5672; do echo waiting for rabbitmq; sleep 2; done;'] resources: requests: cpu: 1m memory: 50Mi limits: cpu: 75m memory: 128Mi --- apiVersion: v1 kind: Service metadata: name: order-service spec: type: ClusterIP ports: - name: http port: 3000 targetPort: 3000 selector: app: order-service --- apiVersion: apps/v1 kind: Deployment metadata: name: product-service spec: replicas: 1 selector: matchLabels: app: product-service template: metadata: labels: app: product-service spec: nodeSelector: "kubernetes.io/os": linux containers: - name: product-service image: ghcr.io/azure-samples/aks-store-demo/product-service:latest ports: - containerPort: 3002 resources: requests: cpu: 1m memory: 1Mi limits: cpu: 1m memory: 7Mi --- apiVersion: v1 kind: Service metadata: name: product-service spec: type: ClusterIP ports: - name: http port: 3002 targetPort: 3002 selector: app: product-service --- apiVersion: apps/v1 kind: Deployment metadata: name: store-front spec: replicas: 1 selector: matchLabels: app: store-front template: metadata: labels: app: store-front spec: nodeSelector: "kubernetes.io/os": linux containers: - name: store-front image: ghcr.io/azure-samples/aks-store-demo/store-front:latest ports: - containerPort: 8080 name: store-front env: - name: VUE_APP_ORDER_SERVICE_URL value: "http://order-service:3000/" - name: VUE_APP_PRODUCT_SERVICE_URL value: "http://product-service:3002/" resources: requests: cpu: 1m memory: 200Mi limits: cpu: 1000m memory: 512Mi --- apiVersion: v1 kind: Service metadata: name: store-front spec: ports: - port: 80 targetPort: 8080 selector: app: store-front type: LoadBalancer
Selecione Adicionar.
Quando a implantação do aplicativo for concluída, você verá os seguintes serviços na lista Serviços:
- order-service
- product-service
- rabbitmq
- store-front
Monitorar informações de implantação
Habilitar o complemento de monitoramento no cluster do AKS
Clusters do AKS com Insights de Contêiner habilitado podem acessar vários insights de implantação no portal do Azure. Se você não habilitou o monitoramento no seu cluster, poderá habilitá-lo usando as seguintes etapas:
No menu de serviço do recurso de cluster do AKS, selecione Monitoramento>Insights>Configurar monitoramento.
Na página Configurar insights de contêiner, selecione Configurar.
Pode levar alguns minutos para que a solução de monitoramento implante e comece a coletar dados.
Ver insights de implantação
- No menu de serviço do recurso de cluster do AKS, selecione Cargas de Trabalho.
- Selecione uma implantação na lista para ver os insights da implantação, como uso de CPU e memória.
Observação
Você também pode selecionar Monitoramento>Insights para ver informações mais detalhadas sobre contêineres e nós específicos.
Limpar os recursos
Se você não precisar mais do aplicativo Azure Store, poderá excluir os serviços para evitar incorrer em custos do Azure.
- Na lista Recursos do Kubernetes, selecione Serviços e entradas.
- Selecione os serviços que você deseja excluir e depois selecione Excluir.
Solução de problemas
Unauthorized access
Para acessar os recursos do Kubernetes, você deve ter acesso ao cluster do AKS, à API do Kubernetes e aos objetos do Kubernetes. Verifique se você é um administrador de cluster ou um usuário com as permissões apropriadas para acessar o cluster do AKS. Para obter mais informações, confira Opções de acesso e identidade do AKS.
Habilitar a exibição de recursos
Pode ser necessário habilitar a exibição de recursos do Kubernetes para clusters existentes.
Dica
Você pode adicionar o recurso do AKS aos intervalos de IP autorizados pelo servidor de API para limitar o acesso do servidor de API apenas ao ponto de extremidade público do firewall. Outra opção é atualizar o --api-server-authorized-ip-ranges
/-ApiServerAccessAuthorizedIpRange
para incluir o acesso a um computador cliente local ou o intervalo de endereços IP a partir do qual você está navegando pelo portal do Azure. Para permitir esse acesso, você precisa do endereço IPv4 público do computador. Você pode encontrar esse endereço usando os seguintes comandos da CLI do Azure ou do Azure PowerShell, ou você pode pesquisar "qual é o meu endereço IP" no seu navegador.
Recupere seu endereço IP usando o comando a seguir:
CURRENT_IP=$(dig +short myip.opendns.com @resolver1.opendns.com)
Adicione seu endereço IP à lista aprovada pelo AKS usando o comando
az aks update
com o parâmetro--api-server-authorized-ip-ranges
.az aks update --resource-group <resource-group-name> --name <aks-cluster-name> --api-server-authorized-ip-ranges $CURRENT_IP/32
Próximas etapas
Esse artigo mostrou como acessar os recursos do Kubernetes no portal do Microsoft Azure. Para obter mais informações sobre o AKS, confira Principais conceitos do AKS (Serviço de Kubernetes do Azure).
Azure Kubernetes Service