Bug 659014
Summary: | Luci returns an Error 500 when accessing node configuration with FQDN names | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Carlos Maiolino <cmaiolin> |
Component: | luci | Assignee: | Ryan McCabe <rmccabe> |
Status: | CLOSED ERRATA | QA Contact: | Cluster QE <mspqa-list> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 6.0 | CC: | bbrock, chakkerz, cluster-maint, jlabocki, toarney |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | luci-0.23.0-3.el6 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-05-19 13:56:47 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Carlos Maiolino
2010-12-01 19:42:34 UTC
Ok, the problem is when the nodes have FQDN names. I tested the environment using common names and it worked normally. But when using fqdns luci discards the last part of the name. Do you have the hosts defined with the short names in /etc/hosts or something similar? What does 'cman_tool nodes' show when you run it on one of the cluster nodes? I have my hosts defined on /etc/hosts, I don't use DNS here on my lab. Here is the hosts config I'm using on all 3 nodes: 10.0.10.10 node1-r6.maiolino.org node1-r6 10.0.10.20 node2-r6.maiolino.org node2-r6 10.0.10.30 node3-r6.maiolino.org node3-r6 Here is the output of clustat and cman_tool nodes [root@node1-r6 ~]# clustat Cluster Status for rhel6cluster @ Thu Dec 2 13:31:56 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node1-r6.maiolino.org 1 Online, Local node2-r6.maiolino.org 2 Online node3-r6.maiolino.org 3 Online [root@node1-r6 ~]# cman_tool nodes Node Sts Inc Joined Name 1 M 4 2010-12-02 13:23:31 node1-r6.maiolino.org 2 M 12 2010-12-02 13:23:31 node2-r6.maiolino.org 3 M 12 2010-12-02 13:23:31 node3-r6.maiolino.org *** Bug 666881 has been marked as a duplicate of this bug. *** An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2011-0655.html I am running into this error in the Service version: luci-0.23.0-13.el6.x86_64 Steps to reproduce: In Luci interface select "Service Groups" > and select a service (in this case a virtual machine named Satellite). Workarounds attempted: I have tried short name, FQDN, and IP address with similar results. The same error occurs when adding a new service group. The FQDN and short name resolve correctly on both the host running luci and the host accessing luci via the browser. output from /var/log/luci/luci.log when trying view details of a service group: [root@cldmgr01 ~]# tail -f /var/log/luci/luci.log Error - <class 'genshi.template.eval.UndefinedError'>: <luci.lib.ClusterConf.Vm.Vm object at 0x7fc94011d310> has no member named "getIndependentSubtree" URL: https://10.0.3.13:8084/cluster/cldmgrcluster01/services/nfsvm File '/usr/lib/python2.6/site-packages/weberror/errormiddleware.py', line 162 in __call__ app_iter = self.application(environ, sr_checker) File '/usr/lib/python2.6/site-packages/tg/configuration.py', line 655 in wrapper return app(environ, start_response) File '/usr/lib/python2.6/site-packages/tg/configuration.py', line 555 in remover return app(environ, start_response) File '/usr/lib/python2.6/site-packages/repoze/tm/__init__.py', line 19 in __call__ result = self.application(environ, save_status_and_headers) File '/usr/lib/python2.6/site-packages/tw/core/middleware.py', line 43 in __call__ return self.wsgi_app(environ, start_response) File '/usr/lib/python2.6/site-packages/tw/core/middleware.py', line 68 in wsgi_app resp = req.get_response(self.application) File '/usr/lib/python2.6/site-packages/webob/__init__.py', line 1325 in get_response application, catch_exc_info=False) File '/usr/lib/python2.6/site-packages/webob/__init__.py', line 1293 in call_application app_iter = application(self.environ, start_response) File '/usr/lib/python2.6/site-packages/tw/core/resource_injector.py', line 68 in _injector resp = req.get_response(app) File '/usr/lib/python2.6/site-packages/webob/__init__.py', line 1325 in get_response application, catch_exc_info=False) File '/usr/lib/python2.6/site-packages/webob/__init__.py', line 1293 in call_application app_iter = application(self.environ, start_response) File '/usr/lib/python2.6/site-packages/beaker/middleware.py', line 73 in __call__ return self.app(environ, start_response) File '/usr/lib/python2.6/site-packages/beaker/middleware.py', line 152 in __call__ return self.wrap_app(environ, session_start_response) File '/usr/lib/python2.6/site-packages/routes/middleware.py', line 130 in __call__ response = self.app(environ, start_response) File '/usr/lib/python2.6/site-packages/pylons/wsgiapp.py', line 125 in __call__ response = self.dispatch(controller, environ, start_response) File '/usr/lib/python2.6/site-packages/pylons/wsgiapp.py', line 324 in dispatch return controller(environ, start_response) File '/usr/lib64/python2.6/site-packages/luci/controllers/root.py', line 48 in __call__ return BaseController.__call__(self, environ, start_response) File '/usr/lib64/python2.6/site-packages/luci/lib/base.py', line 48 in __call__ return TGController.__call__(self, environ, start_response) File '/usr/lib/python2.6/site-packages/pylons/controllers/core.py', line 221 in __call__ response = self._dispatch_call() File '/usr/lib/python2.6/site-packages/pylons/controllers/core.py', line 172 in _dispatch_call response = self._inspect_call(func) File '/usr/lib/python2.6/site-packages/pylons/controllers/core.py', line 107 in _inspect_call result = self._perform_call(func, args) File '/usr/lib/python2.6/site-packages/tg/controllers.py', line 857 in _perform_call self, controller, params, remainder=remainder) File '/usr/lib/python2.6/site-packages/tg/controllers.py', line 182 in _perform_call response = self._render_response(controller, output) File '/usr/lib/python2.6/site-packages/tg/controllers.py', line 358 in _render_response template_name=template_name) File '/usr/lib/python2.6/site-packages/tg/render.py', line 141 in render return render_function(template_name, template_vars, **kwargs) File '/usr/lib/python2.6/site-packages/tg/render.py', line 168 in render_genshi **kwargs) File '/usr/lib/python2.6/site-packages/pylons/templating.py', line 338 in render_genshi ns_options=('method'), method=method) File '/usr/lib/python2.6/site-packages/pylons/templating.py', line 249 in cached_template return render_func() File '/usr/lib/python2.6/site-packages/pylons/templating.py', line 334 in render_template encoding=None)) File '/usr/lib64/python2.6/site-packages/genshi/core.py', line 179 in render return encode(generator, method=method, encoding=encoding, out=out) File '/usr/lib64/python2.6/site-packages/genshi/output.py', line 60 in encode return _encode(u''.join(list(iterator))) File '/usr/lib64/python2.6/site-packages/genshi/output.py', line 311 in __call__ for kind, data, pos in stream: File '/usr/lib64/python2.6/site-packages/genshi/output.py', line 592 in __call__ for kind, data, pos in stream: File '/usr/lib64/python2.6/site-packages/genshi/output.py', line 698 in __call__ for kind, data, pos in chain(stream, [(None, None, None)]): File '/usr/lib64/python2.6/site-packages/genshi/output.py', line 532 in __call__ for ev in stream: File '/usr/lib64/python2.6/site-packages/genshi/core.py', line 283 in _ensure for event in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 569 in _include for event in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/markup.py', line 279 in _match content = list(content) File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 569 in _include for event in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/markup.py', line 245 in _match for event in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/markup.py', line 234 in _strip event = stream.next() File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 543 in _exec for event in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 533 in _eval for event in substream: File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 533 in _eval for event in substream: File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 533 in _eval for event in substream: File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 496 in _eval for kind, data, pos in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 558 in _flatten for event in self._flatten(substream, ctxt, **vars): File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 558 in _flatten for event in self._flatten(substream, ctxt, **vars): File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 551 in _flatten for event in stream: File '/usr/lib64/python2.6/site-packages/genshi/template/directives.py', line 175 in _generate attrs = _eval_expr(self.expr, ctxt, **vars) File '/usr/lib64/python2.6/site-packages/genshi/template/base.py', line 286 in _eval_expr retval = expr.evaluate(ctxt) File '/usr/lib64/python2.6/site-packages/genshi/template/eval.py', line 180 in evaluate return eval(self.code, _globals, {'__data__': data}) File '/usr/lib64/python2.6/site-packages/luci/templates/resource_list.html', line 21 in <Expression u"(res and res.getIndependentSubtree()) and {'checked':'checked'} or {}"> <input type="checkbox" name="independent_subtree" class="checkbox subtree" File '/usr/lib64/python2.6/site-packages/genshi/template/eval.py', line 326 in lookup_attr val = cls.undefined(key, owner=obj) File '/usr/lib64/python2.6/site-packages/genshi/template/eval.py', line 410 in undefined raise UndefinedError(key, owner=owner) UndefinedError: <luci.lib.ClusterConf.Vm.Vm object at 0x7fc94011d310> has no member named "getIndependentSubtree" CGI Variables ------------- AUTH_TYPE: 'cookie' CONTENT_LENGTH: '0' HTTP_ACCEPT: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' HTTP_ACCEPT_CHARSET: 'ISO-8859-1,utf-8;q=0.7,*;q=0.7' HTTP_ACCEPT_ENCODING: 'gzip,deflate' HTTP_ACCEPT_LANGUAGE: 'en-us,en;q=0.5' HTTP_CONNECTION: 'keep-alive' HTTP_COOKIE: 'luci=2a6b74c033e5935646ef784bd3c8aba0a517174bbcc2267e2e956c38286c4c8bc9caa096; auth_tkt="3088256516ad7e26a4961d35d7635c124e0c4786root!"' HTTP_HOST: '10.0.3.13:8084' HTTP_KEEP_ALIVE: '115' HTTP_REFERER: 'https://10.0.3.13:8084/cluster/cldmgrcluster01/services?__logins=0' HTTP_USER_AGENT: 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.10) Gecko/20101005 Fedora/3.6.10-1.fc14 Firefox/3.6.10' PATH_INFO: '/cluster/cldmgrcluster01/services/nfsvm' REMOTE_ADDR: '10.0.1.2' REMOTE_USER: 'root' REMOTE_USER_TOKENS: [''] REQUEST_METHOD: 'GET' SERVER_NAME: '10.0.3.13' SERVER_PORT: '8084' SERVER_PROTOCOL: 'HTTP/1.1' WSGI Variables -------------- application: <function wrapper at 0x307a2a8> beaker.cache: <beaker.cache.CacheManager object at 0x307db10> beaker.get_session: <bound method SessionMiddleware._get_session of <beaker.middleware.SessionMiddleware object at 0x307da90>> beaker.session: {'_accessed_time': 1309427956.354609} paste.cookies: (<SimpleCookie: auth_tkt='3088256516ad7e26a4961d35d7635c124e0c4786root!' luci='2a6b74c033e5935646ef784bd3c8aba0a517174bbcc2267e2e956c38286c4c8bc9caa096'>, 'luci=2a6b74c033e5935646ef784bd3c8aba0a517174bbcc2267e2e956c38286c4c8bc9caa096; auth_tkt="3088256516ad7e26a4961d35d7635c124e0c4786root!"') paste.httpserver.thread_pool: <paste.httpserver.ThreadPool object at 0x30a75d0> paste.registry: <paste.registry.Registry object at 0x7fc9480bf590> paste.throw_errors: True pylons.action_method: <bound method RootController.routes_placeholder of <luci.controllers.root.RootController object at 0x7fc9388309d0>> pylons.controller: <luci.controllers.root.RootController object at 0x7fc9388309d0> pylons.environ_config: {'session': 'beaker.session', 'cache': 'beaker.cache'} pylons.pylons: <pylons.util.PylonsContext object at 0x7fc94011d690> pylons.routes_dict: {'url': u'cluster/cldmgrcluster01/services/nfsvm', 'action': u'routes_placeholder', 'controller': u'root'} repoze.tm.active: True repoze.what.credentials: {'repoze.what.userid': 'root', 'groups': ['managers'], 'permissions': ['manage']} repoze.who.identity: <repoze.who identity (hidden, dict-like) at 140502003430624> repoze.who.logger: None repoze.who.plugins: {'luci_sasl2auth': <luci.lib.plugin_sasl2auth.Sasl2AuthPlugin object at 0x30a7c90>, 'friendlyform': <FriendlyFormPlugin 51040976>, 'auth_tkt': <AuthTktCookiePlugin 51067600>} routes.route: <routes.route.Route object at 0x2f0df50> routes.url: <routes.util.URLGenerator object at 0x7fc94011d4d0> toscawidgets.framework: <tw.mods.base.HostFramework object at 0x307db90> toscawidgets.javascript.require_once: False toscawidgets.prefix: '/toscawidgets' webob._parsed_cookies: ({'luci': '2a6b74c033e5935646ef784bd3c8aba0a517174bbcc2267e2e956c38286c4c8bc9caa096', 'auth_tkt': '3088256516ad7e26a4961d35d7635c124e0c4786root!'}, 'luci=2a6b74c033e5935646ef784bd3c8aba0a517174bbcc2267e2e956c38286c4c8bc9caa096; auth_tkt="3088256516ad7e26a4961d35d7635c124e0c4786root!"') webob._parsed_query_vars: (MultiDict([]), '') webob.adhoc_attrs: {'start_response': <function repl_start_response at 0x7fc9481f1230>, 'response_ext': None, 'identity': <repoze.who identity (hidden, dict-like) at 140502003430624>, 'language': 'en-us', 'response_type': None} wsgi process: 'Multithreaded' wsgiorg.routing_args: (<routes.util.URLGenerator object at 0x7fc94011d4d0>, {'url': u'cluster/cldmgrcluster01/services/nfsvm', 'action': u'routes_placeholder', 'controller': u'root'}) ------------------------------------------------------------ (In reply to comment #9) > I am running into this error in the Service > > version: luci-0.23.0-13.el6.x86_64 > > Steps to reproduce: > In Luci interface select "Service Groups" > and select a service (in this case > a virtual machine named Satellite). > > Workarounds attempted: > I have tried short name, FQDN, and IP address with similar results. The same > error occurs when adding a new service group. The FQDN and short name resolve > correctly on both the host running luci and the host accessing luci via the > browser. This is bug 711625 |