我正在制作一个小的bash脚本,尝试安装keystone并创建初始管理员用户,租户等。 我用各种keystone子命令尝试了它们,但它们都没有说:
无法与httx://10.0.2.100:35357 / v2.0 / tenants建立连接
我尝试通过文件,使用导出来获取env变量,最后使用--os-token
和--os-endpoint
运行命令。这是我在脚本中使用的最新版本:
keystone --debug --os-token secret --os-endpoint httx://10.0.2.100:35357 / v2.0 tenant-list
调试的完整消息如下:
警告:使用令牌和放大器绕过身份验证。端点(正在忽略身份验证凭据) DEBUG:keystoneclient.session:REQ:curl -i -X GET httx://10.0.2.100:35357 / v2.0 / tenants -H“User-Agent:python-keystoneclient”-H“X-Auth-Token:secret “
INFO:urllib3.connectionpool:启动新的HTTP连接(1):10.0.2.100 无法与httx://10.0.2.100:35357 / v2.0 / tenants建立连接
但如果我直接在bash shell上运行相同的命令,我就没有问题。这是它的调试输出:
keystone --debug --os-token secret --os-endpoint httx://10.0.2.100:35357 / v2.0 tenant-list 警告:使用令牌和放大器绕过身份验证。端点(正在忽略身份验证凭据) DEBUG:keystoneclient.session:REQ:curl -i -X GET httx://10.0.2.100:35357 / v2.0 / tenants -H“User-Agent:python-keystoneclient”-H“X-Auth-Token:secret “ INFO:urllib3.connectionpool:启动新的HTTP连接(1):10.0.2.100 DEBUG:urllib3.connectionpool:将读取超时设置为600.0 DEBUG:urllib3.connectionpool:“GET /v2.0/tenants HTTP / 1.1”200 256 调查:keystoneclient.session:RESP:[200] {'date':'星期二,2015年3月17日14:28:20 GMT','变化':'X-Auth-Token','content-length':'256 ','content-type':'application / json','x-distribution':'Ubuntu'} RESP BODY:{“tenants_links”:[],“tenants”:[{“description”:“Admin Tenant”,“enabled”:true,“id”:“17008f66b9b54ca39654846e0b5e7af2”,“name”:“admin”},{ “description”:“Service Tenant”,“enabled”:true,“id”:“3a6823c10e454f4294aebdfec8b0c5dd”,“name”:“service”}]}
+----------------------------------+---------+---------+ | id | name | enabled | +----------------------------------+---------+---------+ | 17008f66b9b54ca39654846e0b5e7af2 | admin | True | | 3a6823c10e454f4294aebdfec8b0c5dd | service | True | +----------------------------------+---------+---------+
所以似乎只有当脚本试图运行命令时才会失败... 我无法弄清楚为什么...任何帮助表示赞赏。
PS。我不得不用httx取代http,以便能够发布,因为我没有足够的声誉点。
答案 0 :(得分:0)
几个小时后......我终于弄清楚出了什么问题。在我的脚本中,我首先重新启动keystone服务,以便考虑对“/etc/keystone/keystone.conf”文件的更改,然后立即运行keystone命令。在回答我的命令之前,似乎确实需要一些时间让keystone上升。我在两个命令之间添加了“sleep 1”,现在它可以工作了。也许对某人有用: - )