このエントリーをはてなブックマークに追加

8.1.2. novaコマンド

Openstackのコマンドは数多く有ります。
このページは nova のコマンドについて記述します。

8.1.2.1. 環境変数について

nova コマンドを利用するためには環境変数のファイルを作成して読み込ませるなどしたほうがコマンド実行時にいちいち指定する必要がなくなり便利になります。

変数名 設定例 備考
OS_USERNAME admin プロジェクトのユーザを設定します。 Keystone に設定したものになります。
OS_PASSWORD password ユーザのパスワードを設定します。 Keystone に設定したものになります。
OS_TENANT_NAME admin nova コマンドを実行するテナント名を設定します。プロジェクト名のことになります。こちらも Keystone に設定したものになります。
OS_AUTH_URL http://stack01:5000/v2.0/ /etc/nova/api-paste.ini に設定したものを設定します。

例えば以下のようなファイルを作成して nova コマンド実行前に実行しておきます。

$ cat << 'NOVARC' | sudo tee -a /home/stack/novarc > /dev/null
export OS_USERNAME=admin
export OS_PASSWORD=password
export OS_TENANT_NAME=admin
export OS_AUTH_URL=http://stack01:5000/v2.0/
NOVARC
$ chmod 600 /home/stack/novarc
$ . /home/stack/novarc
$ nova list

8.1.2.2. その他の環境変数について

他にも環境変数がありますので記述します。

変数名 設定例 備考
OS_REGION_NAME RegionOne リージョン名を設定します。
SERVICE_TYPE   サービスタイプを設定します。
SERVICE_NAME   サービス名を設定します。
EDNPOINT_TYPE   エンドポイントのタイプを設定します。
VERSION 1.1 NOVAのバージョンを設定します。
USERNAME   非推奨の設定項目のため削除されるはずです。
REGION_NAME RegionOne 非推奨の設定項目のため削除されるはずです。
APIKEY   非推奨の設定項目のため削除されるはずです。
PROJECTID   非推奨の設定項目のため削除されるはずです。
URL   非推奨の設定項目のため削除されるはずです。

8.1.2.3. コマンド

