yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #60981
[Bug 1640512] Re: wrong format for novncproxy_base_url
That configuration option should support all *valid* URIs, be they IP
addresses or domain names. The URI you provided - 'http://os-
controller:6080/vnc_auto.html' - is a valid one and I can validate it
locally using the same check that oslo.config (which nova uses to parse
config files) uses [1].
$ pip install rfc3986
Collecting rfc3986
Using cached rfc3986-0.4.1-py2.py3-none-any.whl
Installing collected packages: rfc3986
Successfully installed rfc3986-0.4.1
$ python
>>> from rfc3986 import is_valid_uri
>>> x = 'http://os-controller:6080/vnc_auto.html'
>>> is_valid_uri(x, require_scheme=True, require_authority=True)
This leads me to think the issue is either a misconfiguration or a bug
with either oslo.config or the dependent rfc3986 library. Please provide
the version info for nova, oslo.config and rfc3986 so we can attempt to
reproduce the issue and issue a fix/blacklist the broken package.
Alexandra: this means the documentation is actually correct, thus, I
have marked the openstack-manuals issue as invalid.
[1]
https://github.com/openstack/oslo.config/blob/3.22.0/oslo_config/types.py#L837-L839
** Changed in: openstack-manuals
Status: Incomplete => Invalid
** Also affects: oslo.config
Importance: Undecided
Status: New
** Changed in: nova
Status: New => Incomplete
** Changed in: oslo.config
Status: New => Incomplete
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1640512
Title:
wrong format for novncproxy_base_url
Status in OpenStack Compute (nova):
Incomplete
Status in openstack-manuals:
Invalid
Status in oslo.config:
Incomplete
Bug description:
"In the [vnc] section, enable and configure remote console access:
[vnc]
...
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = $my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html
The server component listens on all IP addresses and the proxy
component only listens on the management interface IP address of the
compute node. The base URL indicates the location where you can use a
web browser to access remote consoles of instances on this compute
node."
This looks like 'controller' is used as a domain name but instead an IP is expected. With
'novncproxy_base_url = http://os-controller:6080/vnc_auto.html'
in my nova.conf the following error is logged:
2016-11-09 16:02:02.475 23828 ERROR nova Traceback (most recent call last):
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/bin/nova-compute", line 10, in <module>
2016-11-09 16:02:02.475 23828 ERROR nova sys.exit(main())
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/nova/cmd/compute.py", line 62, in main
2016-11-09 16:02:02.475 23828 ERROR nova service.wait()
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/nova/service.py", line 415, in wait
2016-11-09 16:02:02.475 23828 ERROR nova _launcher.wait()
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/oslo_service/service.py", line 328, in wait
2016-11-09 16:02:02.475 23828 ERROR nova status, signo = self._wait_for_exit_or_signal()
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/oslo_service/service.py", line 303, in _wait_for_exit_or_signal
2016-11-09 16:02:02.475 23828 ERROR nova self.conf.log_opt_values(LOG, logging.DEBUG)
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2626, in log_opt_values
2016-11-09 16:02:02.475 23828 ERROR nova _sanitize(opt, getattr(group_attr, opt_name)))
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 3057, in __getattr__
2016-11-09 16:02:02.475 23828 ERROR nova return self._conf._get(name, self._group)
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2668, in _get
2016-11-09 16:02:02.475 23828 ERROR nova value = self._do_get(name, group, namespace)
2016-11-09 16:02:02.475 23828 ERROR nova File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2711, in _do_get
2016-11-09 16:02:02.475 23828 ERROR nova % (opt.name, str(ve)))
2016-11-09 16:02:02.475 23828 ERROR nova ConfigFileValueError: Value for option novncproxy_base_url is not valid: invalid URI: 'http://os-controller:6080/vnc_auto.html'
With
'novncproxy_base_url = http://10.40.x.x:6080/vnc_auto.html'
in my nova.conf the service starts successfully.
My suggestion would be to either change the line to reflect that an IP
is expected or file a bug against nova?
-----------------------------------
Release: 0.1 on 2016-11-09 11:38
SHA: 8cac353f76b4ec663626d5111e6b10c3bb305b47
Source: http://git.openstack.org/cgit/openstack/openstack-manuals/tree/doc/install-guide/source/nova-compute-install.rst
URL: http://docs.openstack.org/newton/install-guide-ubuntu/nova-compute-install.html
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1640512/+subscriptions