Partilhar via


Solucionar problemas de implantações de nós do Azure com o Microsoft HPC Pack

Este tópico contém informações para ajudar você ou o Suporte da Microsoft a solucionar problemas de implantações de nós do Azure com o HPC Pack.

Para obter requisitos gerais e práticas recomendadas para implantar nós do Azure com o HPC Pack, consulte o seguinte:

Diretrizes gerais de solução de problemas de implantação

  • Se houver um problema com sua conexão com a Internet ou com as informações de assinatura do Azure fornecidas no modelo de nó, a implantação do nó do Azure poderá falhar. Você pode validar as configurações de conexão do Azure no modelo de nó. Abra o modelo emdo Editor de Modelo de Nó do . Em seguida, na guia informações de conexão , clique em Validar informações de conexão.

  • Se houver um problema com a configuração do certificado de gerenciamento do Azure, consulte Solucionar problemas de certificado.

  • Se você estiver executando pelo menos o HPC Pack 2008 R2 com SP2, poderá executar o teste de diagnóstico de portas de firewall do Azure e o teste de diagnóstico de Conexão dos Serviços do Azure para ajudar a verificar se o firewall de rede e outras configurações estão configurados corretamente para comunicação entre o HPC Pack e o Azure ou para solucionar problemas de conectividade.

  • Se o tempo do sistema não estiver definido com precisão no computador de nó principal (ou computadores de nó principal), determinadas operações do Azure, como criação de modelo de nó ou implantação de novos nós, poderão falhar com um erro semelhante ao seguinte:

    Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.  
    
  • Se você tiver falhas parciais na implantação, em que os nós do Azure não estiverem online, você poderá tentar executar o seguinte comando telnet para ver se o serviço de nuvem especificado no modelo de nó pode ser acessado no ponto de extremidade do Azure:

    telnet <ServiceName>.cloudapp.net 7999  
    

    Nota

    Para executar esse comando, o recurso Cliente Telnet deve ser instalado no sistema operacional. Para obter informações sobre como instalar o Cliente Telnet usando o Gerenciador de Servidores, consulte o guia de operações do Telnet.

  • Um problema no Azure pode afetar um subconjunto dos nós do Azure que estão em um conjunto. Por exemplo, se você estiver iniciando um grande número de nós, é possível que a implantação falhe em um ou mais nós. Nesse caso, você verá as informações de status apropriadas para os nós com falha em de Gerenciamento de Recursos (chamado de Gerenciamento de Nós em algumas versões do HPC Pack).

  • As informações de status da implantação são exibidas nas informações da conta de serviço no portal. O Gerenciador de Cluster de HPC consulta regularmente este portal para obter informações de status atualizadas. No entanto, as informações no portal podem ser diferentes dos logs de provisionamento ou do log de operações no Gerenciador de Cluster do HPC.

  • Se ocorrer um erro de implantação no Azure, uma mensagem de erro e informações de solução de problemas poderão aparecer nas informações do serviço de nuvem no portal ou no log de provisionamento no HPC Cluster Manager. Se você não puder resolver o problema, poderá examinar os logs de rastreamento gerados nas instâncias de função na implantação. Para obter mais informações, consulte Arquivos de log de rastreamento nos nós do Azure neste tópico.

    Você também pode visitar de Suporte do Azure. Para ajudar na solução de problemas, esteja preparado para fornecer a ID da assinatura configurada no modelo de nó e a ID de implantação que aparece no log de provisionamento no Gerenciador de Cluster do HPC e no portal.

  • Depois de provisionar um conjunto de nós no Azure, você poderá iniciar um conjunto adicional de nós usando o mesmo modelo de nó. No entanto, em alguns casos, os nós adicionais não entram online no Gerenciador de Cluster de HPC, mas parecem ter sido implantados com êxito no Azure. Se isso ocorrer, talvez não seja possível usar o Gerenciador de Cluster de HPC para interromper ou excluir os nós com falha. Se necessário, primeiro pare e reinicie o Serviço de Gerenciamento de HPC. Em seguida, para excluir os nós, use o Portal de Gerenciamento do Azure.

  • A partir do HPC Pack 2012 com SP1, para ajudar a solucionar problemas de implantações de nós do Azure, você pode optar por coletar no nó principal e enviar aos dados da Microsoft sobre a disponibilidade, conectividade e desempenho dos nós do Azure. Você poderá optar por fazer isso se precisar abrir um incidente de suporte relacionado a uma implantação de nó do Azure. Para habilitar a coleta de dados, no Gerenciador de Cluster de HPC, no menu opções de , clique em de Coleta de Dados de Suporte do Azure. Como alternativa, configure a propriedade de cluster AzureMetricsCollectionEnabled usando o cmdlet Set-HpcClusterProperty HPC PowerShell. Para obter mais informações sobre a coleta de dados, consulte o Microsoft HPC Pack Privacy Statement.

Rastrear arquivos de log em nós do Azure

A partir do HPC Pack 2008 R2 com SP4, os arquivos de log de rastreamento são gerados automaticamente em nós de trabalho do Azure e nos nós de proxy do HPC do Azure que são provisionados automaticamente para cada implantação. Os arquivos de log podem ajudar você ou o Suporte da Microsoft a solucionar problemas durante ou após o provisionamento de nó – por exemplo, condições que podem fazer com que um nó do Azure mostre um estado de integridade de inacessível ou Erro, mesmo que o portal possa indicar um status de Ready.

Os arquivos de log de rastreamento contêm os seguintes tipos de informações sobre cada nó:

  • Informações de inicialização para o sistema operacional.

  • Informações sobre os serviços do HPC Pack que devem ser executados no nó.

  • Informações sobre o arquivo Hosts.

  • Dados do contador de desempenho do sistema operacional.

Os arquivos de log são gravados no armazenamento local em cada nó, conforme mostrado na tabela a seguir. Os formatos, as características e a nomenclatura dos arquivos de log de rastreamento dependem da versão do HPC Pack.

Importante

Os arquivos de log são mantidos apenas no armazenamento local nas instâncias de função do Azure enquanto os nós permanecem provisionados no Azure. A menos que os arquivos ou dados sejam copiados para outro local, você não poderá examinar as informações do log de rastreamento depois que os nós do Azure forem interrompidos ou excluídos. Para obter mais informações, consulte Cenários para armazenar dados de log de rastreamento neste tópico.

Versão do HPC Pack Arquivos de log Anotações
HPC Pack 2012 ou posterior - nós de trabalho C:\logs\hpcworker_nnnnnn.bin
- nós proxy C:\logs\hpcproxy_nnnnnn.bin
- Os arquivos de log estão em formato binário. O nível de log padrão é Detalhado.
- Cada arquivo de log tem um máximo de 4 MB de tamanho por padrão, e um máximo de 5.000 MB de arquivos de log pode ser armazenado em cada nó.
– Para facilitar a análise, os arquivos de log podem ser convertidos em arquivos de texto separados por tabulação executando o subcomando de do hpctrace ferramenta de linha instalada com o HPC Pack. Para obter mais informações sobre como usar esse comando, consulte hpctrace.
HPC Pack 2008 R2 com SP4 - nós de trabalho C:\logs\hpcworker.log
- nós proxy C:\logs\hpcproxy.log
- Os arquivos de log estão em formato de texto. O nível de log padrão é Aviso ou superior.
- Até cinco arquivos de log de estouro numerados com extensão .00<inteiro> são gravados em cada nó.
– Os arquivos de log em cada nó são limitados a 60 MB e, em seguida, são circulados automaticamente.

Nota

Você pode usar as configurações Definir para o serviço de nuvem no portal clássico para alterar o nível de rastreamento para processos específicos nos nós do Azure (como Microsoft.Hpc.Azure.AzureNodeManagerTracing).

Cenários para armazenar dados de log de rastreamento