nova コマンドは非常に多いですがコマンドラインで Openstack を利用する際には絶対に必要になります。
全てを覚えておく必要はありませんがよく使うコマンドは覚えておくに越したことは無いでしょう。
コマンド 概要 備考
nova absolute-limits ユーザの設定値の限界を表示する  
nova actions <server> サーバのアクションを取得する  
nova add-fixed-ip <server> <network_id> 内部ネットワークの新規追加を行う 内部ネットワークは nova.conf で記述してあるのであまり利用しないと思います
nova add-floating-ip <server> <address> nova floating-ip-create で作成したフローティングIPをサーバに付与する <server>Name でなく ID を指定します。
nova aggregate-add-host <id> <host> ホストを指定された ID のアグリゲートへ追加する  
nova aggregate-create <name> <availability_zone> availability_zone に指定した名前のアグリゲートを作成する  
nova aggregate-delete <id> 指定した ID のアグリゲートを削除する  
nova aggregate-details <id> 指定した ID のアグリゲートの詳細を表示する  
nova aggregate-list アグリゲートのリストを表示する  
nova aggregate-remove-host <id> <host> アグリゲートからホストを削除する  
nova aggregate-set-metadata <id> <key=value> [<key=value> ...] アグリゲートに関するメタデータを設定する  
nova aggregate-update <id> <name> [<availability_zone>] アグリゲートの名前、 availability_zone の名前を変更する  
nova boot
[–flavor <flavor>]
[–image <image>]
[–meta <key=value>]
[–file <dst-path=src-path>]
[–key_name <key_name>]
[–user_data <user-data>]
[–availability_zone <availability-zone>]
[–security_groups <security_groups>]
[–block_device_mapping <dev_name=mapping>]
[–hint <key=value>]
[–nic <net-id=net-uuid,v4-fixed-ip=ip-addr>]
[–config-drive <value>] [–poll]
<name>
インスタンスを起動する オプションが非常に多いので別途スクリプトを作成しておいたほうがいいかもしれません。
nova cloudpipe-create <project> プロジェクトのクラウドパイプインスタンスを作成する  
nova cloudpipe-list クラウドパイプインスタンスのリストを表示する  
nova console-log [–length <length>] <server> インスタンスのログを表示する length で表示する行数を指定します。 <server>ID でなく Name で問題ありません。
nova credentials 実行しているユーザの認証情報を表示する  
nova delete <server> 実行しているインスタンスを削除する 削除なので注意する必要があります。停止ではありません。<server>Name で指定出来ます。
nova describe-resource <hostname> 指定したホストのリソース情報を表示する  
nova diagnostics <hostname> 指定したホストの診断を行う HTTP 500で動きませんでした。
nova dns-create [–type <type>] <ip> <name> <domain> ドメイン名とIPのDNSエントリを作成する  
nova dns-create-private-domain [–availability_zone <availability_zone>] <domain> プライベートDNSドメインを作成する  
nova dns-create-public-domain [–project <project>] <domain> パブリックDNSドメインを作成する  
nova dns-delete <domain> <name> DNSエントリを削除する  
nova dns-delete-domain <domain> DNSドメインを削除する  
nova dns-domains Print a list of available dns domains. 利用可能なDNSドメインのリストを表示する  
nova dns-list [–ip <ip>] [–name <name>] <domain> DNSドメインとIPアドレスまたはドメインと名前を表示する  
nova endpoints 認証されているエンドポイントを表示する  
nova flavor-create
[–ephemeral <ephemeral>]
[–swap <swap>]
[–rxtx-factor <factor>]
<name> <id> <ram> <disk> <vcpus>
flavorを作成する
nova-manage でも flavor は作成できます。
nova-manage のほうがオプションが明示的なのでわかりやすいかもしれません。
nova flavor-delete <id> flavorを削除する  
nova flavor-list flavorのリストをを表示する  
nova floating-ip-create インスタンスへ割り当てるフローティングIPを割り当てる 割り当て後に nova add-floating-ip でインスタンスへ付与して利用します。
nova floating-ip-delete <address> フローティングIPを解除する 解除する前にインスタンスへ付与しているものを nova remove-floating-ip で切り離している必要があります。
nova floating-ip-list nova floating-ip-create で割り当てたインスタンスへ付与出来るIPリストを表示する  
nova floating-ip-pool-list List all floating ip pools. フローティングIPプールを表示する プールじゃなしにIPアドレスリストを確認したいです。
nova get-vnc-console <server> <console_type> VNCで接続するための情報(URL)を取得する server には Name console_typenovnc もしくは xvpvnc を指定します。
nova host-action [–action <action>] <hostname> ホストに対する電源アクションを実行する(インスタンスではない)  
nova host-update [–status <status>] [–maintenance <maintenance_mode>] <hostname> ホストの設定を更新する メンテナンスモードにしてComputteNodeから切り離したりします。
nova image-create [–poll] <server> <name> 稼働中のインスタンスのスナップショットを作成する 稼働中のインスタンスはしばらく利用できなくなります。
nova image-delete <image> イメージを削除する image はリストの Name を指定します。
nova image-list ブート可能なイメージのリストを表示する  
nova image-meta <image> <action> <key=value> [<key=value> ...] イメージのメタデータを設定、削除します  
nova image-show <image> イメージの詳細情報を表示する  
nova keypair-add [–pub_key <pub_key>] <name> インスタンスへSSHのパス無し認証を実行する際のキーペアを作成する 名前と同じファイルにリダイレクトして利用します。
nova keypair-delete <name> キーペアを削除する  
nova keypair-list キーペアのリストを表示する  
nova list 稼働中(停止していても)のインスタンスを表示する  
nova live-migration [–block_migrate] [–disk_over_commit] <server> <host> インスタンスのライブマイグレーションを行う  
nova lock インスタンスをロックする nova unlock でアンロックします。
nova meta <server> <action> <key=value> [<key=value> ...] インスタンスのメタデータを設定、削除する  
nova migrate [–poll] <server> インスタンスのマイグレートを行う  
nova pause インスタンスの一時停止を行う nova unpause で再開します。
nova quota-class-show <class> クオータクラスのリストを表示する  
nova quota-class-update
[–instances <instances>]
[–cores <cores>]
[–ram <ram>] [–volumes <volumes>]
[–gigabytes <gigabytes>]
[–floating-ips <floating_ips>]
[–metadata-items <metadata_items>]
[–injected-files <injected_files>]
[–injected-file-content-bytes <injected_file_content_bytes>]
<class>
クオータクラスのクオータをアップデートする  
nova quota-defaults <tenant_id>    
nova quota-show <tenant_id> テナントに対するクオータを表示する tenant_idkeystone tenant-list で確認できます。
nova quota-update
[–instances <instances>] [–cores <cores>]
[–ram <ram>] [–volumes <volumes>]
[–gigabytes <gigabytes>]
[–floating-ips <floating_ips>]
[–metadata-items <metadata_items>]
[–injected-files <injected_files>]
[–injected-file-content-bytes <injected_file_content_bytes>]
<tenant_id>
テナントに対するクオータ設定を更新する  
nova rate-limits ユーザのレート制限リストを表示する  
nova reboot [–hard] [–poll] <server> インスタンスの再起動を行う  
nova rebuild インスタンスのリビルド(初期化)を行う  
nova remove-fixed-ip <server> <address> インスタンスの内部IPを削除する  
nova remove-floating-ip <server> <address> インスタンスのフローティングIPを削除する  
nova rename <server> <name> インスタンスの名前を変更する  
nova rescue インスタンスを救出する adminPassValue が表示されるので root のパスワードなのかなと思ったんですが使えなかった。
nova resize [–poll] <server> <flavor> インスタンスのリサイズを行う  
nova resize-confirm <server> インスタンスのリサイズ前の確認を行う  
nova resize-revert <server> インスタンスのリサイズを変更まdの状態に戻す  
nova resume <server> サスペンドしたインスタンスを再開する サスペンドした時点でインスタンスはクローンされますのでクローンされたインスタンスが起動します。
nova root-password <server> インスタンスの root パスワードを変更する はずなのですが変わってない。。
nova secgroup-add-group-rule
[–ip_proto <ip_proto>]
[–from_port <from_port>]
[–to_port <to_port>]
<secgroup> <source_group>
セキュルティグループにグループルールを追加する  
nova secgroup-add-rule <secgroup> <ip_proto> <from_port> <to_port> <cidr> セキュリティグループに対するルールを追加する フローティングIPに対するルールです。
nova secgroup-create <name> <description> セキュリティグループを作成する  
nova secgroup-delete <secgroup> セキュリティグループを削除する  
nova secgroup-delete-group-rule
[–ip_proto <ip_proto>]
[–from_port <from_port>]
[–to_port <to_port>]
<secgroup> <source_group>
セキュリティグループからグループルールを削除する  
nova secgroup-delete-rule oup. <secgroup> <ip_proto> <from_port> <to_port> <cidr> セキュリティグループからルールを削除する  
nova secgroup-list セキュリティグループのリストを表示する  
nova secgroup-list-rules <secgroup> セキュリティグループの設定を表示する  
nova show <server> インスタンスの詳細情報を表示する  
nova ssh [–port PORT] [–private] [–ipv6] [–login <login>] <server> インスタンスへSSHで接続する 使い方がわからない
nova suspend <server> インスタンスをサスペンドする 実行中のサーバはサスペンドされず、新規にサスペンドされたインスタンスが作成されます。
nova unlock <server> インスタンスをアンロックする  
nova unpause <server> 停止していたインスタンスを再開する  
nova unrescue <server> インスタンスをアンレスキューする  
nova usage-list インスタンスの使用状況のリストを表示する  
nova volume-attach <server> <volume> <device> ボリュームをインスタンスへアタッチする  
nova volume-create
[–snapshot_id <snapshot_id>]
[–display_name <display_name>]
[–display_description <display_description>]
[–volume_type <volume_type>]
<size>
ボリュームを作成する  
nova volume-delete <volume> ボリュームを削除する  
nova volume-detach <server> <volume> インスタンスからボリュームをデタッチする  
nova volume-list ボリュームのリストを表示する  
nova volume-show <volume> ボリュームの詳細を表示する  
nova volume-snapshot-create
[–force <True|False>]
[–display_name <display_name>]
[–display_description <display_description>]
<volume_id>
ボリュームのスナップショットを作成する  
nova volume-snapshot-delete pshot_id> ボリュームのスナップショットを削除する  
nova volume-snapshot-list ボリュームのスナップショットのリストを表示する  
nova volume-snapshot-show <snapshot> ボリュームのスナップショットの詳細を表示する  
nova volume-type-create <name> ボリュームタイプを作成する  
nova volume-type-delete <id> ボリュームタイプを削除する  
nova volume-type-list ボリュームタイプのリストを表示する  
nova x509-create-cert テナントユーザのX509証明書を作成する  
nova x509-get-root-cert X509のルート証明書を取得する  
nova bash-completion 標準出力にコマンドとオプションを全て出力する  
nova that the    
nova help nova コマンドのヘルプを表示する  

