<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">You can simply run a SQL query based on the service ID:<div><br><div>use keystone;</div><div>UPDATE endpoints SET adminURL=“etc…. WHERE service=“ID”;</div><div><br></div><div>I don’t remember the exact name of the fields, but it’s the simplest option IMO</div><div><br><div><div>On 05 Aug 2014, at 18:05, Fischer, Matt <<a href="mailto:matthew.fischer@twcable.com">matthew.fischer@twcable.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">

<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">

<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; font-size: 14px; font-family: Calibri, sans-serif;">
<div>Yes, you've messed it up good. When the endpoint URL is bad Keystone cannot do anything. I
<a href="https://bugs.launchpad.net/keystone/+bug/1347862">filed a bug</a> on this last week and the fix is being back ported. The only resolution that I know of is to fix the endpoint in the Keystone database. I think based on what I see that you're missing
 an "s" on the end of that. %(foo)s is how python does string substitution. Here's how I fixed it before:</div>
<div><br>
</div>
<div><a href="http://www.mattfischer.com/blog/?p=532">http://www.mattfischer.com/blog/?p=532</a></div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family: Calibri; font-size: 11pt; text-align: left; border-width: 1pt medium medium; border-style: solid none none; padding: 3pt 0in 0in; border-top-color: rgb(181, 196, 223);">
<span style="font-weight:bold">From: </span>Jeff Silverman <<a href="mailto:jeff@sweetlabs.com">jeff@sweetlabs.com</a>><br>
<span style="font-weight:bold">Date: </span>Tuesday, August 5, 2014 6:42 PM<br>
<span style="font-weight:bold">To: </span>"<a href="mailto:openstack-operators@lists.openstack.org">openstack-operators@lists.openstack.org</a>" <<a href="mailto:openstack-operators@lists.openstack.org">openstack-operators@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>[Openstack-operators] I shot myself in the foot trying to install the block storage service<br>
</div>
<div><br>
</div>
<div dir="ltr">
<div class="gmail_default" style="font-family:'times new roman',serif"><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
I am in <a href="http://docs.openstack.org/icehouse/install-guide/install/yum/content/cinder-controller.html">
http://docs.openstack.org/icehouse/install-guide/install/yum/content/cinder-controller.html</a>  step 8. The problem began when I didn't notice that the word controller was in italics in the documentation. I wish it were in ALL CAPS, such as for the CINDER_PASS/.
 However, I went back and repeated the commands correctly, I think, and I am still getting a 500 internal server error.</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
I used keystone with the --debug switch and tried using the generated curl command:</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
<a href="mailto:root@controller1-prod.controller1-prod">root@controller1-prod.controller1-prod</a>:~# curl -i -X POST <a rel="nofollow" href="http://controller1-prod.sea.opencandy.com:35357/v2.0/tokens" style="color:rgb(0,51,170);text-decoration:none">http://controller1-prod.sea.opencandy.com:35357/v2.0/tokens</a> -H
 "Content-Type: application/json" -H "Accept: application/json" -H "User-Agent: python-keystoneclient" \<br>