Os arquivos de log de rastreamento gerados nas instâncias de função do Azure permanecem no armazenamento local nas instâncias de função, desde que as instâncias de função estejam em execução. No entanto, se você quiser acessar os dados depois que uma implantação do Azure for interrompida ou os nós forem excluídos, será necessário baixar ou armazenar os arquivos de log de rastreamento ou os dados no armazenamento persistente, como o armazenamento do Azure, enquanto as instâncias de função estiverem em execução. Veja a seguir cenários para armazenar arquivos de log de rastreamento ou dados.

Cenário 1: habilitar a transferência automática de arquivos de log de rastreamento para o armazenamento de blobs do Azure

A partir do HPC Pack 2012 com SP1, o administrador do cluster HPC pode opcionalmente habilitar a transferência automática de arquivos de log de rastreamento dos nós de computação ou proxy do Azure em uma implantação para um contêiner no armazenamento de blobs (hpclogs) na conta de armazenamento do Azure para a implantação.

Para habilitar a transferência automática de arquivos de log de rastreamento para o armazenamento de blobs na conta de armazenamento do Azure, no Gerenciador de Cluster do HPC, no menu opções de , clique em de Configuração de Implantação do Azure. Você também pode definir a propriedade de cluster AzureLogstoBlob HPC usando o cmdlet Set-HpcClusterProperty HPC PowerShell. Você pode optar por transferir logs para nós proxy, nós de trabalho ou ambos. Por padrão, a transferência do armazenamento de blobs de arquivos de log está desabilitada. Alterar a propriedade AzureLogstoBlob afeta apenas a transferência de arquivos de log para futuras implantações de nó do Azure. As implantações atuais não são afetadas. Para obter mais informações, consulte Set-HpcClusterProperty.

Importante

Salvar arquivos de log de implantação do Azure no armazenamento de blobs usa espaço de armazenamento e gera transações de armazenamento na conta de armazenamento associada a cada implantação. Se habilitado, salvar arquivos de log de nós de trabalho pode afetar o desempenho de todas as implantações do Azure que usam a mesma conta de armazenamento, especialmente se você tiver implantações grandes ou várias implantações simultâneas. O espaço de armazenamento e as transações de armazenamento serão cobrados em sua conta. Depois de desabilitar a transferência de arquivos de log, os arquivos de log não serão removidos automaticamente do armazenamento do Azure. Talvez você queira manter os arquivos de log para referência futura baixando-os. Os arquivos de log podem ser limpos removendo o contêiner hpclogs da sua conta de armazenamento.

Você pode executar o comando hpcazurelog nos nós principais para baixar dados do armazenamento de blobs na conta de armazenamento para uma pasta local e excluir os arquivos do armazenamento de blobs. Para obter mais informações, consulte hpcazurelog.

Cenário 2: habilitar a transferência automática de dados de log de rastreamento para o armazenamento de tabelas do Azure

A partir do HPC Pack 2012, o administrador do cluster HPC pode opcionalmente habilitar a transferência de dados de log de rastreamento dos nós do Azure em uma implantação para uma tabela de diagnóstico do Azure (WADSLogsTable) criada para essa finalidade na conta de armazenamento do Azure para a implantação.

Para habilitar a transferência de dados de log de rastreamento para a tabela WADSLogsTable na conta de armazenamento do Azure, defina o propriedade de cluster HPC AzureLoggingEnabled para verdadeiro usando o cmdlet Set-HpcClusterProperty HPC PowerShell. Por padrão, somente os eventos Crítico, Erro e Aviso nos arquivos de log são filtrados para inclusão na tabela WADSLogstable. Alterar a propriedade AzureLoggingEnabled afeta apenas o registro em log para futuras implantações de nó do Azure. As implantações atuais não são afetadas. Para obter mais informações, consulte Set-HpcClusterProperty.

Importante

  • O registro em log de atividades de implantação do Azure usa espaço de armazenamento de tabela e gera transações de armazenamento na conta de armazenamento associada a cada implantação. O espaço de armazenamento e as transações de armazenamento incorrerão em encargos de acordo com os termos da assinatura do Azure.
  • O registro em log no armazenamento do Azure geralmente só deve ser habilitado quando ocorrem problemas com a implantação e para ajudar na solução de problemas com a implantação. Depois de desabilitar o registro em log no armazenamento do Azure, os dados de log não serão removidos automaticamente do armazenamento do Azure. Talvez você queira manter os logs para referência futura baixando-os. As entradas de log podem ser limpas removendo o WADLogsTable da sua conta de armazenamento

