Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste artigo, você aprenderá a monitorar um cluster do MongoDB no AKS (Serviço de Kubernetes do Azure) usando o PMM (Monitoramento e Gerenciamento de Percona). O monitoramento é essencial para garantir a integridade e o desempenho do cluster do MongoDB. Monitorando as principais métricas, você poderá identificar problemas antecipadamente e executar ações corretivas para evitar tempo de inatividade e perda de dados.
Configurar o PMM (Monitoramento e Gerenciamento de Percona) para MongoDB
O PMM opera como um aplicativo cliente/servidor, consistindo em um servidor de PMM e vários clientes de PMM instalados em cada nó do banco de dados que você deseja monitorar. Os clientes de PMM coletam métricas essenciais e transmitem esses dados para o servidor de PMM. Em seguida, você poderá se conectar ao servidor de PMM para exibir métricas de banco de dados em vários painéis.
Habilitar o monitoramento do Percona Server para MongoDB com o PMM
Para habilitar o monitoramento do Percona Server para MongoDB, verifique se o campo
pmm.enabledestá definido comotrueno recurso personalizado PerconaServerMongoDB. Verifique essa configuração usando o comandokubectl describe.kubectl describe PerconaServerMongoDB ${AKS_MONGODB_CLUSTER_NAME} -n ${AKS_MONGODB_NAMESPACE}Exemplo de saída:
Name: cluster-aks-mongodb Namespace: mongodb ... Spec: ... Pmm: Enabled: true Image: <your-acr-name>.azurecr.io/pmm-client:2.41.2 Server Host: monitoring-service ...Se o campo
pmm.enabledestiver definido comofalse, você poderá habilitá-lo usando o comandokubectl patch.kubectl patch PerconaServerMongoDB ${AKS_MONGODB_CLUSTER_NAME} -n ${AKS_MONGODB_NAMESPACE} --type='merge' -p '{"spec":{"pmm":{"enabled":true}}}'
Criar um pool de nós para o servidor de PMM
Crie um pool de nós dedicado para o servidor de PMM usando o comando
az aks nodepool add.az aks nodepool add \ --resource-group $MY_RESOURCE_GROUP_NAME \ --cluster-name $MY_CLUSTER_NAME \ --name pmmserver \ --node-vm-size Standard_DS4_v2 \ --node-count 3 \ --zones 1 2 3 \ --mode User \ --output table
Instalar o servidor de PMM
Adicione e atualize o repositório Percona Helm usando os comandos
helm repo addehelm repo update.helm repo add percona https://percona.github.io/percona-helm-charts/ helm repo updateInstale o servidor de PMM usando o comando
helm install.helm install pmm --namespace mongodb \ --set nodeSelector."kubernetes\.azure\.com/agentpool"="pmmserver" \ --set service.type="LoadBalancer" \ percona/pmmObtenha o endereço IP externo do servidor de PMM usando o comando
kubectl get svc.export SERVICE_IP=$(kubectl get svc --namespace mongodb monitoring-service -o jsonpath="{.status.loadBalancer.ingress[0].ip}") echo https://$SERVICE_IP:Obtenha a senha do usuário administrador usando o comando
kubectl get secret.export ADMIN_PASS=$(kubectl get secret pmm-secret --namespace mongodb -o jsonpath='{.data.PMM_ADMIN_PASSWORD}' | base64 --decode) echo $ADMIN_PASSAgora você poderá acessar o servidor de PMM usando o endereço IP externo e a senha do usuário "administrador". Você também poderá acessar o servidor de PMM em seu computador local usando o comando
kubectl port-forward.kubectl port-forward svc/monitoring-service -n mongodb 8080:80Depois que o encaminhamento de porta estiver habilitado, você poderá acessar o servidor de PMM navegando até
http://localhost:8080.
Configurar o servidor de PMM
Acesse o servidor de PMM usando o usuário administrador e a senha obtida anteriormente.
No menu lateral, selecione Configuração>API chaves.
Na página Configuração, selecione Adicionar Chave de API.
Insira as seguintes informações:
- Nome da chave (você pode dar qualquer nome desejado)
- Selecione a Função na lista suspensa
- Insira um valor na caixa de texto Vida útil (focalize na dica de ferramenta para obter mais informações)
Selecione Adicionar.
Copie sua chave da janela Criada pela Chave de API e mantenha-a segura.
Definir a chave de API como segredo e atualizá-la
Defina a chave de API como um segredo no Azure Key Vault usando o comando
az keyvault secret set. Certifique-se de substituir$MY_KEYVAULT_NAMEe$API_KEYpor seus valores.az keyvault secret set --vault-name $MY_KEYVAULT_NAME --name PMM-SERVER-API-KEY --value $API_KEY --output tableAtualize o segredo no recurso ExternalSecret com a nova chave secreta usando o comando
kubectl annotate.kubectl annotate es ${AKS_MONGODB_SECRETS_NAME} force-sync=$(date +%s) --overwrite -n ${AKS_MONGODB_NAMESPACE}
Testar servidor de PMM
Após configurar o servidor de PMM, você poderá gerar dados de teste usando o Locust, conforme descrito em Validar resiliência do cluster MongoDB no AKS (Serviço de Kubernetes do Azure). Após gerar dados de teste, você poderá monitorar o desempenho do cluster do MongoDB no servidor de PMM.
Próximas etapas
Neste artigo, você aprendeu a monitorar um cluster do MongoDB no AKS (Serviço de Kubernetes do Azure) usando o PMM (Monitoramento e Gerenciamento de Percona). Para saber mais sobre como implantar cargas de trabalho com estado no AKS, confira os seguintes artigos: