クラウド接続ストレージとIaaSサーバのiSCSI接続

この記事での構成

ここでは、IaaSサーバからクラウド接続ストレージをiSCSIプロトコルを使用してマウントする方法をご紹介します。

使用する構成は下図になります

ブロックストレージのマウント

接続元サーバ側のiSCSIイニシエータの準備

接続元のサーバに対して、あらかじめパッケージをインストールし、iSCSIイニシエータを作成する必要があります。
作成したiSCSIイニシエータのiQN(InitiatorName) の値を、ポータルでのHost登録に利用します

RHEL/CentOSの場合

iSCSIイニシエータ作成に必要なパッケージをリポジトリからインストールします。

パッケージインストール後に作成されたiSCSIイニシエータの IQNを下記コマンドで確認し、 出力されたInitiatorName の値をコピー等で控えます。

IQN確認(CentOS/RHEL)

上記で取得した InitiatorName の値は、ポータルでのHost登録に利用します。

Ubuntsuの場合

iSCSIイニシエータ作成に必要なパッケージをリポジトリからインストールします。

パッケージインストール後に作成されたiSCSIイニシエータの IQNを下記コマンドで確認し、 出力されたInitiatorName の値をコピー等で控えます。

上記で取得した InitiatorName の値は、ポータルでのHost登録に利用します。

クラウド接続ストレージの設定

ポータルの切り替え

ここからの操作は、ポータル画面を「クラウド接続ストレージ」に切り替えて操作します。
ポータル画面右上のタブで対象をリソースプールからクラウド接続ストレージに変更します。

ポータル画面(クラウド接続ストレージ)

クラウド接続ストレージのHost登録

左メニューから「クラウドストレージ」ー「Host」を選択します。
ホスト画面で「ホスト新規作成」ボタンを押します

ホスト新規登録

ホスト情報を登録します。IQNには、サーバのiSCSIイニシエータインストールの手順で調べた InitiatorName の値を入力します。

ホスト新規作成
ホスト作成完了

Block Storage ボリューム作成

左メニューから「クラウドストレージ」ー「storage」を選択します。
ストレージ画面で「新規作成」タブから「ボリューム新規作成」を選択します。

ボリューム新規作成

作成するボリュームのパラメータを入力し、確定します。

ボリューム作成

ブロックストレージのボリュームが作成されます。

作成されたブロックストレージ

作成したブロックストレージ ボリュームの左端のボックスをクリックしてチェックし、表示されたメニューから「ボリュームマッピング」を選択します

ブロックストレージ操作メニュー

対象のボリュームに接続するホストを、登録したものから選択し「マップ」

ボリュームマッピング

マップされたホストが、対象のボリュームに対しiSCSI接続可能になります。

iSCSI接続用パラメータの取得

ボリュームを選択し、メニューから「マウントコマンド確認」を選択すると、OSで使用するCLI・Powershellコマンドやボリューム側のiSCSIターゲットIPが確認できます。

マウントコマンド確認

ファイアーウォールルールの作成

ホスト用サーバからブロックストレージボリュームへアクセスするための、iSCSI通信用のファイヤーウォールポリシーを作成します。

iSCSI通信用FWポリシー作成

今回は、内部サーバセグメント(172.24.0.0/24)からブロックストレージのインターフェースに割り当てられたIPアドレス(172.16.62.65~172.16.62.70)へのiSCSI通信のみを許可するファイアーウォールポリシーを作成します。

リソースプール用ポータルで対象のNSX-Edgeに、ファイヤーウォールポリシーを作成します。

iSCSI用FWルール作成
送信元IP送信先IPプロトコルターゲットポートアクション備考
172..24.0.0/24172.16.62.65-17216.62.70TCP3260acceptiSCSI通信に限定

iSCSI接続の作成(Linux OSの場合)

iSCSIターゲットへのログイン

ボリュームをマウントするOS上で下記コマンドを実行し、ターゲットへログインします

接続したiSCSIターゲットからボリュームを検出します

Ubuntuの場合


Redhat/Cent OSの場合

マルチパスの構成

マルチパスが有効になっているか確認します。初回起動時で /etc/multipath.confが存在しない場合には作成を行います。

ログインしたiSCSIセッションでマルチパスが構成されていること確認します

実行結果から、6つのターゲットIPでそれぞれディスク(sdb~sdg)を検出していますがmultipathdにより同じボリュームとして認識され、マルチパス接続のボリューム(mpatha)が認識されていることが確認できます。

ディスクのフォーマット(GPTディスクの場合)

ここでは、2TB以上の容量のディスク利用を想定し、接続したボリュームの初期設定(GPTテーブルの作成)を行います。
(2TB以下のディスク容量でのご利用の場合、MBRでのフォーマットでも問題ありません。)

パーティションについては、gdiskツールを使用して作成できますが、作成せずにボリュームに直接ファイルシステムを展開することが可能です。パーティションを使用せずに直接ファイルシステムを使用することのメリット・デメリットについては、外部サイトにナレッジが紹介されておりますのでのでご参考ください。

ここでは、パーティションを作成せず直接ボリュームにファイルシステムを作成しています

フォーマットしたボリュームを /mnt/iSCSIにマウントします

起動時の自動マウント設定(Linux OS)

サービスの自動起動

iSCSIサービスとmultipathサービスの自動起動設定(RHEL/CentOS)

ファイルシステムの自動マウント

Linuxの場合、/etc/fstab にマウントポイントを追記します。

[マウントポイント/mnt/iSCSI を作成して、ext4ファイルシステムの/dev/mapper/mpatha1をマウントする場合]
まず、マウントするパーティションのUUIDを調べます。

実行結果から、対象のパーティションのUUIDの値を調べます。

UUID確認

UUIDをベースにマウント設定をfstabに追記します。