8.1.2.4. コマンド実行例

よく使うコマンドの実行例を記述します。

8.1.2.4.1. キーペアの作成

イメージ作成時にSSHのパスワードを設定していない場合は鍵なし認証でしかログイン出来ません。
そのためSSHのキーペアが必要になりますので作成します。
$ cd
$ nova keypair-add mykey > mykey
$ chmod 600 mykey
$ nova keypair-list
+-------+-------------------------------------------------+
|  Name |                   Fingerprint                   |
+-------+-------------------------------------------------+
| mykey | bd:fb:0c:64:b8:9c:d7:e5:b4:55:d8:0d:30:f8:cc:45 |
+-------+-------------------------------------------------+

8.1.2.4.2. セキュリティグループへのルール追加

何も設定しないと外部ネットワークへサービスを提供出来ません。
ここではセキュリティグループ default へルールを追加します。

削除する場合は adddelete に変更すれば削除できます。

$ nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port |  IP Range | Source Group |
+-------------+-----------+---------+-----------+--------------+
| icmp        | -1        | -1      | 0.0.0.0/0 |              |
+-------------+-----------+---------+-----------+--------------+

$ nova  secgroup-add-rule default  tcp 22 22 0.0.0.0/0
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port |  IP Range | Source Group |
+-------------+-----------+---------+-----------+--------------+
| tcp         | 80        | 80      | 0.0.0.0/0 |              |
+-------------+-----------+---------+-----------+--------------+

