Openstackクライアントについて

警告

本章はお客様クライアントの設定など、サポート対象外の部分の記述を多く含みます。 必ずお客様ご自身で編集前やインストール前に、設定のバックアップや設定項目の理解をされた上でのご実施をお願い致します。 また、本ソフトウェアに関しては、あくまで記載した環境での動作を確認したものを掲載しております。 オープンソースソフトウェアに関する記載が含まれており、弊社では動作保証、サポートなどをいたしかねますこと、予めご了承ください。

概要

Smart Data Platform では、OpenStackに互換性のあるAPIにて利用可能なAPIクライアントである OpenStackClient (以下, 略称OSCとして呼称) を Smart Data Platform においてご利用頂く場合のセットアップ方法について、説明します。

OpenStackClientはOpenStack (Nova, Cinder, Keystone等の複数のサービス) を利用するためのCUIクライアントです。 以下、基本的な操作をコマンドラインより実施可能な、OSC (2.6.0)をUbuntu 14.0.2 minimal上でセットアップする方法について記載します。

OSCの利用

OSCのダウンロード、セットアップ

OSCをインストールします。

# sudo apt-get update
# sudo apt-get install python-pip gcc python-dev python-pip python-setuptools
# sudo pip install pytz
# sudo pip install python-openstackclient

注釈

pipでインストールする場合、Pythonのバージョンを確認してください。 OSC 2.6.0時点で、Python 3系はサポートされていません。

注釈

通常、pipパッケージの依存関係は自動で解決されますが、解決されない場合にはエラーログを確認しながら解決を行ってください。 python-openstackclientのインストールに失敗した場合は、一度pip環境をクリーンアップし、依存関係でエラーが出たものを先に解決してから再度インストールを実施することを推奨します。 上記手順のうち、 pytz のインストールは依存関係解決でエラーが出るため、先にインストールを行っています。

次に、OSCの設定ファイルを作製します。

# mkdir -p ~/.config/openstack/
# touch ~/.config/openstack/clouds.yaml

下記の設定サンプルを参考にお客様の設定ファイルを yaml形式 で作成します。全角スペースや余計な半角スペースなどが入らないよう、vimなどのテキストエディタを利用することをおすすめします。(サンプルファイル内、$は変数を表し、お客様固有のパラメータを入力する必要があります。) ハイライトされた行の値を設定する必要があります。($から始まる文字は変数です。お客様ご自身の環境に合わせ、ご変更ください。)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
clouds:
  ecl2:
    auth:
      auth_url: $AuthURL
      project_id: $TenantID
      username: $Sample-User
      password: $Sample-User-Password
    identity_api_version: 3
    region_name: $Region-Code
    interface: public
    project_domain_name: Default
    user_domain_name: Default

設定が終わったら、コマンドを利用可能です。

動作の確認

ここでは、 list image API ( image list コマンド ) を利用し、現在のアカウントから利用可能なイメージの一覧を取得し動作を確認します。まず、下記コマンドを利用してOSCシェルに入ります。

$ openstack --os-cloud ecl2
(openstack)

次に、image list コマンドを利用して、イメージの一覧を表示します。オフィシャルイメージなどを含むリストが表示されれば成功です。

(openstack) image list
+--------------------------------------+----------------------------------------------------------------------+--------+
| ID                                   | Name                                                                 | Status |
+--------------------------------------+----------------------------------------------------------------------+--------+
| cae83324-92b3-487f-97e1-1725a30cda57 | CoreOS-835.9.0_64_baremetal-server_01                                | active |
| e212522f-3a0b-4735-a14c-ba600fca057a | WindowsServer-2012R2_Standard_64_include-license_virtual-server_10   | active |
| bf93870e-85cd-401a-aa2c-cef4af63d2e1 | CentOS-7.1-1503_64_virtual-server_00                                 | active |
| c2808326-4711-4054-8251-cc472b8b29e4 | Ubuntu-14.04.1_64_virtual-server_00                                  | active |
| 650b4732-d430-4b00-a7c6-93237ad864df | WindowsServer-2012R2_Standard_64_BYOL_baremetal-server_01            | active |
| 3b943219-4210-4da5-8163-f6256585ab92 | RedHatEnterpriseLinux-7.1_64_BYOL_baremetal-server_01                | active |
| 6ba2ef25-059a-44c9-aadf-912c7ff06cde | ESXi-5.5.u3a_64_BYOL_baremetal-server_01                             | active |
| ad057e07-a9a3-440f-bc84-4658a5ea381d | WindowsServer-2012R2_Datacenter_64_BYOL_baremetal-server_01          | active |
| 60b36f46-9c93-41d6-b7f7-8797da160741 | CentOS-7.1-1503_64_baremetal-server_01                               | active |
| ebefa62e-3075-497d-b00f-48ad305b5591 | WindowsServer-2012R2_Standard_64_include-license_baremetal-server_01 | active |
| e9ae86d5-fc9d-42a6-9018-2b796600b3f4 | Ubuntu-14.04.1_64_baremetal-server_01                                | active |
| 5b9f9ad7-f5b7-4404-a92c-ee98611d6046 | RedHatEnterpriseLinux-7.1_64_include-license_baremetal-server_01     | active |
| d8087804-0a74-4c7b-b0e1-b4094fbc9cf3 | Ubuntu-14.04.1-server-amd64.iso                                      | active |
+--------------------------------------+----------------------------------------------------------------------+--------+

OSCの詳細な利用方法については、公式ドキュメントopenstack -h で表示されるヘルプを参照してください。

警告

Smart Data Platform ではOpenStackにおける "_admin_" ロールを必要とするAPIは利用することが出来ません。詳細は各APIリファレンスを参照してください。

脚注

[1]Apache 2.0 License で配布されるOSSソフトウェアです。OpenStack準拠のAPIに対し利用が可能です。