事前準備
次の記事を参照し、Python APIの導入と環境変数のセットまで終わらせておいてください。
OpenStack Python APIでCinderボリュームを作成する
OpenStackのCLI(コマンドラインインタフェース)はPython APIを導入すると利用できるようになります。CLIを実行するとPython APIを呼び出すようになっています。ボリュームを作成する
次のコマンドを実行して、1GBのボリュームを作成してみましょう。「matsuos-vol1」という名前のボリュームが1つ作成されます。$ cinder create 1 --display-name matsuos-vol1
ubuntu@matsuos-cluster-1:~/openstack$ cinder create 1 --display-name matsuos-vol1
+---------------------+--------------------------------------+
| Property | Value |
+---------------------+--------------------------------------+
| attachments | [] |
| availability_zone | nova |
| bootable | false |
| created_at | 2016-03-27T20:50:56.207319 |
| display_description | None |
| display_name | matsuos-vol1 |
| encrypted | False |
| id | 924e30b2-4379-4594-a403-1463055c6ecf |
| metadata | {} |
| multiattach | false |
| size | 1 |
| snapshot_id | None |
| source_volid | None |
| status | creating |
| volume_type | None |
+---------------------+--------------------------------------+
次のコマンドを実行して、ボリュームの一覧を表示します。
$ cinder list
ubuntu@matsuos-cluster-1:~/openstack$ cinder list
+--------------------------------------+-----------+--------------+------+-------------+----------+-------------+
| ID | Status | Display Name | Size | Volume Type | Bootable | Attached to |
+--------------------------------------+-----------+--------------+------+-------------+----------+-------------+
| 924e30b2-4379-4594-a403-1463055c6ecf | available | matsuos-vol1 | 1 | None | false | |
+--------------------------------------+-----------+--------------+------+-------------+----------+-------------+
次のコマンドを実行して、ボリュームの詳細情報を表示します。
$ cinder show <volume id>
ubuntu@matsuos-cluster-1:~/openstack$ cinder show 924e30b2-4379-4594-a403-1463055c6ecf
+---------------------------------------+--------------------------------------+
| Property | Value |
+---------------------------------------+--------------------------------------+
| attachments | [] |
| availability_zone | nova |
| bootable | false |
| created_at | 2016-03-27T20:50:56.000000 |
| display_description | None |
| display_name | matsuos-vol1 |
| encrypted | False |
| id | 924e30b2-4379-4594-a403-1463055c6ecf |
| metadata | {} |
| multiattach | false |
| os-vol-host-attr:host | ds0015@rbd_volumes#rbd_volumes |
| os-vol-mig-status-attr:migstat | None |
| os-vol-mig-status-attr:name_id | None |
| os-vol-tenant-attr:tenant_id | 588ce32358c4494088c070548f1f233a |
| os-volume-replication:driver_data | None |
| os-volume-replication:extended_status | None |
| size | 1 |
| snapshot_id | None |
| source_volid | None |
| status | available |
| volume_type | None |
+---------------------------------------+--------------------------------------+
インスタンスにアタッチする
作成したボリュームの仮想インスタンスに接続(アタッチ)してみましょう。次のコマンドを実行します。
$ nova volume-attach <Server Name> <Volume ID>
ubuntu@matsuos-cluster-1:~/openstack$ nova volume-attach matsuos-cluster-1 924e30b2-4379-4594-a403-1463055c6ecf
+----------+--------------------------------------+
| Property | Value |
+----------+--------------------------------------+
| device | /dev/vdb |
| id | 924e30b2-4379-4594-a403-1463055c6ecf |
| serverId | 3ff875cc-3415-495a-ac4c-e4c264a2f159 |
| volumeId | 924e30b2-4379-4594-a403-1463055c6ecf |
+----------+--------------------------------------+
/dev/vdbという名前のデバイスが作成されて仮想インスタンスから見えるようになりました。
ファイルシステムを作成する
アタッチしたボリュームにファイルシステムを作成します。
次のコマンドを実行します。
$ sudo mkfs -t ext4 /dev/vdb
ubuntu@matsuos-cluster-1:~/openstack$ sudo mkfs -t ext4 /dev/vdb
mke2fs 1.42.9 (4-Feb-2014)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
マウントする
最後にマウントして、OSから利用できるようにします。$ sudo mount /dev/vdb /home/ubuntu/data_store -t ext4
ubuntu@matsuos-cluster-1:~/openstack$ sudo mount /dev/vdb /home/ubuntu/data_store -t ext4
dfコマンドを実行して、マウントされたファイルシステムを確認してみましょう。
$ df
ubuntu@matsuos-cluster-1:~/openstack$ df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 1020076 12 1020064 1% /dev
tmpfs 205008 352 204656 1% /run
/dev/disk/by-label/cloudimg-rootfs 20608636 1003696 18735340 6% /
none 4 0 4 0% /sys/fs/cgroup
none 5120 0 5120 0% /run/lock
none 1025020 0 1025020 0% /run/shm
none 102400 0 102400 0% /run/user
/dev/vdb 999320 1284 929224 1% /home/ubuntu/data_store
最後の行に/dev/vdbが/home/ubuntu/data_storeにマウントされていることがわかります。
0 件のコメント:
コメントを投稿