如何查找托管Bluemix或Cloud Foundry上部署的应用程序的虚拟机/容器的IP地址

时间:2016-10-27 23:16:37

标签: ibm-cloud cloudfoundry

部署后,需要查找托管Cloud Foundry应用程序的主机[虚拟机]的IP地址。

有没有找到IP地址?请告诉我。

需要IP地址来调试从IBM Bluemix平台上托管的应用程序到Compose数据库的数据库连接的连接超时问题。

2 个答案:

答案 0 :(得分:9)

可以使用下面给出的Cloud Foundry CLI命令找到IP地址。

CF_TRACE=true cf app <APP_NAME>

您获得的申请详情将包含以下信息: -

{"0":{"state":"RUNNING","stats":{"name":"xxxxxx","uris":["xxxxx.ng.bluemix.net"],"host":"198.23.123.244","port":62461,"xxxxx":484527,"mem_quota":1073741824,"disk_quota":1073741824,"fds_quota":16384,"usage":{"time":"2016-10-27 06:09:24 +0000","cpu":0.34868865754162753,"mem":951832576,"disk":255479808}}}}

&#34;主持人&#34; value是托管客户应用程序的IP。

但请注意,如果您将应用程序或应用程序实例重新移动到其他主机,知识产权将会改变

例如:

CF_TRACE=true cf app mustanshop

命令结果包含以下文本

{"0":{"state":"RUNNING","stats":{"name":"mustanshop","uris":["mustanshop.mybluemix.net","erterte.testmmmm.com"],"host":"23.246.199.124","port":64220,"uptime":123233,"mem_quota":268435456,"disk_quota":1073741824,"fds_quota":16384,"usage":{"time":"2016-10-27 11:43:41 +0000","cpu":0.002698186246587801,"mem":183988224,"disk":210558976}}}}

应用程序的主机IP mustanshop.mybluemix.net = 23.246.199.124

另请注意,此IP是内部IP分配给托管应用程序的虚拟机,并且无法从外部访问。因此,本IP不能用于获取应用程序或用于任何类型的路由配置到应用程序。

答案 1 :(得分:0)

一种脚本化方法可以使用CF API路由:

/ v2 / apps?q =名称:

/ v2 / apps /:guid / stats

从第一条路线获取元数据。然后从第二个路由获取主机属性,即IP地址。

export APP_NAME=<your-app-name>
export APP_URL=$(cf curl /v2/apps?q=name:$APP_NAME | grep \"url\" | awk '{ print $2 }' | cut -c2-46)
export APP_HOST=$(cf curl $APP_URL/stats | grep host | awk '{ print $2}' | cut -c 2-)
echo ${APP_HOST/%??/}