<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Using command line, all is fine. The
      error only appears using horizon, when the neutron info is going
      to be loaded. I've seen in the logs how horizon starts to reach
      the nova details sucessfully (but not the neutron one). <br>
      <br>
      <br>
      <small><small>[Thu Mar 27 10:18:37 2014] [error] REQ: curl -i
          <a class="moz-txt-link-freetext" href="http://controller:8774/v2/demo/limits">http://controller:8774/v2/demo/limits</a> -X GET -H
          "X-Auth-Project-Id: demo" -H "User-Agent: python-novaclient"
          -H "Accept: application/json" -H "X-Auth-Token: <b>0de5eed32b09c3d7a357cd3391f13051</b>"<br>
          [Thu Mar 27 10:18:37 2014] [error] <br>
          [Thu Mar 27 10:18:37 2014] [error]
          <a class="moz-txt-link-freetext" href="INFO:urllib3.connectionpool:Starting">INFO:urllib3.connectionpool:Starting</a> new HTTP connection (1):
          controller<br>
          [Thu Mar 27 10:18:37 2014] [error]
          DEBUG:urllib3.connectionpool:"GET /v2/demo/limits HTTP/1.1"
          200 437<br>
          [Thu Mar 27 10:18:37 2014] [error] RESP: [200] {'date': 'Thu,
          27 Mar 2014 10:18:37 GMT', 'content-length': '437',
          'content-type': 'application/json', 'x-compute-request-id':
          'req-d80a8b6a-3a77-40c0-9e12-ddabf8871447'}<br>
          [Thu Mar 27 10:18:37 2014] [error] RESP BODY: {"limits":
          {"rate": [], "absolute": {"maxServerMeta": 128,
          "maxPersonality": 5, "maxImageMeta": 128,
          "maxPersonalitySize": 10240, "maxSecurityGroupRules": 20,
          "maxTotalKeypairs": 100, "totalRAMUsed": 18432,
          "totalInstancesUsed": 9, "maxSecurityGroups": 10,
          "totalFloatingIpsUsed": 0, "maxTotalCores": 100,
          "totalSecurityGroupsUsed": 0, "maxTotalFloatingIps": 10,
          "maxTotalInstances": 100, "totalCoresUsed": 9,
          "maxTotalRAMSize": 51200}}}<br>
          [Thu Mar 27 10:18:37 2014] [error] <br>
          [Thu Mar 27 10:18:37 2014] [error] Internal Server Error:
          /dashboard/project/<br>
          [Thu Mar 27 10:18:37 2014] [error] Traceback (most recent call
          last):<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/django/core/handlers/base.py",
          line 111, in get_response<br>
          [Thu Mar 27 10:18:37 2014] [error]     response =
          callback(request, *callback_args, **callback_kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/decorators.py", line
          38, in dec<br>
          [Thu Mar 27 10:18:37 2014] [error]     return
          view_func(request, *args, **kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/decorators.py", line
          54, in dec<br>
          [Thu Mar 27 10:18:37 2014] [error]     return
          view_func(request, *args, **kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/decorators.py", line
          38, in dec<br>
          [Thu Mar 27 10:18:37 2014] [error]     return
          view_func(request, *args, **kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/django/views/generic/base.py",
          line 48, in view<br>
          [Thu Mar 27 10:18:37 2014] [error]     return
          self.dispatch(request, *args, **kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/django/views/generic/base.py",
          line 69, in dispatch<br>
          [Thu Mar 27 10:18:37 2014] [error]     return handler(request,
          *args, **kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/tables/views.py",
          line 155, in get<br>
          [Thu Mar 27 10:18:37 2014] [error]     handled =
          self.construct_tables()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/tables/views.py",
          line 146, in construct_tables<br>
          [Thu Mar 27 10:18:37 2014] [error]     handled =
          self.handle_table(table)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/tables/views.py",
          line 118, in handle_table<br>
          [Thu Mar 27 10:18:37 2014] [error]     data =
          self._get_data_dict()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/tables/views.py",
          line 182, in _get_data_dict<br>
          [Thu Mar 27 10:18:37 2014] [error]     self._data =
          {self.table_class._meta.name: self.get_data()}<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/dashboards/project/overview/views.py",
          line 56, in get_data<br>
          [Thu Mar 27 10:18:37 2014] [error]     super(ProjectOverview,
          self).get_data()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/usage/views.py",
          line 29, in get_data<br>
          [Thu Mar 27 10:18:37 2014] [error]     self.usage.get_limits()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/usage/base.py",
          line 178, in get_limits<br>
          [Thu Mar 27 10:18:37 2014] [error]    
          self.get_neutron_limits()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/usage/base.py",
          line 147, in get_neutron_limits<br>
          [Thu Mar 27 10:18:37 2014] [error]    
          api.neutron.is_security_group_extension_supported(self.request)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/api/neutron.py",
          line 761, in is_security_group_extension_supported<br>
          [Thu Mar 27 10:18:37 2014] [error]     return
          is_extension_supported(request, 'security-group')<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/utils/memoized.py",
          line 33, in __call__<br>
          [Thu Mar 27 10:18:37 2014] [error]     value =
          self.func(*args)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/api/neutron.py",
          line 741, in is_extension_supported<br>
          [Thu Mar 27 10:18:37 2014] [error]     extensions =
          list_extensions(request)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/horizon/utils/memoized.py",
          line 33, in __call__<br>
          [Thu Mar 27 10:18:37 2014] [error]     value =
          self.func(*args)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/share/openstack-dashboard/openstack_dashboard/wsgi/../../openstack_dashboard/api/neutron.py",
          line 732, in list_extensions<br>
          [Thu Mar 27 10:18:37 2014] [error]     extensions_list =
          neutronclient(request).list_extensions()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/v2_0/client.py",
          line 108, in with_params<br>
          [Thu Mar 27 10:18:37 2014] [error]     ret =
          self.function(instance, *args, **kwargs)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/v2_0/client.py",
          line 286, in list_extensions<br>
          [Thu Mar 27 10:18:37 2014] [error]     return
          self.get(self.extensions_path, params=_params)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/v2_0/client.py",
          line 1183, in get<br>
          [Thu Mar 27 10:18:37 2014] [error]     headers=headers,
          params=params)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/v2_0/client.py",
          line 1168, in retry_request<br>
          [Thu Mar 27 10:18:37 2014] [error]     headers=headers,
          params=params)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/v2_0/client.py",
          line 1103, in do_request<br>
          [Thu Mar 27 10:18:37 2014] [error]     resp, replybody =
          self.httpclient.do_request(action, method, body=body)<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/client.py",
          line 190, in do_request<br>
          [Thu Mar 27 10:18:37 2014] [error]     self.authenticate()<br>
          [Thu Mar 27 10:18:37 2014] [error]   File
          "/usr/lib/python2.6/site-packages/neutronclient/client.py",
          line 228, in authenticate<br>
          <b>[Thu Mar 27 10:18:37 2014] [error]     token_url =
            self.auth_url + "/tokens"</b><b><br>
          </b><b>[Thu Mar 27 10:18:37 2014] [error] TypeError:
            unsupported operand type(s) for +: 'NoneType' and 'str'</b><br>
          [Thu Mar 27 10:36:37 2014] [error] <br>
        </small></small><br>
      Then in neutron server logs appears how the same token used by
      nova is rejected:<br>
      <br>
      <small><small>2014-03-27 11:18:37.252 14131 ERROR
          keystoneclient.middleware.auth_token [-] Unable to get version
          info from keystone: 404<br>
          2014-03-27 11:18:37.252 14131 DEBUG
          keystoneclient.middleware.auth_token [-] Token validation
          failure. _validate_user_token
/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py:820<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token Traceback (most recent
          call last):<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token   File
          "/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py",
          line 811, in _validate_user_token<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token     data =
          self.verify_uuid_token(user_token, retry)<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token   File
          "/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py",
          line 1088, in verify_uuid_token<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token     self.auth_version =
          self._choose_api_version()<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token   File
          "/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py",
          line 509, in _choose_api_version<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token    
          versions_supported_by_server = self._get_supported_versions()<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token   File
          "/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py",
          line 536, in _get_supported_versions<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token     raise
          ServiceError('Unable to get version info from keystone')<br>
          2014-03-27 11:18:37.252 14131 TRACE
          keystoneclient.middleware.auth_token ServiceError: Unable to
          get version info from keystone<br>
          2014-03-27 11:18:37.253 14131 DEBUG
          keystoneclient.middleware.auth_token [-] Marking token
          0de5eed32b09c3d7a357cd3391f13051 as unauthorized in memcache
          _cache_store_invalid
/usr/lib/python2.6/site-packages/keystoneclient/middleware/auth_token.py:1068<br>
          2014-03-27 11:18:37.253 14131 WARNING
          keystoneclient.middleware.auth_token [-] Authorization failed
          for token <b>0de5eed32b09c3d7a357cd3391f13051</b><br>
        </small></small><br>
      Any idea?<br>
      <br>
      Regards<br>
      Miguel.<br>
      <br>
      El 26/03/14 19:18, matt escribió:<br>
    </div>
    <blockquote
cite="mid:CAP_sDUHGw6BVM3EME3+YuOP3=NGThW3S6r79ntB+z1Bc8NyMfA@mail.gmail.com"
      type="cite">
      <div dir="ltr">hop onto the box with horizon running on it and try
        to authenticate to nova CLI with the --debug flag set.  see what
        that gives you.  <br>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">On Wed, Mar 26, 2014 at 2:09 PM, Miguel
          Angel Diaz Corchero <span dir="ltr"><<a
              moz-do-not-send="true"
              href="mailto:miguelangel.diaz@externos.ciemat.es"
              target="_blank">miguelangel.diaz@externos.ciemat.es</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000"> Hi,<br>
              <br>
              Horizon (of Havana) is showing problems when accessing:<br>
              <br>
              The error message is:<br>
              <pre>unsupported operand type(s) for +: 'NoneType' and 'str'</pre>
              <br>
              and is produced in:<br>
              <br>
              <code>/usr/lib/python2.6/site-packages/neutronclient/client.py</code>
              in <code>authenticate</code>
              <pre>token_url = self.auth_url + "/tokens"

</pre>
              I've applied the patch <small><a moz-do-not-send="true"
                  href="https://review.openstack.org/#/c/52954/"
                  target="_blank">https://review.openstack.org/#/c/52954/</a>
              </small><br>
              but the <small>self.auth_url</small> of the code above is
              still <small>None</small><br>
              <br>
              Commands such as <small>nova net-list</small> and <small>nova

                floating-ip-list</small> work fine.<br>
              <br>
              Any idea?<br>
              <br>
              Thanks!<span class="HOEnZb"><font color="#888888"><br>
                  Miguel.<br>
                  <br>
                  <br>
                  <div>-- <br>
                    <i><font><span style=""><span
                            style="font-family:Century
                            Gothic,sans-serif,10">Miguel Angel Díaz
                            Corchero</span></span></font></i><font><br>
                      <i><b><span style="font-family:Century
                            Gothic,sans-serif">System Administrator /
                            Researcher</span></b></i><br>
                      <i><span style="font-family:Century
                          Gothic,sans-serif">c/ Sola nº 1; 10200
                          TRUJILLO, SPAIN</span></i><br>
                      <i><span style="font-family:Century
                          Gothic,sans-serif">Tel: +34 927 65 93 17 Fax:
                          <a moz-do-not-send="true"
                            href="tel:%2B34%20927%2032%2032%2037"
                            value="+34927323237" target="_blank">+34 927
                            32 32 37</a></span></i>
                      <p><span><a moz-do-not-send="true"
                            href="http://www.ceta-ciemat.es/"
                            target="_blank"><img
                              src="cid:part4.00010108.03020507@externos.ciemat.es"
                              alt="CETA-Ciemat logo" height="76"
                              border="0" width="383"></a></span></p>
                    </font></div>
                  ----------------------------
                  Confidencialidad: Este mensaje y sus ficheros adjuntos
                  se dirige exclusivamente a su destinatario y puede
                  contener información privilegiada o confidencial. Si
                  no es vd. el destinatario indicado, queda notificado
                  de que la utilización, divulgación y/o copia sin
                  autorización está prohibida en virtud de la
                  legislación vigente. Si ha recibido este mensaje por
                  error, le rogamos que nos lo comunique inmediatamente
                  respondiendo al mensaje y proceda a su destrucción.
                  Disclaimer: This message and its attached files is
                  intended exclusively for its recipients and may
                  contain confidential information. If you received this
                  e-mail in error you are hereby notified that any
                  dissemination, copy or disclosure of this
                  communication is strictly prohibited and may be
                  unlawful. In this case, please notify us by a reply
                  and delete this email and its contents immediately.
                  ----------------------------
                </font></span></div>
            <br>
            _______________________________________________<br>
            OpenStack-operators mailing list<br>
            <a moz-do-not-send="true"
              href="mailto:OpenStack-operators@lists.openstack.org">OpenStack-operators@lists.openstack.org</a><br>
            <a moz-do-not-send="true"
href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators"
              target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>