A partir do HPC Pack 2012 com SP1, você pode executar o comando hpcazurelog no nó principal para baixar dados do WADLogsTable na conta de armazenamento para uma pasta local e especificar o nível de rastreamento dos dados selecionados para armazenamento na tabela. Para obter mais informações, consulte hpcazurelog.

Cenário 3: recuperar e armazenar manualmente arquivos de log de nós do Azure

Para facilitar a análise adicional, você pode baixar manualmente arquivos de log de nós do Azure para um computador local ou carregá-los em uma conta de armazenamento do Azure.

Baixar arquivos de log

Para baixar os arquivos de log, você pode usar um dos seguintes procedimentos:

  • Execute o comando hpcfile get para baixar arquivos de log de cada nó individualmente.

  • Execute um script que usa hpcfile obter para baixar arquivos de grupos de nós de trabalho.

  • Use o Portal de Gerenciamento do Azure para se conectar remotamente a cada nó individualmente. Em seguida, você pode copiar o arquivo de log ou arquivos para um computador local.

  • Execute o comando hpcazurelog no nó principal para baixar arquivos de nós de trabalho ou nós proxy do Azure. Esse comando foi introduzido no HPC Pack 2012 com SP1 e não tem suporte em versões anteriores. Para obter mais informações, consulte hpcazurelog.

Nota

  • Para fazer uma conexão remota com um nó do Azure, verifique se você configura as credenciais da Área de Trabalho Remota no modelo de nó do Azure.
  • Para baixar os arquivos de log de nós de proxy HPC, você deve fazer uma conexão remota com cada nó e copiar arquivos de log individualmente para um computador local.

Veja a seguir comandos e scripts de exemplo que usam hpcfile get para baixar os arquivos de log de nós de trabalho do Azure. Para obter mais informações sobre a sintaxe de comando, consulte hpcfile.

Exemplo 1. Para baixar os arquivos de log de rastreamento, incluindo possíveis arquivos de estouro, do nó do Azure AZURECN-001 em um cluster com um HPC Pack 2008 R2 com nó de cabeçalho SP4 chamado myHeadNode para a pasta atual no computador local, renomeando os arquivos para evitar substituir arquivos no computador local:

hpcfile get /scheduler:myHeadNode /targetnode:AZURECN-001 /file:"C:\logs\hpcworker.log" /destfile:"worker001.log"  
hpcfile get /scheduler:myHeadNode /targetnode:AZURECN-001 /file:"C:\logs\hpcworker.log.001" /destfile:"worker002.log"  
hpcfile get /scheduler:myHeadNode /targetnode:AZURECN-001 /file:"C:\logs\hpcworker.log.002" /destfile:"worker003.log"  
hpcfile get /scheduler:myHeadNode /targetnode:AZURECN-001 /file:"C:\logs\hpcworker.log.003" /destfile:"worker004.log"  
hpcfile get /scheduler:myHeadNode /targetnode:AZURECN-001 /file:"C:\logs\hpcworker.log.004" /destfile:"worker005.log"  
hpcfile get /scheduler:myHeadNode /targetnode:AZURECN-001 /file:"C:\logs\hpcworker.log.005" /destfile:"worker006.log"  

Exemplo 2. Para baixar os arquivos de log hpcworker_000000.bin dos nós do Azure no grupo de nós WorkerNodes com nomes começando do AZURECN em um cluster com um nó de cabeçalho do HPC Pack 2012 chamado myHeadNode para a pasta C:\myFiles\myLogs no computador local:

@echo off  
set "extension=.bin"  
set "fullfilepath=C:\myFiles\myLogs"  
mkdir C:\myFiles\myLogs  
FOR /F "tokens=1 delims="%%G IN ('node list /group:WorkerNodes ^| FIND "AZURECN-"') DO hpcfile get /scheduler:MyHeadNode /targetnode:%%G -file:"C:\logs\hpcworker_000000.bin" /destfile:"%fullfilepath%%%G%%%extension%"  

