OpenStack コマンドラインクライアントに必要な環境変数を設定するには、OpenStack rc ファイルと呼ばれる環境ファイルまたは openrc.sh
ファイルを作成する必要があります。OpenStack のインストールでこのファイルが提供される場合は、管理ユーザーまたはその他のユーザーで OpenStack Dashboard からダウンロードしてください。このプロジェクト固有の環境ファイルには、OpenStack サービスが使用する認証情報が含まれます。
このファイルを読み込むと、環境変数が現在のシェルに対して設定されます。この変数により OpenStack クライアントコマンドがクラウドで実行中の OpenStack サービスとやりとりできるようになります。
注釈
環境変数ファイルを用いて環境変数を定義することは、Microsoft Windows では一般的な手法ではありません。環境変数は通常、 Git for Windows をインストールして、 Git Bash を使って環境変数を読み込んでから、すべての CLI コマンドを実行する方法です。
で定義されます。これらのスクリプトを Windows でそのまま使う方法の 1 つは、ダッシュボードにログインし、 OpenStack RC ファイルをダウンロードしたいプロジェクトをドロップダウンリストから選択します。
プロジェクト タブにおいて、コンピュート タブを開き、アクセスとセキュリティー をクリックします。
API アクセス タブで、OpenStack RC ファイルのダウンロード をクリックしてファイルを保存します。ファイル名は PROJECT-openrc.sh
の形式とし、PROJECT
にはファイルをダウンロードするプロジェクト名を入力します。
OpenStack コマンドを実行したいコンピューターに PROJECT-openrc.sh
ファイルをコピーします。
例えば、glance
クライアントコマンドを用いてイメージをアップロードしたいコンピューターにファイルをコピーします。
OpenStack コマンドを実行したいシェルで、それぞれのプロジェクト用の PROJECT-openrc.sh
ファイルを読み込みます。
以下の例では、demo-openrc.sh
が demo プロジェクト用に読み込まれます。
$ . demo-openrc.sh
OpenStack パスワードの入力プロンプトが表示されたとき、PROJECT-openrc.sh
ファイルをダウンロードしたユーザーのパスワードを入力します。
何らかの理由によりダッシュボードからファイルをダウンロードできない場合、代わりに最初から PROJECT-openrc.sh
ファイルを作成できます。
テキストエディターで PROJECT-openrc.sh
という名前のファイルを作成し、以下の認証情報を追加します。
export OS_USERNAME=username
export OS_PASSWORD=password
export OS_TENANT_NAME=projectName
export OS_AUTH_URL=https://identityHost:portNumber/v2.0
# The following lines can be omitted
export OS_TENANT_ID=tenantIDString
export OS_REGION_NAME=regionName
export OS_CACERT=/path/to/cacertFile
警告
OS_PASSWORD
を平文で保存することはセキュリティーリスクになります。本番環境では、ファイルを保護するか、ファイルに OS_PASSWORD
を保存しないようにすべきです。
OpenStack コマンドを実行したいシェルで、それぞれのプロジェクト用の PROJECT-openrc.sh
ファイルを読み込みます。この例では、admin プロジェクト用の admin-openrc.sh
ファイルを読み込みます。
$ . admin-openrc.sh
注釈
この方法を用いると、パスワードを聞かれません。パスワードは PROJECT-openrc.sh
ファイルに平文で記載されています。セキュリティー問題を避けるために、このファイルのパーミッションを制限します。このファイルから OS_PASSWORD
変数を削除し、OpenStack クライアントコマンドで --password
パラメーターを使用することもできます。
注釈
OS_AUTH_URL
環境設定に HTTPS プロトコルを使用する場合、TLS (HTTPS) のサーバー証明書を検証するプロセスが、環境において指定されたものを使用するため、OS_CACERT
環境変数を使用する必要があります。TLS (HTTPS) サーバー証明書を検証するとき、この証明書が使用されます。
OpenStack クライアントコマンドを実行するとき、さまざまなクライアントコマンドの help
出力の最後に一覧表示されるオプションを使用することにより、いくつかの環境変数を上書きできます。たとえば以下のように、openstack コマンドにパスワードを指定することにより、PROJECT-openrc.sh
ファイルで設定した OS_PASSWORD
設定を上書きできます。
$ openstack --os-password PASSWORD server list
ここで PASSWORD
は、お使いのパスワードです。
ユーザーは、何らかのクライアントコマンドを使用して、ユーザー名とパスワードを指定して、OpenStack を使用します。これらのクレデンシャルは、環境変数やコマンドライン引数など、さまざまな方法により指定できます。これらの方法を用いて、パスワードを指定することは安全ではありません。
例えば、コマンドラインクライアントの --os-password
引数を使用してパスワードを指定するとき、コンピューターにアクセスできるユーザーは、ps
の項目に平文で表示できます。
OpenStack のパスワードを対話的に入力して、パスワードを平文で保存することを避けることもできます。
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.