Partilhar via


Localizar os nomes de host dos nós de cluster

O cluster HDInsight é criado com DNS clustername.azurehdinsight.netpúblico . Quando estabelece uma conexão SSH com nós individuais ou configura uma conexão com nós do cluster dentro de uma rede virtual personalizada, precisa usar o nome do host ou os nomes de domínio totalmente qualificados (FQDN) dos nós do cluster.

Neste artigo, você aprenderá a obter os nomes de host dos nós de cluster. Você pode obtê-lo manualmente através da interface do usuário da Web do Ambari ou automaticamente através da API REST do Ambari.

Advertência

Use as seguintes abordagens recomendadas para obter os nomes de host dos nós do cluster. Os números no nome do host não são garantidos em sequência, e o HDInsight pode alterar o formato do nome do host para alinhamento com as VMs na atualização de lançamento. Não dependa de qualquer convenção de nomenclatura que exista atualmente.

Você pode obter os nomes de host por meio da interface do usuário do Ambari ou da API REST do Ambari.

Obter os nomes de host na interface Web do Ambari

Você pode usar o Ambari Web UI para obter os nomes de host quando estabelece uma ligação SSH ao nó. A vista de hosts da interface web do Ambari está disponível no cluster HDInsight em https://CLUSTERNAME.azurehdinsight.net/#/main/hosts, onde CLUSTERNAME é o nome do seu cluster.

Obter Nomes de Host na Interface do Ambari.

Obter os nomes de host da API REST do Ambari

Ao criar scripts de automação, você pode usar a API REST do Ambari para obter os nomes de host antes de fazer conexões com hosts. Os números no nome do host não são garantidos em sequência e o HDInsight pode alterar o formato do nome do host para se alinhar às VMs com a atualização de versão. Não dependa de nenhuma convenção de nomenclatura que exista hoje.

Aqui estão alguns exemplos de como recuperar o FQDN para os nós no cluster. Para obter mais informações sobre a API REST do Ambari, consulte Gerenciar clusters HDInsight usando a API REST do Apache Ambari

O exemplo a seguir usa jq ou ConvertFrom-Json para analisar o documento de resposta JSON e exibir apenas os nomes de host.

export PASSWORD=''
export CLUSTER_NAME=''
curl -u admin:$PASSWORD -sS -G "https://$CLUSTERNAME.azurehdinsight.net/api/v1/clusters/$CLUSTERNAME/hosts" \
| jq -r '.items[].Hosts.host_name'
$clusterName=''
$creds = Get-Credential -UserName "admin" -Message "Enter the HDInsight login"
$resp = Invoke-WebRequest -Uri "https://$clusterName.azurehdinsight.net/api/v1/clusters/$clusterName/hosts" `
    -Credential $creds -UseBasicParsing
$respObj = ConvertFrom-Json $resp.Content
$respObj.items.Hosts.host_name