5.3. ブート可能なボリュームからのインスタンスの作成
ブートソースとしてブート可能なボリュームを使用して、インスタンスを作成することができます。障害発生時にインスタンスデータの可用性を改善する必要がある場合は、ボリュームからインスタンスをブートします。
インスタンスディスクのデータにブロックストレージボリュームを使用する場合、ブロックストレージボリュームは、インスタンスが新規ボリュームの作成を要求する新規イメージで再ビルドされる場合でも、インスタンスの再ビルド後に維持されます。
API マイクロバージョン 2.94 では、サーバーの作成、更新、またはリビルド時にオプションのインスタンスホスト名を渡す場合、完全修飾ドメイン名 (FQDN) を使用してホスト名を指定できます。FQDN を使用する場合は、メタデータ API のホスト名フィールドに正しい FQDN が表示されるように、[api]dhcp_domain 設定オプションが空の文字列に設定されていることを確認してください。デフォルトでは、ホスト名は表示名から正規化され、ホスト名から "." がすべて削除されて "_" に置き換えられます。
前提条件
-
管理者がプロジェクトを作成し、管理者からクラウドにアクセスするための
clouds.yamlファイルが提供されている。 -
python-openstackclientパッケージがインストールされている。
手順
インスタンスが要求するソフトウェアプロファイルを持つイメージの名前または ID を取得します。
$ openstack image list必要なイメージが利用できない場合は、新しいイメージをダウンロードまたは作成できます。クラウドイメージを作成またはダウンロードする方法は、ストレージ操作の実行 の RHEL KVM イメージの作成 を参照してください。
注記26 を超えるボリュームをインスタンスにアタッチする必要がある場合は、インスタンスの作成に使用するイメージに以下のプロパティーが必要です。
-
hw_scsi_model=virtio-scsi -
hw_disk_bus=scsi
-
イメージからブート可能なボリュームを作成します。
$ openstack volume create --image <image> \ --size <size_gb> --bootable myBootableVolume-
<image>を、ステップ 1 で取得したボリュームに書き込むイメージの名前または ID に置き換えてください。 -
<size_gb>をボリュームのサイズ (GB 単位) に置き換えます。
-
インスタンスが要求するハードウェアプロファイルを持つフレーバーの名前または ID を取得します。
$ openstack flavor listインスタンスを接続するネットワークの名前または ID を取得します。
$ openstack network listブート可能なボリュームでインスタンスを作成します。
$ openstack server create --flavor <flavor> \ --volume myBootableVolume --network <network> \ --wait myInstanceFromVolume-
<flavor>を、ステップ 3 で取得したフレーバーの名前または ID に置き換えてください。 -
<network>を、ステップ 4 で取得したネットワークの名前または ID に置き換えてください。必要に応じて、--networkオプションを複数回使用して、インスタンスを複数のネットワークに接続することができます。
-