我计划在openstack环境中创建一个休眠/唤醒未使用的计算节点的服务,因为我需要计算节点的ip地址。是否有任何API或命令可用于获取openstack网络中存在的IP地址(而不是计算节点的名称)计算机?
发布于 2013-08-02 17:35:52
OpenStack云环境设置中使用了两种类型的IP地址。
只能从虚拟机之间的openstack网络进行访问。
可以从OpenStack云网络外部访问,基本上在不同的接口上工作,通常此IP可供公众从外部网络访问此虚拟机。
现在,您知道了这一点,请遵循这里给出的API。http://api.openstack.org/api-ref.html#ext-os-ext-ips
在通过JSON响应获取IP地址时,首先要检查它是固定的还是浮动的。
我希望这能回答你的问题。如果没有,请通知我。
发布于 2016-10-26 21:05:12
您可以查询nova数据库并获取compute_node表中所有计算节点的ip。我用python写了一个小函数来完成我的一个测试。
def get_compute_nodes(parameters):
try:
password = parameters['password']
db=_mysql.connect(user="root",passwd=password, db="nova")
query = """select host_ip from compute_nodes where deleted=0"""
db.query(query)
r=db.use_result()
results = r.fetch_row(maxrows=0)
return results
except Exception as exp:
print "Error in accessing the Nova database"
print exphttps://stackoverflow.com/questions/18010889
复制相似问题