Red Hat Training
A Red Hat training course is available for Red Hat OpenStack Platform
第3章 ベアメタルインスタンスの起動
登録済みのベアメタルノードで、物理マシンをプロビジョニングします。インスタンスは、コマンドラインまたは OpenStack Dashboard で起動することができます。
3.1. コマンドラインインターフェースを使用したインスタンスのデプロイ
nova コマンドラインインターフェースを使用してベアメタルインスタンスをデプロイします。
コマンドライン上でのインスタンスのデプロイ
Identity に管理ユーザーとしてアクセスするためのシェルを設定します。
# source ~/keystonerc_admin
インスタンスをデプロイします。
# nova boot --nic net-id=NETWORK_UUID --flavor FLAVOR_NAME --image IMAGE_UUID INSTANCE_NAME
以下の値を置き換えてください。
- NETWORK_UUID は、Bare Metal Provisioning で使用するために作成したネットワークの一意識別子に置き換えます。
- FLAVOR_NAME は、そのノード用に作成されたフレーバーの名前に置き換えます。
- IMAGE_UUID は、Image サービスにアップロードされているディスクイメージの一意識別子に置き換えます。
- INSTANCE_NAME は、ベアメタルインスタンスの名前に置き換えます。
インスタンスのステータスを確認します。
# nova list
3.2. Dashboard を使用したインスタンスのデプロイ
Dashboard のグラフィカルユーザーインターフェースを使用してベアメタルインスタンスをデプロイします。
Dashboard でのインスタンスのデプロイ
- https://DASHBOARD_IP/dashboard で Dashboard にログインします。
- プロジェクト > コンピュート > インスタンス をクリックします。
- インスタンスの起動 をクリックします。
詳細 タブで、以下のフィールドに必要事項を入力します。
- インスタンス名 を指定します。
- ベアメタルノード用に作成した フレーバー を選択します。
-
インスタンス数 のリストから
1
を選択します。 - インスタンスのブートソース のリストから イメージから起動 を選択します。
- イメージ名 のリストからオペレーティングシステムのディスクイメージを選択します。
- ネットワーク タブで、利用可能なネットワーク から 選択済みネットワーク に必要なネットワークをドラッグアンドドロップします。Bare Metal Provisioning 用に作成した共有ネットワークを選択するようにしてください。
- 起動 をクリックします。
3.3. Windows 全体のイメージの作成
以下の手順では、Windows Server 2012 のデプロイメントイメージを作成します。Red Hat Enterprise Linux システムで以下のステップを実行します。
virtio-win ドライバーをダウンロードします。必要な手順 については、Red Hat カスタマーポータルを参照してください。
この手順を実行すると、virtio-win .iso ファイルが /usr/share/virtio-win/ にダウンロードされます (例: /usr/share/virtio-win/virtio-win-1.8.0.iso)。
virt-manager を使用して Windows Server 2012 のテンプレートを作成します。
- Windows テンプレートの仮想ハードウェア要件を決定します。この例では、1 x CPU、4 GB メモリー、10 GB HDD、2 x NIC、2 x 仮想 CD-ROM ドライブを使用します。
- qcow2 ファイルとしてディスクを作成します。
-
仮想 HDD と NIC ドライバーの両方を
virtio
に設定します。 - 仮想 CD-ROM ドライブ 2 台をアタッチして、Windows Server 2012 R2 .iso ファイルと、virtio-win-1.8.0.iso ファイルをマウントします。Windows のインストールプロセスで virtio-win ドライブをインストールできるようにするために、仮想 CD-ROM が 2 台必要です。
ISO イメージから Windows を手動でインストールします。
- Windows Server 2012 R2 評価版の .iso イメージから Windows のインストールを起動します。
- HDD ドライバーを選択するように促された場合は、 virtio-win-1.8.0.iso ファイルを含む 2 番目の仮想 CD-ROM からドライバーを選択してください。
Windows のインストール後のチェックを実行します。
デバイスマネージャー を開き、すべてのデバイスが適切に認識されていることと、感嘆符 の警告が表示されていないことを確認します。特に、VirtIO を使用する NIC、シリアル、バルーンドライバーを確認してください。正しく認識されていないデバイスがある場合は、virtio-win ドライバーディスクからドライバーを適用します。
sysprep を実行します。
Sysprep は、Windows のインストールを一般化することで、以前実行した単一のインストールに固有のインストール情報を削除します。これにより、仮想マシンの仮想ハードディスクをテンプレートとして使用して、他のシステムに対して複数回インストールすることができます。
- C:\Windows\System32\sysprep\sysprep.exe から Sysprep を起動します。
以下の情報を Sysprep ツールに入力します。
- システムクリーンアップアクション 下で、システムの OOBE (Out-of-Box-Experience) に入る を選択します。
- 一般化 のチェックボックスを選択します。
- シャットダウン のオプションで シャットダウン を選択します。
- OK をクリックして sysprep プロセスを完了します。プロセスが完了すると、仮想マシンは自動的にシャットダウンします。
Image サービス (glance) に Windows のイメージを登録します。このステップで、glance に Windows インストールの qcow2 HDD を登録します。この例では、
/root/win2012r2.qcow2
というディスクファイルを使用します。$ glance image-create --file /root/win2012r2.qcow2 --disk-format qcow2 --container-format bare --name win2012r2 --is-public True --progress [=============================>] 100%
3.3.1. Windows の物理サーバーへのデプロイ
ハードウェアコンポーネントを指定して ironic に物理ノードを登録します。以下に例を示します。
# ironic node-create -d fake_pxe -p cpus=1 -p memory_mb=1024 -p local_gb=15 -p cpu_arch=amd64
新規ノードの UUID を取得します。
# ironic node-list
Windows の物理ノードの MAC アドレスに一致するノードのポートを作成します。
# ironic port-create -n [NODE_UUID] -a [NIC_MAC]
例:
# ironic port-create -n 3b3d3fd4-4621-427f-a78d-054a1ef17a0a -a 52:54:00:85:76:53
ノードをメンテナンスモードに切り替えます。
# ironic node-set-maintenance [NODE_UUID] true # ironic node-set-provision-state [NODE_UUID] manage
新規ノードの検査を行います。
# openstack baremetal introspection start [NODE_UUID] --discoverd-url http://[KEYSTONE_URL]:5050
[KEYSTONE_URL]
は、keystone サービスの IP アドレスに置き換えます。注記: FAKE_PXE ドライバーを使用する場合は、ironic node-list の状態が
deploy wait-callback
に変化した後に、手動でノードの電源を入れてください。
検査が完了したら、メンテナンスモードをオフにしてください。
# ironic node-set-maintenance [NODE UUID] false # ironic node-set-provision-state [NODE UUID] provide
インスタンスへの認証用キーペアを作成します。
# nova keypair-add --pub_key ~/.ssh/id_rsa.pub [KEY_NAME]
ノードのローカルブートを有効化します。
# ironic node-update [NODE_UUID] add properties/capabilities="boot_option:local"
nova を使用してノードを起動します。
# nova boot --nic net-id=[NETWORK_UUID] --flavor [FLAVOR_NAME] --image [IMAGE_UUID/IMAGE_NAME] --keyname [INSTANCE_NAME]
以下の値を置き換えてください。
-
[NETWORK_UUID]
は、Bare Metal Provisioning で使用するために作成したネットワークの一意識別子に置き換えます。 -
[FLAVOR_NAME]
は、そのノード用に作成されたフレーバーの名前に置き換えます。 -
[IMAGE_UUID]
は、Image サービスにアップロードされているディスクイメージの一意識別子に置き換えます。 -
[INSTANCE_NAME]
は、ベアメタルインスタンスの名前に置き換えます。
-
インスタンスのパスワードを取得します。
# nova get-password [INSTANCE_NAME] /path/to/your/keypairs/private/key
インスタンスのステータスを確認します。
# nova list
Dashboard のコンソールを使用してインスタンスにアクセスすることで、さらにテストすることができます。
3.3.2. リモートデスクトップアクセスの有効化
-
TCP/UDP 3389
で リモートデスクトップ のトラフィックを 許可するセキュリティーグループルールを追加します。 nova コマンドを使用して、セキュリティーキーを取得します。
# nova get-password [INSTANCE_NAME] /path/to/your/keypairs/private/key
-
[INSTANCE_NAME]
は、ベアメタルインスタンスの名前に置き換えます。
-