【发布时间】:2018-02-08 18:25:31
【问题描述】:
使用 nova 版本“2”调用设置和功能 nova 客户端没有 floating_ips 属性。
from novaclient import client as NovaClient
class FloatingIpProvisioner():
def __init__(self, os_session):
self.nova = NovaClient.Client(version="2", session=os_session)
def AddFloatingIpToInstance(self, instance):
self.nova.floating_ip_pools
floating_ip = self.nova.floating_ips.create()
instance = self.nova.servers.find(name="test")
instance.add_floating_ip(floating_ip)
return floating_ip
instance = NovaClient.Client(version="2", session=session).servers.find(name="ansiblemaster")
floatingIp = FloatingIpProvisioner(session).AddFloatingIpToInstance(instance)
调用上述文件时出现错误:
File "provision.py", line 68, in AddFloatingIpToInstance
floating_ip = self.nova.floating_ips.create()
AttributeError: 'Client' object has no attribute 'floating_ips'
这是 Openstack 和许多第 3 方教程向实例添加浮动 ip 的方式。
【问题讨论】: