これまでの連載では,
python-openstackclientと各コンポーネント(nova,neutronなど)のクライアント
python-openstackclientというプロジェクトは,
これにより,
$ keystone token-get 2>&1 | head -n 2 /Library/Python/2.7/site-packages/keystoneclient/shell.py:64: DeprecationWarning: The keystone CLI is deprecated in favor of python-openstackclient. For a Python library, continue using python-keystoneclient. 'python-keystoneclient.', DeprecationWarning)
OSCの注目すべき項目には次のものがあります。
- プラグインモジュール構造
- OpenStackコンポーネントのコマンド化と機能を拡張できる
- configファイル
- yamlで記載,
複数のクラウドを登録できる - longフォーマット
- 詳細な情報を表示可能
- (オプション:
“--long”) - カラム
(列) 指定 - 列のタイトルを指定し,
出力可能 - (例:
“-c 'ID'”) - 出力フォーマットの変更
- (オプション:
“-f <形式>”) - 形式:csv,
json, table, value, yaml, shellなど - シェルスクリプトの作成に大変便利な機能
- ガイドライン
「Machine Output Format」
- 形式:csv,
コマンド一覧をCLIで確認するには,
$ openstack command list -f yaml
コマンド体系を見る限り,
OpenStack CLIのインストール
OSCをインストールします。筆者の手元の環境
$ sudo easy_install pip $ sudo pip install python-openstackclient==1.7.1
CLIを使うには,
CLI環境変数
環境変数を使うことで,
$ cat osrc_conoha_us export OS_TENANT_NAME=gnct29999993 export OS_PASSWORD='hogehogeman2=' export OS_USERNAME=gncu29999993 export OS_AUTH_URL=https://identity.sjc1.conoha.io/v2.0 export PS1='(env_us)\$ ' $ source osrc_conoha_us (env_us)$
flavorリストの取得,imageリストの取得,ssh公開鍵の登録
まず,
(env_us)$ openstack flavor list -c 'Name' -c 'RAM' -f value | grep -i 2gb g-2gb 2048 (env_us)$ openstack image list -c 'Name' -f value | grep docker vmi-docker-1.8.1-ubuntu-14.04 (env_us)$ openstack keypair create --public-key ~/.ssh/id_rsa.pub my-rsa-key -f yaml
VMの作成
VMを作成します。ConoHaの現在のAPI仕様では,
Webパネルで表示させる名称は
(env_us)$ openstack server create --image vmi-docker-1.8.1-ubuntu-14.04 --flavor g-2gb --key-name my-rsa-key --property "instance_name_tag=docker_base" new-server -f value