$ nova  secgroup-add-rule default  tcp 80 80 0.0.0.0/0
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port |  IP Range | Source Group |
+-------------+-----------+---------+-----------+--------------+
| tcp         | 80        | 80      | 0.0.0.0/0 |              |
+-------------+-----------+---------+-----------+--------------+

$ nova secgroup-list-rules default
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port |  IP Range | Source Group |
+-------------+-----------+---------+-----------+--------------+
| icmp        | -1        | -1      | 0.0.0.0/0 |              |
| tcp         | 22        | 22      | 0.0.0.0/0 |              |
| tcp         | 80        | 80      | 0.0.0.0/0 |              |
+-------------+-----------+---------+-----------+--------------+

8.1.2.4.3. インスタンスの起動

作成した鍵を付与してインスタンスを起動します。FlavorとImageも指定が必要です。
何も設定しないと外部ネットワークへサービスを提供出来ません。
ここではセキュリティグループ default へルールを追加します。
$ nova image-list
+--------------------------------------+--------------+--------+--------+
|                  ID                  |     Name     | Status | Server |
+--------------------------------------+--------------+--------+--------+
| 66d99888-0554-4b03-97d4-a6202ae9f291 | ttylinux-ami | ACTIVE |        |
| d19907e6-4f29-4bec-a06b-b798e93e68dc | ttylinux-aki | ACTIVE |        |
| e60024bf-ba7c-4347-b336-eac0aa699eee | ttylinux-ari | ACTIVE |        |
+--------------------------------------+--------------+--------+--------+

