ESXi 既存HDDをRDM(Raw Device Mapping)で追加

ファイルサーバーとしても使えるlinux。

たとえばデータ保管庫のような用途としてHDDを追加しようとした場合、VMFSという仮想化の肝となっているファイルシステムで運用すると、どうしてもパフォーマンスが落ち、そこが気になることも。
(もちろん、VMFSで運用するメリットはたくさんある)

そこで、VMFSのメリットを捨てでもパフォーマンスを重視し、RDM(Raw Device Mapping)という方法で追加してみることに。

早速作業開始、といきたいところだけれど、複数台HDDを追加するとなると、あとで画面上に表示される中で「どのHDDが追加したいHDD???」と迷うこと必至なので、追加するHDDの型番とシリアル番号は控えておくと吉。

控えた上で、HDDを接続しましょう。

さて、まず第一段階として、まずは vSphere Client からESXiで認識されているかを確認。

vSphereClientでHDD認識確認
「構成」→ハードウェア内の「ストレージ」→「デバイス」とたどって追加したHDDが見えていればOK。
vSphereClientのセキュリティプロファイルを開く
この後の作業はESXiシェルとSSHの有効化が必須。
有効化されていなければ、下記の手順で進めていく。

「構成」→ソフトウェア内の「セキュリティプロファイル」をクリック
サービスの右側にある「プロパティ」をクリック

vSphereClientのサービスのプロパティ
別ウィンドウが開くので、その中から「ESXiシェル」をクリック。
尚、このとき「実行中」になっているようならそれでよし。次の「SSH」を確認する。
で、ESXiシェルが「停止」となっているなら、「ESXiシェル」をクリックし、続いて「オプション」をクリック。
vSphereClient ESXiシェルの開始
再び別ウィンドウが開く。
今後、恒常的にESXiシェルを起動しておきたいのなら「起動ポリシー」内の「ホストに連動して開始及び停止」を選択。
ただ、個人的には普段使わないサービスは停止しておきたいので「手動で開始及び停止」を選択し、一連の作業が終了したら「停止」する、とした。

ということで、サービスコマンド内の「開始」をクリックして「OK」で「サービスのプロパティ」ウィンドウへ戻る

vSphereClient サービスのプロパティでESXiシェルが実行中になる
「ESXiシェル」が「実行中」になっていればOK。
vSphereClientのサービスのプロパティ
続いて「SSH」を有効化。
これも上のESXiシェルと作業内容は全く同じ。
「SSH」をクリックし、続いて「オプション」をクリック。
vSphereClient SSHの開始
やっぱり常時動かすものでもないと思うので、「手動で開始及び停止」を選択し、一連の作業が終了したら「停止」する、とした。

「開始」をクリックして「OK」で「サービスのプロパティ」ウィンドウへ戻る。

vSphereClient サービスのプロパティでSSHが実行中になる
「SSH」が「実行中」になればOK。

ここまでで「ESXiシェル」と「SSH」が有効化され動いている状態。

次はTeraTermなどSSHで接続できるクライアントからの操作。

TeraTermでESXiシェルに接続
定番中の定番、TeraTermでSSH接続。
TeraTermでESXiシェルにログイン
ここでのポイントは、ユーザー名に「root」、「チャレンジレスポンス認証を使う」とすること。
チャレンジレスポンス認証でパスワード入力
「SSH認証チャレンジ」というウィンドウが開かれるけど、ひるまずrootのパスワードを入力。
間違いがなければrootとしてESXiシェルにログイン完了。
TeraTermでSSH鍵を生成する
実はまだESXiの設定をいじるための準備段階。
とりあえずは、鍵の生成を。
TeraTerm TTSSH鍵の生成RSA
鍵の種類には「RSA」を選択して「生成」
TeraTerm TTSSH鍵の生成RSA パスフレーズの設定
ここでパスフレーズを入力するけど、決して忘れないように。
で、公開鍵と秘密鍵をそれぞれローカルに保存する。

公開鍵の登録

~ # cd /etc/ssh/keys-root
/etc/ssh/keys-root # cat > authorized_keys
(公開鍵(public key)のテキストをコピペし、[ctrl]+[D]で終了)
/etc/ssh/keys-root #
ESXiにSSHで再接続
SSHを接続し直す。
次に、RDMしたいHDDの設定ファイル(vmdkファイル)をデータストア内の仮想マシンが入ってるディレクトリに作成する。
そのためにはRDMしたいHDDがどれなのか調べなければならない。
# ls -l /vmfs/devices/disks/
で接続されているデバイス(HDD)が並ぶ。その中からRDMしたいHDDのパスを特定。
「t10.ATA」から始まるのがHDDで真ん中あたりがHDDの製品型番、末尾がシリアル番号になっている。
パスが特定できたら次のコマンドを。
# vmkfstools -z [RDMしたいHDDのパス] /vmfs/volumes/[データストア名]/[仮想マシン名]/[適当な名前].vmdk -a lsilogic
[RDMしたいHDDのパス]
と簡単に書いたけど、実際には↓こんな感じで長くなる。
/vmfs/devices/disks/t10.ATA_____[製品型番]__________________________[シリアル番号]
ほんと、このアンダーバーはなんなんでしょう・・・

とにかく、間違えないようにコピペで。

尚、仮想マシンのOSがWindowsXPの場合はアダプタ名称(オプションの-a)を「buslogic」にする

vSphereClientでゲストOSに認識させる
無事、vmdkファイルの作成が済んだら、作業は再び vSphereClient へ。

ゲストOSを右クリックし「設定の編集」

vSphereClientで仮想マシンの設定を編集
新しいウィンドウが開かれるので、「追加」をクリック
vSphereClientで仮想マシンにハードウェアを追加
さらに新しいウィンドウが開かれるので、その中の「ハードディスク」を選択して「次へ」
vSphereClientで仮想マシンにHDDを追加
「既存の仮想ディスクを使用」を選択して「次へ」
vSphereClientで仮想マシンにHDDを追加 vmdkファイルの選択
ここまでくると、ほぼ流れ作業。
ディスクファイルのパスはESXiにSSHで接続した時に作ったvmdkファイルを指定し、「次へ」
vSphereClientで仮想マシンにHDDを追加 デバイスノードとモードの選択
メッセージの通り、仮想デバイスノードは通常はそのままでOK。

また、「モード」に関してはRDMの場合は「独立型」の「通常」が良いかと。
「独立型」にしないと、スナップショットを取る時、RDMで接続しているディスクも対象になる。
それが好ましい場合には「独立型」にしない方がいいけど、データ保管庫のような使い方の場合、「独立型」にしてスナップショットの対象からは外しておいても良い。

vSphereClientで仮想マシンにHDDを追加 設定の最終確認
設定内容の最終確認。
間違いがなければ「終了」をクリックして完了~
vSphereClientで仮想マシンにHDDを追加  作業完了
ウィンドウは「仮想マシンのプロパティ」に戻る。
画面上では「新規ハードディスク(追加中)」とでるけど、実際にはすぐに処理は完了していて、「仮想マシンのプロパティ」をもう一度開き直してみると、他のデバイス同様、普通に接続されていることになる。

コメントを残す

メールアドレスが公開されることはありません。