簡體   English   中英

如何在輸出中使用 ARM 模板在部署后列出 Azure VM 或 HDI 集群的 IP

[英]How to list IP of Azure VM or HDI cluster after deployment using ARM template in the output

我創建了 ARM 模板來部署 Azure VM 和 HDI 集群。 我想在部署完成后獲取並列出 Azure VM 的公共 IP 和 HDI 集群頭節點的私有 IP。

有沒有辦法使用ARM模板來獲取它?

有沒有辦法使用ARM模板來獲取它?

根據我的知識,您無法使用模板獲取 VM IP。您可以使用azure cli來獲取 VM IP 而不是模板。 如果您在 Linux 上使用 cli,則可以在創建 VM 后使用以下命令。

azure vm show -g shui123 -n shui|grep "Public IP address"| awk -F: '{print $3}'

我想在部署完成后獲取並列出 Azure VM 的公共 IP 和 HDI 集群頭節點的私有 IP。

Azure VM 的公共 IP 是什么意思? HDI 集群中只是虛擬機還是虛擬機?

如果只是一個VM,可以使用上面的命令,如果它是HDI集群中的VM,Azure HDInsight集群將不允許為其分配任何公共IP。 如果需要將 IP 分配給 HDInsight 群集,則必須在 VNET 中創建 HDInsight。 下面的文章確實談到了這一點

您可以使用 Ambari REST API 獲得 HDI 集群 IP。

for HOSTNAME in $(curl -u admin:$PASSWORD -sS -G "https://shuitest.azurehdinsight.net/api/v1/clusters/shuitest/hosts" | jq -r '.items[].Hosts.host_name')
do
    IP=$(curl -u admin:$PASSWORD -sS -G "https://$CLUSTERNAME.azurehdinsight.net/api/v1/clusters/$CLUSTERNAME/hosts/$HOSTNAME" | jq -r '.Hosts.ip')
  echo "$HOSTNAME <--> $IP"
done

有關 Ambari RE ST AP 的更多信息,請參閱此鏈接

更新:

如果只想列出活動節點IP,可以使用以下命令。

PASSWORD=
CLUSTERNAME=

curl -u admin:$PASSWORD -sS -G "https://$CLUSTERNAME.azurehdinsight.net/api/v1/clusters/$CLUSTERNAME/services/HDFS/components/NAMENODE" |grep LiveNode>test.txt

cat test.txt |awk -F'\' '{print $2}'|sed 's/\"//g'|tail -1|awk -F: '{print $1}'

上述解決方案對於提出的問題很好。 但是,理想情況下,您不應使用 HDI 集群頭節點的私有 IP。 這是因為如果頭節點(運行它的虛擬機)出現故障,私有 IP 會發生變化。 頭節點有一個 FQDN(完全限定域名)的概念,比如: hn0-van.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.nethn1-van.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net . 在任何地方使用這些 FQDN 代替 IP 地址。 它們的 DNS 解析由 Azure vnet 默認 DNS 解析器自動處理。 所以不用擔心。

獲取 FQDN: az network nic list --resource-group <RESOURCEGROUP>

將 替換為您的資源組名稱。 檢查頭節點的 FQDN 設置。

一旦我有時間,我也會發布 PowerShell 腳本以直接獲取頭節點的確切 FQDN。

參考: https : //docs.microsoft.com/en-us/azure/hdinsight/hdinsight-plan-virtual-network-deployment#multinet

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM