OpenStack は、ISO イメージを使用したインスタンスの起動をサポートします。ただし、そのようなインスタンスを動作させる場合、openstack server create コマンドに以下のパラメーターを加えて、インスタンスを起動します。
$ openstack server create --image ubuntu-14.04.2-server-amd64.iso \
--nic net-id = NETWORK_UUID \
--flavor 2 INSTANCE_NAME
+--------------------------------------+--------------------------------------------+
| Field | Value |
+--------------------------------------+--------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-SRV-ATTR:host | - |
| OS-EXT-SRV-ATTR:hypervisor_hostname | - |
| OS-EXT-SRV-ATTR:instance_name | instance-00000004 |
| OS-EXT-STS:power_state | 0 |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | - |
| OS-SRV-USG:terminated_at | - |
| accessIPv4 | |
| accessIPv6 | |
| adminPass | ZaiYeC8iucgU |
| config_drive | |
| created | 2015-06-01T16:34:50Z |
| flavor | m1.small (2) |
| hostId | |
| id | 1e1797f3-1662-49ff-ae8c-a77e82ee1571 |
| image | ubuntu-14.04.2-server-amd64.iso |
| key_name | - |
| metadata | {} |
| name | INSTANCE_NAME |
| os-extended-volumes:volumes_attached | [] |
| progress | 0 |
| security_groups | default |
| status | BUILD |
| tenant_id | ccef9e62b1e645df98728fb2b3076f27 |
| updated | 2014-05-09T16:34:51Z |
| user_id | fef060ae7bfd4024b3edb97dff59017a |
+--------------------------------------+--------------------------------------------+
このコマンドでは、ubuntu-14.04.2-server-amd64.iso
が ISO イメージ、INSTANCE_NAME
が新しいインスタンスの名前、NETWORK_UUID
がシステムの有効なネットワーク ID です。
インスタンスがシャットダウン後に保存される、ブート可能なボリュームを作成します。
ボリュームを作成します。
$ openstack volume create \
--size <SIZE_IN_GB> \
--bootable VOLUME_NAME
インスタンスにボリュームを接続します。
$ openstack server add volume
INSTANCE_NAME \
VOLUME_NAME \
--device /dev/vda
注釈
インスタンスのシャットダウン後も保護するために、Block Storage サービスが必要になります。--block-device
引数は、古い nova boot コマンドで使用され、openstack server create コマンドでは動作しません。代わりに、openstack volume create コマンドと openstack server add volume コマンドを使用して、永続ストレージを作成します。
インスタンスの正常起動後、リモートコンソールを使用してインスタンスに接続します。以下の説明に沿って、通常のコンピューターにおいて ISO イメージを使用するのと同じように、システムをインストールします。インストールが完了し、システムが再起動した後、インスタンスに再びオペレーティングシステムをインストールするかどうかを確認されます。これは、インスタンスが利用できないことを意味します。イメージの作成に問題があれば、リファレンスとして Virtual Machine Image Guide を参照してください。
ここで以下の手順に沿って、ISO イメージを使用して作成したインスタンスを実際に動作するようにします。
以下のコマンドを使用して、インスタンスを削除します。
$ openstack server delete INSTANCE_NAME
インスタンスを削除した後、ISO イメージを使用してインストールしたシステムが残ったままになります。これは、以下のコマンドを実行して、shutdown=preserve
パラメーターが設定されているためです。
$ openstack volume list
+--------------------------+-------------------------+-----------+------+-------------+
| ID | Display Name | Status | Size | Attached to |
+--------------------------+-------------------------+-----------+------+-------------+
| 8edd7c97-1276-47a5-9563- |dc01d873-d0f1-40b6-bfcc- | available | 10 | |
| 1025f4264e4f | 26a8d955a1d9-blank-vol | | | |
+--------------------------+-------------------------+-----------+------+-------------+
お使いのシステムにあるボリュームの一覧を取得します。この一覧では、インスタンスを作成した ISO に接続されたボリュームを見つけられます。そのボリュームは、bootable プロパティーが false になっています。
ボリュームを glance にアップロードします。
$ openstack image create --volume SOURCE_VOLUME IMAGE_NAME
$ openstack image list
+-------------------+------------+--------+
| ID | Name | Status |
+-------------------+------------+--------+
| 74303284-f802-... | IMAGE_NAME | active |
+-------------------+------------+--------+
SOURCE_VOLUME
は、インスタンスを作成した ISO に接続されたボリュームの UUID または名前です。IMAGE_NAME
は、新しいイメージに与える名前です。
イメージが正常にアップロードされた後、新しいイメージを使用してインスタンスを起動できます。
このイメージを使用して起動したインスタンスは、ISO イメージを使用してインストールしたシステムが入っています。
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.