Avere vFXT クラスターをマウントする
クライアント マシンを vFXT クラスターに接続するには以下の手順のようにします。
- クラスター ノード間にクライアント トラフィックの負荷を分散させる方法を決定します。 詳細については、後の「クライアントの負荷を分散させる」をご覧ください。
- マウントする IP アドレスとジャンクション パスを識別します。
- 適切な引数を指定して mount コマンドを発行します。
クライアントの負荷を分散させる
クライアントの要求をクラスター内のすべてのノード間に分散させるには、クライアント側の IP アドレスの全範囲にクライアントをマウントする必要があります。 このタスクを自動化するには、いくつかの簡単な方法があります。
ヒント
他の負荷分散方法は、さらに大規模なシステムまたは複雑なシステムに適しています (ヘルプが必要な場合は、サポート チケットを開いてください)。
サーバー側の自動負荷分散に DNS サーバーを使用したい場合は、Azure 内で独自の DNS サーバーを設定して管理する必要があります。 その場合は、「Avere cluster DNS configuration」(Avere クラスターの DNS 構成) に従って、vFXT クラスター用にラウンドロビン DNS を構成することができます。
負荷分散されたクライアントのマウント スクリプトの例
このコード例では、vFXT クラスターで使用可能なすべての IP アドレスにクライアントを分散させるためのランダム化要素として、クライアントの IP アドレスを使用しています。
function mount_round_robin() {
# to ensure the nodes are spread out somewhat evenly the default
# mount point is based on this node's IP octet4 % vFXT node count.
declare -a AVEREVFXT_NODES="($(echo ${NFS_IP_CSV} | sed "s/,/ /g"))"
OCTET4=$((`hostname -i | sed -e 's/^.*\.\([0-9]*\)/\1/'`))
DEFAULT_MOUNT_INDEX=$((${OCTET4} % ${#AVEREVFXT_NODES[@]}))
ROUND_ROBIN_IP=${AVEREVFXT_NODES[${DEFAULT_MOUNT_INDEX}]}
DEFAULT_MOUNT_POINT="${BASE_DIR}/default"
# no need to write again if it is already there
if ! grep --quiet "${DEFAULT_MOUNT_POINT}" /etc/fstab; then
echo "${ROUND_ROBIN_IP}:${NFS_PATH} ${DEFAULT_MOUNT_POINT} nfs hard,proto=tcp,mountproto=tcp,retry=30 0 0" >> /etc/fstab
mkdir -p "${DEFAULT_MOUNT_POINT}"
chown nfsnobody:nfsnobody "${DEFAULT_MOUNT_POINT}"
fi
if ! grep -qs "${DEFAULT_MOUNT_POINT} " /proc/mounts; then
retrycmd_if_failure 12 20 mount "${DEFAULT_MOUNT_POINT}" || exit 1
fi
}
上記の関数は、Avere vFXT の例のサイトから入手できる Batch の例の一部です。
mount コマンドを作成する
Note
Avere vFXT クラスターを作成するときに新しい BLOB コンテナーを作成しなかった場合は、クライアントをマウントする前に、「ストレージの構成」の説明に従ってストレージ システムを追加します。
クライアントで mount
コマンドを実行すると、vFXT クラスター上の仮想サーバー (vserver) が、ローカル ファイル システムのパスにマップされます。 形式は mount <vFXT path> <local path> {options}
です
mount コマンドには次の 3 つの要素があります。
- vFXT パス - P アドレスとクラスターの名前空間ジャンクション パスの組み合わせ (後述)
- ローカル パス - クライアント上のパス
- mount コマンドのオプション - 「mount コマンドの引数」を参照
ジャンクションと IP
vserver のパスは、その "IP アドレス" と、"名前空間ジャンクション" へのパスの組み合わせです。 名前空間ジャンクションは、ストレージ システムが追加されるときに定義された仮想パスです。
クラスターが BLOB ストレージで作成された場合、コンテナーの名前空間パスは /msazure
です
例: mount 10.0.0.12:/msazure /mnt/vfxt
クラスターを作成した後にストレージを追加した場合は、名前空間ジャンクション パスは、ジャンクションを作成するときに [名前空間のパス] で設定した値です。 たとえば、名前空間のパスとして /avere/files
を使用した場合、クライアントは <IP アドレス>:/avere/files をローカルなマウント ポイントにマウントします。
IP アドレスは、vserver に対して定義されたクライアント側の IP アドレスの 1 つです。 クライアント側の IP アドレスの範囲は、Avere Control Panel の 2 つの場所で確認できます。
[VServers] テーブル ([Dashboard]\(ダッシュボード\) タブ) -
[Client Facing Network](クライアント側ネットワーク) 設定ページ -
各クライアントをマウントするときは、パスに加えて、以下で説明する mount コマンド引数を指定します。
mount コマンドの引数
クライアントのマウントがシームレスに行われるように、mount コマンドで以下の設定と引数を渡します。
mount -o hard,proto=tcp,mountproto=tcp,retry=30 ${VSERVER_IP_ADDRESS}:/${NAMESPACE_PATH} ${LOCAL_FILESYSTEM_MOUNT_POINT}
必須の設定 | 説明 |
---|---|
hard |
vFXT クラスターに対するソフト マウントは、アプリケーション エラーおよび可能性のあるデータ損失と関連付けられます。 |
proto=netid |
このオプションは、NFS ネットワーク エラーの適切な処理をサポートします。 |
mountproto=netid |
このオプションは、マウント操作に対するネットワーク エラーの適切な処理をサポートします。 |
retry=n |
一時的なマウントの障害を回避するため、retry=30 を設定します。 (フォアグラウンド マウントの場合は、別の値が推奨されます。) |
次のステップ
クライアントをマウントしたら、それらを使用して、クラスター上の新しい Blob Storage コンテナーにデータをコピーできます。 新しいストレージにデータを取り込む必要がない場合は、追加のセットアップ タスクについて、他のリンクを参照してください。
- クラスターのコア ファイラーにデータを移動する - 複数のクライアントとスレッドを使用して、データを効率的に新しいコア ファイラーにアップロードする方法
- クラスターのチューニングをカスタマイズする - ワークロードに合わせてクラスターの設定を調整します
- クラスターを管理する - クラスターの開始または停止およびノードの管理の方法