我正在制作一个小型 bash 脚本,尝试安装 keystone 并创建初始管理员用户、租户等。我尝试了各种 keystone 子命令,但它们都失败了:
无法建立与 httx://10.0.2.100:35357/v2.0/tenants 的连接
我尝试通过文件获取环境变量,使用导出,最后甚至使用 and 运行--os-token
命令--os-endpoint
。这是我在脚本中使用的最新版本:
keystone --debug --os-token secret --os-endpoint httx://10.0.2.100:35357/v2.0 租户列表
带有调试的完整消息如下:
警告:使用令牌和端点绕过身份验证(身份验证凭据被忽略)。
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:Starting new HTTP connection (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:Starting new HTTP connection (1): 10.0.2.100 DEBUG:urllib3.connectionpool:设置读取超时为600.0 DEBUG:urllib3.connectionpool:"GET /v2.0/tenants HTTP/1.1" 200 256 DEBUG :keystoneclient.session:RESP: [200] {'date': 'Tue, 17 Mar 2015 14:28:20 GMT', 'vary': 'X-Auth-Token', 'content-length': '256' , 'content-type': 'application/json', 'x-distribution': 'Ubuntu'} RESP BODY: {"tenants_links": [], "tenants": [{"description": "Admin Tenant", "启用”:真,“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 才能发帖,因为我没有足够的声望点。