-3

keystone をインストールして初期管理者ユーザー、テナントなどを作成しようとする小さな bash スクリプトを作成しています。

httx://10.0.2.100:35357/v2.0/tenants への接続を確立できません

export を使用して、ファイルを介して環境変数を取得しようとしましたが、最後の手段として、 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 Unable to established connection to httx://10.0.2.100:35357/v2.0/tenants

しかし、bash シェルで同じコマンドを直接実行しても問題はありません。デバッグ出力は次のとおりです。

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:Setting read timeout to 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","有効": true、"id": "17008f66b9b54ca39654846e0b5e7af2", "名前": "管理者"}, {"説明": "サービス テナント", "有効": true, "id": "3a6823c10e454f4294aebdfec8b0c5dd", "名前": "サービス"}]} +----------------------------------+---------+---------+ | id | name | enabled | +----------------------------------+---------+---------+ | 17008f66b9b54ca39654846e0b5e7af2 | admin | True | | 3a6823c10e454f4294aebdfec8b0c5dd | service | True | +----------------------------------+---------+---------+

そのため、スクリプトがコマンドを実行しようとしたときにのみ失敗するようです...理由がわかりません...助けていただければ幸いです。

PS。十分な評判ポイントがないため、投稿できるようにするために http を httx に置き換える必要がありました。

4

1 に答える 1

0

数時間後...やっと何が悪いのかわかりました。私のスクリプトでは、「/etc/keystone/keystone.conf」ファイルへの変更が考慮されるように、最初に keystone サービスを再起動し、その直後に keystone コマンドを実行します。私のコマンドに応答する前に、キーストーンが起動するまでに時間がかかるようです。2 つのコマンドの間に「sleep 1」を追加したところ、動作するようになりました。多分それは誰かに役立つでしょう:-)

于 2015-03-18T08:43:56.940 に答える