【问题标题】:How to get number of worker, cores, ram from HDI cluster如何从 HDI 集群中获取工作线程、内核、内存的数量
【发布时间】:2017-04-06 12:46:19
【问题描述】:

这是我的场景。我正在创建 HDI 集群并使用 ARM 模板安装我的自定义应用程序。

我需要使用 Shell 脚本为我的应用程序配置以下值。使用 ARM 模板中的 CustomScript 选项安装我的应用程序。

工作节点数

每个工作节点的核心数

每个工作节点的 RAM

每个头节点的 RAM

每个工作节点的核心数

【问题讨论】:

标签: linux shell azure azure-hdinsight arm-template


【解决方案1】:

您可以使用Ambari REST API 来获取工作节点的数量。

PASSWORD=<>
CLUSTERNAME=<>
#Worker nodes
  curl -u admin:$PASSWORD -sS -G "https://$CLUSTERNAME.azurehdinsight.net/api/v1/clusters/$CLUSTERNAME/services/HDFS/components/DATANODE">worker.txt
cat worker.txt |grep total_count|awk -F: '{print $2}'|sed 's/\,//g'

每个工作节点的 RAM

您是指 VM 的最大 RAM 吗?如果是,每个工作节点 VM 都应该具有相同的 RAM。 VM 的 RAM 和内核取决于 VM 的大小。更多信息请参考link。如果你想用脚本来实现它。我建议你可以写一个配置文件,比如

Standard_DS1_v2 1   3.5

Standard_DS2_v2 2   7

你可以通过使用 awk 来获取 core 和 MEM,这很容易。这就是一个例子。

mem=`cat configure.txt|grep "Standard_DS1_v2"|awk '{print $3}`

【讨论】:

  • @karan 我测试使用 API,我没有在其中找到全部 MEM 和 CPU 内核。你也可以测试一下。
  • 是否有一个选项可以通过使用任何位于 HDI 集群中的配置文件来获取工作节点的 RAM 和 CPU 内核,例如 yarn-site.xml、hdfs-site.xml、core-site.xml
  • 我没有找到它们。你可以试着搜索一下。如果你找不到他们。您可以创建一个配置文件。
猜你喜欢
  • 1970-01-01
  • 2012-09-11
  • 2012-10-12
  • 1970-01-01
  • 2015-04-23
  • 2011-04-15
  • 1970-01-01
  • 2015-09-15
  • 2014-05-05
相关资源
最近更新 更多