Utilize a extensão de diagnóstico Linux para monitorizar o desempenho e os dados de diagnóstico de um Linux VM
Importante
Os VM clássicos serão retirados a 1 de março de 2023.
Se utilizar recursos iaaS da ASM, por favor preencha a sua migração até 1 de março de 2023. Encorajamo-lo a fazer a troca mais cedo para aproveitar as muitas melhorias de funcionalidades em Azure Resource Manager.
Para mais informações, consulte a Migração dos seus recursos iaaS para a Azure Resource Manager até 1 de março de 2023.
Este documento descreve a versão 2.3 da Extensão de Diagnóstico Linux.
Importante
Esta versão é depreciada, e pode não ser publicada a qualquer momento depois de 30 de junho de 2018. Foi substituído pela versão 3.0. Para mais informações, consulte a documentação para a versão 3.0 da Extensão de Diagnóstico Linux.
Introdução
(Nota: A extensão de diagnóstico do Linux é de origem aberta no GitHub , onde as informações mais atuais sobre a extensão são publicadas pela primeira vez. É melhor verificar primeiro a página do GitHub .)
A extensão de diagnóstico Linux ajuda um utilizador a monitorizar os VMs Linux que estão a ser executadas no Microsoft Azure. Tem as seguintes capacidades:
- Recolhe e envia as informações de desempenho do sistema do Linux VM para a mesa de armazenamento do utilizador, incluindo informações de diagnóstico e syslog.
- Permite que os utilizadores personalizem as métricas de dados que serão recolhidas e carregadas.
- Permite que os utilizadores carreguem ficheiros de registo especificados para uma tabela de armazenamento designada.
Na versão atual 2.3, os dados incluem:
- Todos os registos Linux Rsyslog, incluindo registos de sistema, segurança e aplicação.
- Todos os dados do sistema especificados no site system center cross platform Solutions.
- Ficheiros de registo especificados pelo utilizador.
Esta extensão funciona com os modelos clássicos e Resource Manager de implantação.
Versão atual da extensão e depreciação de versões antigas
A versão mais recente da extensão é 2.3, e quaisquer versões antigas (2.0, 2.1 e 2.2) serão depreciadas e não publicadas até ao final deste ano (2017). Se instalou a extensão Linux Diagnostic com atualização automática de versão menor desativada, recomenda-se vivamente que desinstale a extensão e a reinstale com a atualização automática de versão menor ativada. Nos VMs clássicos (ASM), pode fazê-lo especificando '2.*' como a versão se estiver a instalar a extensão através do Azure XPLAT CLI ou powershell. Nos VMs ARM, pode fazê-lo incluindo "autoUpgradeMinorVersion": verdadeiro no modelo de implantação VM. Além disso, qualquer nova instalação da extensão deve ter a opção de atualização de versão auto menor ligada.
Ativar a extensão
Pode ativar esta extensão utilizando os scripts portal do Azure, Azure PowerShell ou Azure CLI.
Para visualizar e configurar os dados do sistema e do desempenho diretamente do portal do Azure, siga estes passos no blog Azure.
Este artigo centra-se em como ativar e configurar a extensão utilizando comandos Azure CLI. Isto permite-lhe ler e ver os dados diretamente da tabela de armazenamento.
Note que os métodos de configuração que são descritos aqui não funcionarão para o portal do Azure. Para visualizar e configurar os dados do sistema e do desempenho diretamente do portal do Azure, a extensão deve ser ativada através do portal.
Pré-requisitos
Azure Linux Agente versão 2.0.6 ou posterior.
Note que a maioria das imagens da galeria Azure VM Linux incluem a versão 2.0.6 ou posterior. Pode executar a versão WAAgent para confirmar que versão está instalada no VM. Se o VM estiver a executar uma versão anterior a 2.0.6, pode seguir instruções no GitHub para a atualizar.
CLI do Azure. Siga esta orientação para instalar o CLI para configurar o ambiente Azure CLI na sua máquina. Depois de instalar o Azure CLI, pode utilizar o comando azul a partir da sua interface de linha de comando (Bash, Terminal ou comando) para aceder aos comandos Azure CLI. Por exemplo:
- Executar conjunto de extensão azure vm -- ajuda para informações detalhadas de ajuda.
- Faça login azul para iniciar sessão no Azure.
- Faça a lista de vm azul para listar todas as máquinas virtuais que tem no Azure.
Uma conta de armazenamento para armazenar os dados. Você precisará de um nome de conta de armazenamento que foi criado anteriormente e uma chave de acesso para carregar os dados para o seu armazenamento.
Utilize o comando Azure CLI para ativar a extensão de diagnóstico Linux
Cenário 1. Ativar a extensão com o conjunto de dados predefinidos
Na versão 2.3 ou posterior, os dados predefinidos que serão recolhidos incluem:
- Todas as informações do Rsyslog (incluindo registos de sistema, segurança e aplicação).
- Um conjunto central de dados do sistema de base. Note que o conjunto completo de dados é descrito no site System Center Cross Platform Solutions. Se pretender ativar dados adicionais, continue com os passos nos Cenários 2 e 3.
Passo 1. Criar um ficheiro chamado PrivateConfig.json com o seguinte conteúdo:
{
"storageAccountName" : "the storage account to receive data",
"storageAccountKey" : "the key of the account"
}
Passo 2. Executar conjunto de extensão de vm azul vm_name LinuxDiagnostic Microsoft.OSTCExtensions 2.* --private-config-path PrivateConfig.json.
Cenário 2. Personalize as métricas do monitor de desempenho
Esta secção descreve como personalizar a tabela de dados de desempenho e diagnóstico.
Passo 1. Crie um ficheiro chamado PrivateConfig.json com o conteúdo descrito no Cenário 1. Também crie um ficheiro chamado PublicConfig.json. Especifique os dados específicos que pretende recolher.
Para todos os fornecedores e variáveis suportados, consulte o site System Center Cross Platform Solutions. Você pode ter várias consultas e armazená-las em várias tabelas, anexando mais consultas ao script.
Por padrão, os dados do Rsyslog são sempre recolhidos.
{
"perfCfg":
[
{
"query" : "SELECT PercentAvailableMemory, AvailableMemory, UsedMemory ,PercentUsedSwap FROM SCX_MemoryStatisticalInformation",
"table" : "LinuxMemory"
}
]
}
Passo 2. Executar conjunto de extensão de vm vm_name LinuxDiagnostic Microsoft.OSTCExtensions '2.*' --private-config-path PrivateConfig.json --public-config-path PublicConfig.json.
Cenário 3. Faça upload dos seus próprios ficheiros de registo
Esta secção descreve como recolher e carregar ficheiros de registo específicos para a sua conta de armazenamento. Tem de especificar tanto o caminho para o seu ficheiro de registo como o nome da tabela onde pretende guardar o seu registo. Pode criar vários ficheiros de registo adicionando várias entradas de ficheiro/tabela no script.
Passo 1. Crie um ficheiro chamado PrivateConfig.json com o conteúdo descrito no Cenário 1. Em seguida, crie outro ficheiro chamado PublicConfig.json com o seguinte conteúdo:
{
"fileCfg" :
[
{
"file" : "/var/log/mysql.err",
"table" : "mysqlerr"
}
]
}
Passo 2. Execute azure vm extension set vm_name LinuxDiagnostic Microsoft.OSTCExtensions '2.*' --private-config-path PrivateConfig.json --public-config-path PublicConfig.json
.
Note que com esta definição nas versões de extensão antes do 2.3, todos os registos escritos /var/log/mysql.err
podem ser duplicados para /var/log/syslog
(ou /var/log/messages
dependendo do distro Linux) também. Se quiser evitar esta extração duplicada, pode excluir a registo de registos de local6
instalações na sua configuração de rsyslog. Depende do distro Linux, mas num sistema Ubuntu 14.04, o ficheiro para modificar é /etc/rsyslog.d/50-default.conf
e pode substituir a linha *.*;auth,authpriv.none -/var/log/syslog
para *.*;auth,authpriv,local6.none -/var/log/syslog
. Esta questão é corrigida na mais recente versão hotfix de 2.3 (2.3.9007), pelo que se tiver a versão de extensão 2.3, esta questão não deverá acontecer. Se ainda o fizer mesmo depois de reiniciar o seu VM, contacte-nos e ajude-nos a resolver os problemas por que a versão mais recente do hotfix não é instalada automaticamente.
Cenário 4. Impedir a extensão de recolher quaisquer registos
Esta secção descreve como impedir a extensão de recolher registos. Note que o processo do agente de monitorização ainda estará em funcionamento mesmo com esta reconfiguração. Se quiser parar completamente o processo do agente de monitorização, pode fazê-lo desativando a extensão. O comando para desativar a extensão é azure vm extension set --disable <vm_name> LinuxDiagnostic Microsoft.OSTCExtensions '2.*'
.
Passo 1. Crie um ficheiro chamado PrivateConfig.json com o conteúdo descrito no Cenário 1. Criar outro ficheiro chamado PublicConfig.json com o seguinte conteúdo:
{
"perfCfg" : [],
"enableSyslog" : "false"
}
Passo 2. Executar conjunto de extensão de vm vm_name LinuxDiagnostic Microsoft.OSTCExtensions '2.*' --private-config-path PrivateConfig.json --public-config-path PublicConfig.json.
Reveja os seus dados
Os dados de desempenho e diagnóstico são armazenados numa tabela de Armazenamento Azure. Reveja como usar o Armazenamento de Mesa Azure da Ruby para aprender a aceder aos dados na tabela de armazenamento utilizando scripts Azure CLI.
Além disso, pode utilizar as seguintes ferramentas de UI para aceder aos dados:
- Explorador visual do servidor do estúdio. Aceda à conta de armazenamento. Depois de o VM correr durante cerca de cinco minutos, verá as quatro tabelas padrão: "LinuxCpu", "LinuxDisk", "LinuxMemory", e "Linuxsyslog". Clique duas vezes nos nomes da tabela para ver os dados.
- Explorador de Armazenamento do Azure.
Se tiver ativado o ficheiroCfg ou perfCfg (conforme descrito nos Cenários 2 e 3), pode utilizar o Visual Studio Server Explorer e Explorador de Armazenamento do Azure para visualizar dados não predefinidos.
Problemas conhecidos
- A informação do Rsyslog e o ficheiro de registo especificado pelo cliente só podem ser acedidos através de scripts.