ベアメタルノードの管理

ベアメタルノードの管理

OpenStack Compute のベアメタルドライバーは、Orchestration (Heat) のような、一般的なクラウド API やツールを使用することにより、物理サーバーへの配備を管理できます。このドライバーのユースケースは、HPC クラスターのような単一プロジェクトクラウドや OpenStack 自身のデプロイメントの用途です。

ベアメタルドライバーを使用する場合、ネットワークインターフェースを作成し、それをベアメタルノードに追加する必要があります。その後、ベアメタルイメージからインスタンスを起動できます。

ベアメタルノードの一覧表示や削除が可能です。ノードを削除すると、関連付けられているネットワークインターフェースも削除されます。ベアメタルノードに関連付けられているネットワークインターフェースを一覧表示、削除することができます。

コマンド

以下のコマンドは、ベアメタルノードを管理するために使用できます。

baremetal-interface-add
ベアメタルノードにネットワークインターフェースを追加します。
baremetal-interface-list
ベアメタルノードに関連付けられているネットワークインターフェースを表示します。
baremetal-interface-remove
ベアメタルノードからネットワークインターフェースを削除します。
baremetal-node-create
ベアメタルノードを作成します。
baremetal-node-delete
ベアメタルノードと関連付けられているインターフェースを削除します。
baremetal-node-list
利用可能なベアメタルノードを一覧表示します。
baremetal-node-show
ベアメタルノードの情報を表示します。

ベアメタルノードの作成

ベアメタルノードを作成する場合、お使いのハードウェアの BIOS/IPMI で設定されている PM アドレス、ユーザー名、パスワードと同じ物を使用する必要があります。

$ nova baremetal-node-create --pm_address PM_ADDRESS --pm_user PM_USERNAME \
  --pm_password PM_PASSWORD $(hostname -f) 1 512 10 aa:bb:cc:dd:ee:ff

以下の例は、物理マシンアドレス 1.2.3.4、ユーザー名 ipmi、パスワード ipmi を持つノードを作成するコマンドと実行結果です。

$ nova baremetal-node-create --pm_address 1.2.3.4 --pm_user ipmi \
  --pm_password ipmi $(hostname -f) 1 512 10 aa:bb:cc:dd:ee:ff
+------------------+-------------------+
| Property         | Value             |
+------------------+-------------------+
| instance_uuid    | None              |
| pm_address       | 1.2.3.4           |
| interfaces       | []                |
| prov_vlan_id     | None              |
| cpus             | 1                 |
| memory_mb        | 512               |
| prov_mac_address | aa:bb:cc:dd:ee:ff |
| service_host     | ubuntu            |
| local_gb         | 10                |
| id               | 1                 |
| pm_user          | ipmi              |
| terminal_port    | None              |
+------------------+-------------------+

ノードへのネットワークインターフェースの追加

ノードの各 NIC は、インターフェースの MAC アドレスを指定して、インターフェースを作成する必要があります。

$ nova baremetal-interface-add 1 aa:bb:cc:dd:ee:ff
+-------------+-------------------+
| Property    | Value             |
+-------------+-------------------+
| datapath_id | 0                 |
| id          | 1                 |
| port_no     | 0                 |
| address     | aa:bb:cc:dd:ee:ff |
+-------------+-------------------+

ベアメタルイメージからのインスタンスの起動

ベアメタルインスタンスは、物理マシンに直接作成されたインスタンスです。基盤として仮想化レイヤーを持っていません。Nova は IPMI 経由で電源を制御します。いくつかの場合、Nova は Neutron や OpenFlow 経由でネットワークを制御するかもしれません。

 $ openstack server create --image my-baremetal-image --flavor \
   my-baremetal-flavor test
 +-----------------------------+--------------------------------------+
 | Property                    | Value                                |
 +-----------------------------+--------------------------------------+
 | status                      | BUILD                                |
 | id                          | cc302a8f-cd81-484b-89a8-b75eb3911b1b |
 +-----------------------------+--------------------------------------+

... wait for instance to become active ...

注釈

--availability-zone パラメーターを設定して、サーバーを起動するゾーンまたはノードを指定します。ホスト名とゾーンはコンマで区切ります。例えば以下のようになります。

$ openstack server create --availability-zone zone:HOST,NODE

host--availability-zone パラメーターのオプションです。単に zone:,node と指定することもできます。コンマを使用することもできます。

ベアメタルノードとインターフェースの一覧表示

nova baremetal-node-list コマンドを使用して、すべてのベアメタルノードとインターフェースを表示します。ノードが使用中の場合、実行されているインスタンスの UUID もステータスに含められます。

$ nova baremetal-node-list
+----+--------+------+-----------+---------+-------------------+------+------------+-------------+-------------+---------------+
| ID | Host   | CPUs | Memory_MB | Disk_GB | MAC Address       | VLAN | PM Address | PM Username | PM Password | Terminal Port |
+----+--------+------+-----------+---------+-------------------+------+------------+-------------+-------------+---------------+
| 1  | ubuntu | 1    | 512       | 10      | aa:bb:cc:dd:ee:ff | None | 1.2.3.4    | ipmi        |             | None          |
+----+--------+------+-----------+---------+-------------------+------+------------+-------------+-------------+---------------+

ベアメタルノードの詳細を表示します。

nova baremetal-node-show コマンドを使用して、全ベアメタルノードとインターフェースを表示します。

$ nova baremetal-node-show 1
+------------------+--------------------------------------+
| Property         | Value                                |
+------------------+--------------------------------------+
| instance_uuid    | cc302a8f-cd81-484b-89a8-b75eb3911b1b |
| pm_address       | 1.2.3.4                              |
| interfaces       | [{u'datapath_id': u'0', u'id': 1,    |
|                  | u'port_no': 0,                       |
|                  | u'address': u'aa:bb:cc:dd:ee:ff'}]   |
| prov_vlan_id     | None                                 |
| cpus             | 1                                    |
| memory_mb        | 512                                  |
| prov_mac_address | aa:bb:cc:dd:ee:ff                    |
| service_host     | ubuntu                               |
| local_gb         | 10                                   |
| id               | 1                                    |
| pm_user          | ipmi                                 |
| terminal_port    | None                                 |
+------------------+--------------------------------------+
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.