Carregar arquivos de log na conta de armazenamento do Azure

Você pode usar um dos seguintes procedimentos para carregar os arquivos de log de rastreamento de nós de trabalho do Azure para uma conta de armazenamento do Azure:

  1. Baixe um ou mais arquivos de log em um computador local, conforme descrito na seção anterior, e carregue-os em uma conta de armazenamento do Azure executando o comando hpcpack upload.

  2. Execute um script em um ou mais nós do Azure que usa de upload do hpcpack para carregar os arquivos de log diretamente na conta de armazenamento.

    Nota

    • Para executar um script em um grupo de nós do Azure, primeiro você pode carregar o script de um computador local para os nós.
    • Conforme descrito no Cenário 1: habilitar a transferência automática de arquivos de log de rastreamento para o armazenamento de blobs do Azure, começando com o HPC Pack 2012 com SP1, você pode habilitar a transferência automática de arquivos de log de rastreamento para o armazenamento de blobs na conta de armazenamento do Azure. No entanto, se você não estiver usando uma versão do HPC Pack que dê suporte a essa funcionalidade ou não tiver habilitado a transferência automática de arquivos de log para o armazenamento de blobs, poderá carregá-los manualmente nesse local.

Veja a seguir scripts de exemplo que usam hpcpack upload para carregar os arquivos de log de nós de trabalho do Azure para a conta de armazenamento do Azure. Para obter mais informações sobre a sintaxe de comando, consulte hpcpack.

Nota

Como os arquivos de log em nós de trabalho são nomeados de forma idêntica, você deve evitar substituir arquivos ao carregá-los na conta de armazenamento do Azure. Por exemplo, você pode renomear os arquivos de log com nomes que incluem o nome do host do nó, conforme mostrado nos exemplos a seguir.

Exemplo 3. Para carregar e renomear os arquivos de hpcworker_000000.bin de nós de trabalho do Azure para o contêiner MyLogs na conta de armazenamento do Azure chamada MyStorageAccount com uma chave primária chamada MyPrimaryKey

@echo off  
REM Get the host name of the Azure node  
FOR /F "usebackq" %%i IN ('e:\approot\mpiexec.exe -c 1 hostname') DO SET filename=%%i  
set "extension=.bin"  
set "fullpath=C:\logs"  
REM Consolidate the log file name (e.g., AzureCN-001.bin)  
set "fullfilePath=%fullpath%%filename%%extension%"  
REM echo:%fullfilePath%  
REM Create a temporary file with desired name  
copy C:\logs\hpcworker_000000.bin %fullfilePath%  
e:\approot\hpcpack upload %fullfilePath% /account:MyStorageAccount /container:MyLogs /key:MyPrimaryKey  
del %fullfilePath%  

Exemplo 4. Para carregar um script Uploader.bat (semelhante ao script no Exemplo 3) do nó principal para um contêiner chamado MyContainer em uma conta de armazenamento do Azure chamada MyStorageAccount, baixe o script para nós do Azure no grupo de nós chamado WorkerNodes e execute Uploader.bat nos nós no WorkerNodes:

hpcpack upload uploader.bat /account:MyStorageAccount /container:MyLogs /key:MyPrimaryKey  
clusrun /nodegroup:WorkerNodes hpcpack download uploader.bat /account:MyStorageAccount /container:MyLogs /key:MyPrimaryKey /path:c:\logs  
clusrun /nodegroup:WorkerNodes c:\logs\uploader.bat  
clusrun /nodegroup:WorkerNodes del c:\logs\uploader.bat  

Exibir dados de log em uma conta de armazenamento do Azure

Para exibir logs que estão no armazenamento de blobs ou tabela do Azure, você pode procurar o armazenamento usando uma ferramenta como o Gerenciador de Armazenamento do Azure.

Consulte Também

intermitência para instâncias de trabalho do Azure com o Microsoft HPC Pack
hpcazurelog