$ nova flavor-list
+----+-----------+-----------+------+-----------+------+-------+-------------+
| ID |    Name   | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor |
+----+-----------+-----------+------+-----------+------+-------+-------------+
| 1  | m1.tiny   | 512       | 0    | 0         |      | 1     | 1.0         |
| 2  | m1.small  | 2048      | 10   | 20        |      | 1     | 1.0         |
| 3  | m1.medium | 4096      | 10   | 40        |      | 2     | 1.0         |
| 4  | m1.large  | 8192      | 10   | 80        |      | 4     | 1.0         |
| 5  | m1.xlarge | 16384     | 10   | 160       |      | 8     | 1.0         |
+----+-----------+-----------+------+-----------+------+-------+-------------+

$ TTY_LINUX_AMI=$(nova image-list | grep ttylinux-ami | awk '{print $2}')
$ nova boot --flavor 1 --image $TTY_LINUX_AMI tiny_001 --key_name mykey
+-------------------------------------+--------------------------------------+
|               Property              |                Value                 |
+-------------------------------------+--------------------------------------+
| OS-DCF:diskConfig                   | MANUAL                               |
| OS-EXT-SRV-ATTR:host                | stack01                              |
| OS-EXT-SRV-ATTR:hypervisor_hostname | None                                 |
| OS-EXT-SRV-ATTR:instance_name       | instance-0000000e                    |
| OS-EXT-STS:power_state              | 0                                    |
| OS-EXT-STS:task_state               | scheduling                           |
| OS-EXT-STS:vm_state                 | building                             |
| accessIPv4                          |                                      |
| accessIPv6                          |                                      |
| adminPass                           | fAwuQs2rHmnV                         |
| config_drive                        |                                      |
| created                             | 2012-04-01T08:41:43Z                 |
| flavor                              | m1.tiny                              |
| hostId                              |                                      |
| id                                  | 266ec61b-79c7-41cb-ac74-5bed831c5c28 |
| image                               | ttylinux-ami                         |
| key_name                            | mykey                                |
| metadata                            | {}                                   |
| name                                | tiny_001                             |
| progress                            | 0                                    |
| status                              | BUILD                                |
| tenant_id                           | a5f6eac6acf64ed09edb061ebd94675d     |
| updated                             | 2012-04-01T08:41:43Z                 |
| user_id                             | 7434e110e5244e80a1ed19d4cd78d47f     |
+-------------------------------------+--------------------------------------+

作成している過程を確認する場合は

$ sudo tail -f /var/log/nova/nova-compute.log
2012-04-01 17:41:49 INFO nova.virt.libvirt.connection [-] [instance: 266ec61b-79c7-41cb-ac74-5bed831c5c28] Instance spawned successfully.

以下のコマンドで確認した場合にインスタンスのステータスがACTIVEになる必要があります。

$ nova list
+--------------------------------------+------+--------+------------------------+
|                  ID                  | Name | Status |        Networks        |
+--------------------------------------+------+--------+------------------------+
| 018144d2-473b-47c8-8683-78c6cb8ee5f9 | SS   | ACTIVE | nova_network1=10.0.0.4 |
+--------------------------------------+------+--------+------------------------+

8.1.2.4.4. インスタンスへ接続

管理サーバからログインする場合はフローティングIPが無くてもインスタンス一覧(nova list)で確認したIPでログインできます。

$ ssh -i mykey root@IPアドレス

8.1.2.4.5. フローティングIPの付与

フローティングIPを付与したら外部ネットワークから鍵(ここではmykey)を利用してログインできるようになります。
付与するインスタンス名はnova listで確認しておきます。
floating-ip-createでIPを割り当て、associateでインスタンスにIPを付与することで利用可能になります。
$ sudo nova-manage float list
None    192.168.10.113  None    nova    eth0
None    192.168.10.114  None    nova    eth0
None    192.168.10.115  None    nova    eth0
None    192.168.10.116  None    nova    eth0
None    192.168.10.117  None    nova    eth0
None    192.168.10.118  None    nova    eth0
None    192.168.10.119  None    nova    eth0
None    192.168.10.120  None    nova    eth0
None    192.168.10.121  None    nova    eth0
None    192.168.10.122  None    nova    eth0
None    192.168.10.123  None    nova    eth0
None    192.168.10.124  None    nova    eth0
None    192.168.10.125  None    nova    eth0
None    192.168.10.126  None    nova    eth0

