如何以编程方式获取BIGSQL_HEAD的主机名?

时间:2016-07-20 20:04:02

标签: ibm-cloud biginsights

我需要以编程方式从脚本中检索Cloud企业集群上BigInsihgts的BIGSQL_HEAD主机名,以便我可以自动连接到该主机。

BIGSQL_HEAD主机名在Ambari中 - 如何使用“标准”unix工具检索此信息?

1 个答案:

答案 0 :(得分:0)

BI_HOST=your_biginsights_mastermanager_hostname
BI_USER=your_biginsights_username
BI_PASS=your_biginsights_password

BASE_URL=https://${BI_HOST}:9443

CLUSTER_NAME=$(curl -k -s -u ${BI_USER}:${BI_PASS} -H 'X-Requested-By:ambari' \
  ${BASE_URL}/api/v1/clusters |  python -c \
  'import json,sys;print json.load(sys.stdin)["items"][0]["Clusters"]["cluster_name"]')

BIGSQL_HOST=$(curl -k -s -u ${BI_USER}:${BI_PASS} -H 'X-Requested-By:ambari' \
   ${BASE_URL}/api/v1/clusters/${CLUSTER_NAME}/services/BIGSQL/components/BIGSQL_HEAD | \
   python -c \
   'import json,sys;print json.load(sys.stdin)["host_components"][0]["HostRoles"]["host_name"]')

echo ${BIGSQL_HOST}

这些命令可以在BigInsight群集或客户端计算机上运行。

感谢Pierre Regazzoni的ambari代码。