-d '{"auth": {"tenantName": "admin", "passwordCredentials": {"username": "admin", "password": "f8d67f756e057918ef25dca59de79778"}}}'<br>
HTTP/1.1 500 Internal Server Error<br>
Vary: X-Auth-Token<br>
Content-Type: application/json<br>
Date: Tue, 05 Aug 2014 23:51:10 GMT<br>
Transfer-Encoding: chunked</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
{"error": {"message": "Malformed endpoint URL (see ERROR log for details):<a rel="nofollow" href="http://controller:8776/v1/%(tenant_id)" style="color:rgb(0,51,170);text-decoration:none">http://controller:8776/v1/%(tenant_id)</a>", "code": 500, "title": "Internal
 Server Error"}}<a href="mailto:root@controller1-prod.controller1-prod">root@controller1-prod.controller1-prod</a>:~#</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
from /var/log/keystone/keystone.log:</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
2014-08-05 16:51:10 ERROR [keystone.catalog.core] Malformed endpoint <a rel="nofollow" href="http://controller:8776/v1/%(tenant_id)" style="color:rgb(0,51,170);text-decoration:none">http://controller:8776/v1/%(tenant_id)</a> - incomplete format (are you missing
 a type notifier ?)<br>
2014-08-05 16:51:10 WARNING [keystone.common.wsgi] Malformed endpoint URL (see ERROR log for details): <a rel="nofollow" href="http://controller:8776/v1/%(tenant_id)" style="color:rgb(0,51,170);text-decoration:none">http://controller:8776/v1/%(tenant_id)</a></div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
I looked at the transfer with wireshark and I confirm that the service endpoint is really sending <a rel="nofollow" href="http://controller:8776/" style="color:rgb(0,51,170);text-decoration:none">http://controller:8776</a> in the error message. I don't know
 what port 8776 or why the server thinks that there is traffic on port 8776.</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
Whatever I did wrong, it has messed up keystone but good:</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
# keystone catalog<br>
Traceback (most recent call last):<br>
  File "/usr/lib/python2.6/site-packages/keystoneclient/v2_0/client.py", line 172, in get_raw_token_from_identity_service<br>
    return a.get_auth_ref(self.session)<br>
  File "/usr/lib/python2.6/site-packages/keystoneclient/auth/identity/v2.py", line 84, in get_auth_ref<br>
    authenticated=False)<br>
  File "/usr/lib/python2.6/site-packages/keystoneclient/session.py", line 334, in post<br>
    return self.request(url, 'POST', **kwargs)<br>
  File "/usr/lib/python2.6/site-packages/keystoneclient/utils.py", line 324, in inner<br>
    return func(*args, **kwargs)<br>
  File "/usr/lib/python2.6/site-packages/keystoneclient/session.py", line 275, in request<br>
    raise exceptions.from_response(resp, method, url)<br>
InternalServerError: Malformed endpoint URL (see ERROR log for details):<a rel="nofollow" href="http://controller:8776/v1/%(tenant_id)" style="color:rgb(0,51,170);text-decoration:none">http://controller:8776/v1/%(tenant_id)</a> (HTTP 500)<br>
not all arguments converted during string formatting<br>
<a href="mailto:root@controller1-prod.controller1-prod">root@controller1-prod.controller1-prod</a>:/var/log/httpd#</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
I found something similar on launchpad, bug 1291672 <a href="https://bugs.launchpad.net/openstack-manuals/+bug/1291672">https://bugs.launchpad.net/openstack-manuals/+bug/1291672</a> which was closed for lack of activity.</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
<br>
</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
Thank you</div><div style="margin: 0px 0px 0.8em; padding: 0px; width: auto; max-width: 45em; color: rgb(51, 51, 51); font-family: monospace; font-size: 12px; line-height: 18px;">
Jeff Silverman</div>
</div>
<div><br>
</div>
-- <br>
<div dir="ltr"><b>Jeff Silverman</b>
<div>Systems Engineer</div>
<div>(253) 459-2318 (c)</div>
<div><img src="https://dl.dropboxusercontent.com/u/16943296/SweetLabs-Signatures/New_2014/signature-logo.png"><br>
</div>
</div>
</div>
</span><br>
<hr>
<font face="Arial" color="Gray" size="1">This E-mail and any of its attachments may contain Time Warner Cable proprietary information, which is privileged, confidential, or subject to copyright belonging to Time Warner Cable. This E-mail is intended solely
 for the use of the individual or entity to which it is addressed. If you are not the intended recipient of this E-mail, you are hereby notified that any dissemination, distribution, copying, or action taken in relation to the contents of and attachments to
 this E-mail is strictly prohibited and may be unlawful. If you have received this E-mail in error, please notify the sender immediately and permanently delete the original and any copy of this E-mail and any printout.<br>
</font>
</div>

_______________________________________________<br>OpenStack-operators mailing list<br><a href="mailto:OpenStack-operators@lists.openstack.org">OpenStack-operators@lists.openstack.org</a><br>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators<br></blockquote></div><br></div></div></body></html>