$ nova floating-ip-create
+----------------+-------------+----------+------+
|       Ip       | Instance Id | Fixed Ip | Pool |
+----------------+-------------+----------+------+
| 192.168.10.113 | None        | None     | nova |
+----------------+-------------+----------+------+

$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | ACTIVE | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

$ nova add-floating-ip 266ec61b-79c7-41cb-ac74-5bed831c5c28 192.168.10.113
$ nova list
+--------------------------------------+----------+--------+----------------------------------------+
|                  ID                  |   Name   | Status |                Networks                |
+--------------------------------------+----------+--------+----------------------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | ACTIVE | nova_network1=10.0.0.2, 192.168.10.113 |
+--------------------------------------+----------+--------+----------------------------------------+
IPの付与を解除する場合はまずインスタンスへの紐付を解除してデリートします。
その次にまたそのIPが利用できるようにします。
$ nova remove-floating-ip 266ec61b-79c7-41cb-ac74-5bed831c5c28 192.168.10.113
$ floating-ip-delete 192.168.10.113
$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | ACTIVE | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

8.1.2.4.6. インスタンスの状態

suspendかpauseでインスタンスを停止します。

deleteでインスタンスを削除します。

$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | ACTIVE | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

インスタンスのサスペンド

$ nova suspend tiny_001
$ nova list
+--------------------------------------+----------+-----------+------------------------+
|                  ID                  |   Name   |   Status  |        Networks        |
+--------------------------------------+----------+-----------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | SUSPENDED | nova_network1=10.0.0.2 |
+--------------------------------------+----------+-----------+------------------------+

インスタンスの再開

susupend で停止したものは resume で再開します。

$ nova resume 266ec61b-79c7-41cb-ac74-5bed831c5c28
$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | ACTIVE | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

インスタンスの一時停止

$ nova pause 266ec61b-79c7-41cb-ac74-5bed831c5c28
$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | PAUSED | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

インスタンスの再開

pause で一時停止したインスタンスは unpause で再開します。

$ nova unpause 266ec61b-79c7-41cb-ac74-5bed831c5c28
$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | ACTIVE | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

インスタンスの再起動

$ nova reboot 266ec61b-79c7-41cb-ac74-5bed831c5c28
$ nova list
+--------------------------------------+----------+--------+------------------------+
|                  ID                  |   Name   | Status |        Networks        |
+--------------------------------------+----------+--------+------------------------+
| 266ec61b-79c7-41cb-ac74-5bed831c5c28 | tiny_001 | REBOOT | nova_network1=10.0.0.2 |
+--------------------------------------+----------+--------+------------------------+

8.1.2.4.7. ボリュームの作成方法

インスタンスの追加ボリュームを作成します。

$ nova volume-create --display_name=vol1 --display_description=volume1 1

ボリュームの作成確認

ステータスが available になっている必要があります。

$ nova volume-list
+----+-----------+--------------+------+-------------+-------------+
| ID |   Status  | Display Name | Size | Volume Type | Attached to |
+----+-----------+--------------+------+-------------+-------------+
| 2  | available | vol1         | 1    | None        |             |
+----+-----------+--------------+------+-------------+-------------+

インスタンスへのアタッチ

インスタンス側で利用するにはアタッチする必要があります。
数字は最初がインスタンスのID、二番目がボリュームのIDです。
$ nova list
+--------------------------------------+---------+--------+------------------------+
|                  ID                  |   Name  | Status |        Networks        |
+--------------------------------------+---------+--------+------------------------+
| b912303b-869e-46df-a1ca-69d314393108 | tty_001 | ACTIVE | nova_network1=10.0.0.2 |
+--------------------------------------+---------+--------+------------------------+

$ nova volume-attach tty_001 2 /dev/vdb

インスタンス側でディスクを利用

$ ssh -i mykey root@IPアドレス
$ mkfs.ext3 /dev/vdb1
$ mkdir /mnt/iscsi
$ mount /dev/vdb1 /mnt/iscsi