DFS のセットアップ手順を以下に示します。
DFS のセットアップの流れを以下に示します。
マスタサーバを二重化構成とする場合は、マスタサーバ(プライマリ)、マスタサーバ(セカンダリ)の順で交互にセットアップを行う必要があります。
ポイント
ここでは、セットアップで指定するデバイス名などの情報を、以下に示すファイルシステム構成の例として説明します。実際にセットアップする際には、ご使用の環境の構成に読み替えてください。
| :/dev/disk/by-id/scsi-1FUJITSU_300000370105 |
| :/dev/disk/by-id/scsi-1FUJITSU_300000370106 |
| :/dev/disk/by-id/scsi-1FUJITSU_300000370107 |
| :1 |
| :pdfs1 |
| :master1(プライマリ)、master2(セカンダリ) |
| :slave1、slave2、slave3、slave4、slave5 |
| :develop |
| :collaborate |
共用ディスクのデバイス名には、udev 機能により生成される by-id 名を使用します。
従来の互換デバイス名から by-id 名を特定するには、udevinfo コマンドまたは udevadm コマンドを使用します。
以下に by-id 名の確認例を示します。
例
互換デバイス名から by-id 名を使用したデバイス名を特定する場合
Red Hat(R) Enterprise Linux(R) 5 の場合
# udevinfo -q symlink -n /dev/sdb <Enter> disk/by-id/scsi-1FUJITSU_300000370105 # udevinfo -q symlink -n /dev/sdc <Enter> disk/by-id/scsi-1FUJITSU_300000370106 # udevinfo -q symlink -n /dev/sdd <Enter> disk/by-id/scsi-1FUJITSU_300000370107 # udevinfo -q symlink -n /dev/sde <Enter> disk/by-id/scsi-1FUJITSU_300000370108
Red Hat(R) Enterprise Linux(R) 6 の場合
# udevadm info -q symlink -n /dev/sdb <Enter> block/8:48 disk/by-id/scsi-1FUJITSU_300000370105 # udevadm info -q symlink -n /dev/sdc <Enter> block/8:48 disk/by-id/scsi-1FUJITSU_300000370106 # udevadm info -q symlink -n /dev/sdd <Enter> block/8:48 disk/by-id/scsi-1FUJITSU_300000370107 # udevadm info -q symlink -n /dev/sde <Enter> block/8:48 disk/by-id/scsi-1FUJITSU_300000370108
注意
udevinfo コマンドまたは udevadm コマンドで確認した by-id 名を使用するには、先頭に "/dev/" を追加する必要があります。
fdisk コマンドや parted コマンドなどで共用ディスクのパーティション情報を変更した場合は、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「fdisk で操作した共用ディスク装置のパーティション情報が反映されない」を参照して、すべてのサーバでパーティション情報を最新にしてください。
参照
udevinfo コマンドまたは udevadm コマンドの詳細については、各オンラインマニュアルページを参照してください。
ポイント
by-id 名は、ハードディスクに設定されている個別識別情報から生成されるデバイス名です。
by-id 名を使用することにより、各サーバは常に同じデバイス名で特定のディスクにアクセスできます。
DFS の管理パーティションは、Logical Unit(物理)単位またはディスクパーティション(論理)単位のどちらでも運用できます。ETERNUS SF AdvancedCopy Manager を使用したボリュームコピーを行う場合、ETERNUS SF AdvancedCopy Manager がサポートするデバイスの単位に留意してください。
ETERNUS SF AdvancedCopy Manager の詳細については、「ETERNUS SF AdvancedCopy Manager 運用ガイド」を参照してください。
マスタサーバを二重化構成にする場合は、管理パーティションの作成を実施する前に、クラスタパーティションが発生していないことを確認します。
マスタサーバ(プライマリ)、マスタサーバ(セカンダリ)のそれぞれで実施します。
cftool(1M) コマンドを実行します。
表示された状態(State欄)が、2台のマスタサーバで同じであることを確認します。
# cftool -n <Enter> Node Number State Os Cpu master1 1 UP Linux EM64T master2 2 UP Linux EM64T
参照
cftool(1M) コマンドの詳細については、「PRIMECLUSTER 活用ガイド <コマンドリファレンス編>」-「第2章」-「cftool」を参照してください。
2台のマスタサーバで同じ表示結果とならない場合は、クラスタパーティションが発生しています。
この場合、クラスタパーティションを解消してください。
参照
クラスタパーティションの解消方法については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「pdfsfrmd デーモンが起動しない場合の対処」を参照してください。
管理パーティションを初期化します。
マスタサーバ(プライマリ)で実施します。
pdfssetup コマンドに -c オプションと管理パーティションのパス名を指定して実行します。
# pdfssetup -c /dev/disk/by-id/scsi-1FUJITSU_300000370105 <Enter>
参照
pdfssetup コマンドの詳細については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「コマンドリファレンス」で「pdfssetup」を参照してください。
管理パーティションへマスタサーバ情報を登録します。
マスタサーバを二重化構成にする場合は、マスタサーバ(プライマリ)、マスタサーバ(セカンダリ)の順で実施します。
管理パーティションへマスタサーバ情報を登録します。
pdfssetup コマンドに -a オプションを指定して実行します。
# pdfssetup -a /dev/disk/by-id/scsi-1FUJITSU_300000370105 <Enter>
登録したマスタサーバ情報を確認します。
pdfssetup コマンドをオプションなしで実行することで確認できます。
# pdfssetup <Enter> HOSTID CIPNAME MP_PATH 80380000 master1RMS yes 80380001 master2RMS yes
設定した管理パーティションのパス名は、pdfssetup コマンドに -p オプションを指定することで確認できます。
# pdfssetup -p <Enter> /dev/disk/by-id/scsi-1FUJITSU_300000370105
運用を開始するために、pdfsfrmd デーモンを起動します。
マスタサーバを二重化構成にする場合は、マスタサーバ(プライマリ)、マスタサーバ(セカンダリ)の順で実施します。
# pdfsfrmstart <Enter>
参照
pdfsfrmstart コマンドの詳細については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「コマンドリファレンス」で「pdfsfrmstart」を参照してください。
使用するパーティションに DFS を作成します。
マスタサーバ(プライマリ)で実行します。
ファイルシステムを作成します。
pdfsmkfs コマンドに以下に示すオプションと代表パーティションを指定して実行します。
dataopt オプション
代表パーティションからファイルデータ領域を分割するために、y を指定します。
blocksz オプション
データブロックサイズを指定します。推奨値は 8388608(8MB) です。
data オプション
ファイルデータパーティションのパス名をカンマで区切って指定します。
node オプション
マスタサーバのホスト名(業務 LAN に接続する NIC に対応するホスト名)を指定します。
マスタサーバを二重化構成とする場合は、マスタサーバ(プライマリ)とマスタサーバ(セカンダリ)をカンマで区切って指定します。マスタサーバを二重化構成としない場合は、本オプションを省略します。
注意
node オプションは、最後のオプションに指定してください。
マスタサーバを二重化構成とする場合:
# pdfsmkfs -o dataopt=y,blocksz=8388608,data=/dev/disk/by-id/scsi-1FUJITSU_300000370107,data=/dev/disk/by-id/scsi-1FUJITSU_300000370108,node=master1,master2 /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter>
参照
データブロックサイズの詳細については、「3.3.2 ファイルシステム構成の設計」を参照してください。
pdfsmkfs コマンドの詳細については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「コマンドリファレンス」で「pdfsmkfs」を参照してください。
作成したファイルシステム情報を確認します。
# pdfsinfo /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter> /dev/disk/by-id/scsi-1FUJITSU_300000370106: FSID special size Type mount 1 /dev/disk/by-id/scsi-1FUJITSU_300000370106 (864) 25418 META ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370106 (864) 5120 LOG ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370107 (880) 7341778 DATA ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370108 (896) 6578704 DATA -----
Hadoop の JobTracker、TaskTracker を mapred ユーザーで実行するために、DFS にユーザーを設定する必要があります。
ここでは、DFS への mapred ユーザーの設定手順を説明します。
マスタサーバ(プライマリ)で実行します。
ユーザーID を設定します。
pdfsadm コマンドで MAPRED 変数に MapReduce を実行するユーザーID を設定します。
# pdfsadm -o MAPRED=mapred /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter>
ユーザーID が設定されていることを確認します。
# pdfsinfo -e /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter> /dev/disk/by-id/scsi-1FUJITSU_300000370106: MAPRED=mapred
参照
設定した MAPRED 変数の削除方法など、pdfsadm コマンドの詳細については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「コマンドリファレンス」で「pdfsadm」を参照してください。
スレーブサーバ、開発実行環境サーバ、および連携サーバ情報(DFS クライアント情報)を接続許可リストに登録します。
マスタサーバを二重化構成にする場合は、マスタサーバ(プライマリ)で接続許可リストの作成および登録を行い、マスタサーバ(セカンダリ)に配付します。
参考
DFS では、マスタサーバ(MDS)に接続できる DFS クライアントを管理しています。
マスタサーバで接続許可リストファイルを作成し、DFS に接続する各サーバのホスト名を登録します。
ファイルシステム ID を確認します。
管理パーティションに記録されたファイルシステム情報から、対象となるファイルシステム ID を確認します。
# pdfsinfo /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter> /dev/disk/by-id/scsi-1FUJITSU_300000370106: FSID special size Type mount 1 /dev/disk/by-id/scsi-1FUJITSU_300000370106 (864) 25418 META ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370106 (864) 5120 LOG ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370107 (880) 7341778 DATA ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370108 (896) 6578704 DATA -----
接続許可リストファイルを作成します。
# cd /etc/pdfs <Enter> # cp ./server.conf.sample server.conf.1 <Enter>
注意
接続許可リストファイルは、マスタサーバの /etc/pdfs 配下に配置してください。
接続許可リストファイルの名前は、ファイルシステム ID 部分以外 (server.conf.)を変更しないでください。
接続許可リストファイルに接続を許可するサーバ(スレーブサーバ、開発実行環境サーバ、および連携サーバ)のホスト名(業務 LAN に接続する NIC に対応するホスト名)を登録します。
以下の形式で記載します。
CLIENT {接続を許可するホスト名}
例
slave1、slave2、slave3、slave4、slave5、develop、collaborate の接続を許可する場合
# cat /etc/pdfs/server.conf.1 <Enter> # # Copyright (c) 2012 FUJITSU LIMITED. All rights reserved. # # /etc/pdfs/server.conf.<FSID> # # List of client hostnames of a file system. # # Notes: # Do not describe hostnames of management servers. # # example: #CLIENT nodeac1 #CLIENT nodeac2 #CLIENT nodeac3 #CLIENT nodeac4 #CLIENT nodeac5 CLIENT develop ← 追加する開発実行環境サーバ CLIENT collaborate ← 追加する連携サーバ CLIENT slave1 ← 追加するスレーブサーバ CLIENT slave2 ← 追加するスレーブサーバ CLIENT slave3 ← 追加するスレーブサーバ CLIENT slave4 ← 追加するスレーブサーバ CLIENT slave5 ← 追加するスレーブサーバ
接続許可リストファイルの内容を確認します。
接続許可リストに誤りがある場合、マスタサーバでマウントできません。そのため、以下を確認してください。
マスタサーバと スレーブサーバ、開発実行環境サーバ、および連携サーバの数の合計が共用サーバ数の上限を超えていないこと
指定した スレーブサーバ、開発実行環境サーバ、および連携サーバのホストが、正しくネットワーク経由で参照できること
スレーブサーバ、開発実行環境サーバ、および連携サーバの指定に重複がないこと
接続許可リストファイルをマスタサーバ(セカンダリ)に配付します。(マスタサーバを二重化構成にする場合のみ)
# cd /etc/pdfs <Enter> # scp -p ./server.conf.1 root@master2:/etc/pdfs/server.conf.1 <Enter>
マウントポイントを作成し、/etc/fstab に DFS の記述を追加します。
マスタサーバを二重化構成にする場合は、マスタサーバ(プライマリ)、マスタサーバ(セカンダリ)の両方で実施します。
マウントポイントの作成
DFS として利用するストレージシステム上のディスクパーティションをマウントするマウントポイントを作成します。
作成するマウントポイントは、構成ファイル bdpp.conf の BDPP_PDFS_MOUNTPOINT パラメーターに指定した値と同じである必要があります。
例
/mnt の配下にマウントポイント pdfs を作成します。
# mkdir /mnt/pdfs <Enter>
fstab 設定
/etc/fstab に DFS のエントリーを追加します。
追加するエントリーの各フィールドに指定するパラメーターは以下のとおりです。
第 1 フィールド(fs_spec)
マウントする DFS の代表パーティションを指定します。
第 2 フィールド(fs_file)
上記で作成したマウントポイントを指定します。
第 3 フィールド(fs_vfstype)
pdfs を指定してください。
第 4 フィールド(fs_mntops)
マウント時に使用されるマウントオプションを指定します。
noauto オプションは、必ず指定してください。
ほかのオプション指定は、以下に従って決定します。
確認項目 | 指定オプション |
---|---|
次のいずれかの場合
| noatime |
DFS 管理サーバ起動時にマウントしない場合 | noatrc |
DFS を読込み専用でマウントする場合 | ro |
参照
マウントオプションの詳細については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「コマンドリファレンス」で「pdfsmount」を参照してください。
第 5 フィールド(fs_freq)
0 を指定してください。
第 6 フィールド(fs_passno)
0 を指定してください。
例
/etc/fstab にマウントポイント /mnt/pdfs および DFS の代表パーティションを定義した場合の例を示します。
LABEL=/ / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 LABEL=SWAP-sda3 swap swap defaults 0 0 /dev/disk/by-id/scsi-1FUJITSU_300000370106 /mnt/pdfs pdfs noauto,noatime 0 0
注意
マスタサーバを二重化構成にする場合は、/etc/fstab の記述内容をマスタサーバ(プライマリ)とマスタサーバ(セカンダリ)間で同じにしてください。
DFS のファイルシステムをマウントします。
マスタサーバ(プライマリ)でのみ実施します。
# pdfsmntgl /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter>
注意
pdfsmntgl コマンドは、すべての DFS 管理サーバで DFS をマウントします。そのため、マスタサーバ(セカンダリ)でマウントする必要はありません。
DFS では、必ずマスタサーバ、スレーブサーバ、開発実行環境サーバ、連携サーバの順でマウントしてください。スレーブサーバ、開発実行環境サーバ、または連携サーバを先にマウントしても、マスタサーバ(MDS) が存在しないためマウントが失敗します。
マスタサーバで DFS 構成情報ファイルを生成します。
マスタサーバ(プライマリ)で実施します。
ファイルシステム ID を確認します。
管理パーティションに記録されたファイルシステム情報から、対象となるファイルシステム ID を確認します。
# pdfsinfo /dev/disk/by-id/scsi-1FUJITSU_300000370106 <Enter> /dev/disk/by-id/scsi-1FUJITSU_300000370106: FSID special size Type mount 1 /dev/disk/by-id/scsi-1FUJITSU_300000370106 (864) 25418 META ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370106 (864) 5120 LOG ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370107 (880) 7341778 DATA ----- 1 /dev/disk/by-id/scsi-1FUJITSU_300000370108 (896) 6578704 DATA -----
DFS 構成情報ファイルを pdfsmkconf コマンドで生成します。
# pdfsmkconf <Enter>
生成したDFS 構成情報ファイルの名前を、ファイルシステム ID から論理ファイルシステム名に変更します。
# cd pdfsmkconf_out <Enter> # mv ./client.conf.1 client.conf.pdfs1 <Enter>
注意
DFS 構成情報ファイルは、pdfsmkconf コマンド を実行したディレクトリ配下に pdfsmkconf_out/client.conf.fsid として作成されます。
DFS 構成情報ファイルの名前は、ファイルシステム ID 部分以外 (client.conf.) を変更しないでください。
「6.1.3.7 MapReduce 実行用のユーザーID の設定」で設定した MapReduce 実行用のユーザーID が DFS 構成情報ファイルに設定されていることを確認します。
# cat ./client.conf.pdfs1 <Enter>
FSID 1
MDS master1 29000
MDS master2 29000
DEV /dev/disk/by-id/scsi-1FUJITSU_300000370107 0 7341778
DEV /dev/disk/by-id/scsi-1FUJITSU_300000370108 0 6578704
MAPRED mapred
ポイント
生成した DFS 構成情報ファイルは、DFS クライアント(スレーブサーバ、開発実行環境サーバ、および連携サーバ)の /etc/pdfs に配置する必要があります。
後述するスレーブサーバ、開発実行環境サーバ、および連携サーバのセットアップの際に、マスタサーバ上の DFS 構成情報ファイルを各サーバに配付します。
参照
pdfsmkconf コマンド の詳細については、「Primesoft Distributed File System for Hadoop V1 ユーザーズガイド」の「コマンドリファレンス」で「pdfsmkconf」を参照してください。