我最近开始使用OpenStack。问题是:我正在为OpenStack(DNSaaS)设置指定,并且我已经根据这里的指令设置了它--https://designate.readthedocs.org/en/latest/getting-started.html
使用“noauth”auth峎u策略,API和中心服务可以正常工作,但是我正在寻找与OpenStack Keystone的集成,因此我在指定.conf文件:
#-----------------------
# API Service
#-----------------------
[service:api]
# Address to bind the API server
api_host = 0.0.0.0
# Port the bind the API server to
api_port = 9001
# Authentication strategy to use - can be either "noauth" or "keystone"
auth_strategy = keystone
&
^{pr2}$&
##############
## Network API
##############
[network_api:neutron]
endpoints = RegionOne|http://xxx.xxx.xxx.xxx:9696
endpoint_type = publicURL
timeout = 30
admin_username = redacted
admin_password = redacted
admin_tenant_name = service
auth_url = http://xxx.xxx.xxx.xxx:35357/v2.0
#insecure = False
auth_strategy = keystone
#ca_certificates_file = /etc/path/to/ca.pem
保存这些更改并启动指定API后,将出现以下错误,并且服务未启动:
2015-02-23 11:44:09.534 27878 TRACE designate File "/usr/local/lib/python2.7/dist-packages/keystonemiddleware/auth_token.py", line 667, in <module>
2015-02-23 11:44:09.534 27878 TRACE designate _AuthTokenPlugin.register_conf_options(CONF, _AUTHTOKEN_GROUP)
2015-02-23 11:44:09.534 27878 TRACE designate AttributeError: type object '_AuthTokenPlugin' has no attribute 'register_conf_options'
2015-02-23 11:44:09.534 27878 TRACE designate
显然,AuthTokenPlugin没有“register”“conf”“options”属性。再仔细检查一下_令牌.py文件,它与指定(keystonemiddleware plugin)一起提供。 这里只提到了“register_conf_options”的两个实例;调用它的第667行。在
_AuthTokenPlugin.register_conf_options(CONF, _AUTHTOKEN_GROUP)
早些时候在335号线:
_AUTHTOKEN_GROUP = 'keystone_authtoken'
CONF = cfg.CONF
CONF.register_opts(_OPTS, group=_AUTHTOKEN_GROUP)
auth.register_conf_options(CONF, _AUTHTOKEN_GROUP)
问题出在哪里?我该怎么做呢?提前感谢您的任何提示或解决方案。在
不幸的是那些文件已经过时了。:(不过,他们应该在很大程度上起作用。我只是在一个可信的虚拟机上浏览了一下,似乎对我有用。在
当前文档在这里-http://docs.openstack.org/developer/designate/
这可能是您当前安装的其他OpenStack项目的版本与您尝试安装的指定版本之间的不兼容。在
这看起来像是keystonemiddleware的问题。我们不把它作为指定的一部分,它是作为一个要求。在
最好的开始是获取您拥有的OpenStack版本,然后是virtualenv中
pip freeze
的输出。在通常也有一些人在freenode上的openstack dns中,他们可以实时地执行任务
我也在尝试同样的事情,但我不会犯这样的错误。 最终指定服务正在启动find,但是当我使用keystone用户名和密码点击api url时,它给了我401错误。在
我不知道问题出在哪里。 这是
/var/log/designate/designate.api.log
的痕迹相关问题 更多 >
编程相关推荐