我已经创建ARM模板来部署Azure VM和HDI群集。我想在部署完成后列出Azure虚拟机的公有IP和HDI群集头节点的专用IP。如何在输出中使用ARM模板部署Azure VM或HDI群集的IP
有没有办法使用ARM模板,怎么做呢?
我已经创建ARM模板来部署Azure VM和HDI群集。我想在部署完成后列出Azure虚拟机的公有IP和HDI群集头节点的专用IP。如何在输出中使用ARM模板部署Azure VM或HDI群集的IP
有没有办法使用ARM模板,怎么做呢?
有没有办法使用ARM模板,怎么做呢?
根据我的知识,您无法通过template获取VM IP。您可以使用azure cli
来获取您的VM IP而不是模板。如果您在Linux上使用cli,则可以在创建虚拟机后使用以下命令。
azure vm show -g shui123 -n shui|grep "Public IP address"| awk -F: '{print $3}'
我想和部署完成后列出HDI的天青VM的公共IP和私有IP 集群headnode。
Azure的VM的公网IP,你是什么意思? HDI集群中只有VM还是虚拟机?
如果它只是一个虚拟机,你可以使用上面的命令,如果它是在虚拟机集群HDI,Azure的HDInsight群集将不会允许任何公开的IP被分配给它。如果您需要将IP分配给HDInsight群集,则必须在VNET中创建HDInsight。下面的文章确实谈到了this。
你可以得到与Ambari RE ST AP一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 I的更多信息请参阅此link。
更新:
如果你只想列出活动节点的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}'
您可以使用grep“^ hn”列出头节点私有IP –
我可以使用第一个命令获取VM IP。我在哪里必须使用grep“hn”来头节点私有IP? – karan
您可以修改脚本'echo“$ HOSTNAME <--> $ IP”> test.txt''cat test.txt | grep“^ hn”' –