config-gfsdは、 Gfarmファイルシステムのファイルスプールノードを セットアップするためのユーティリティです。 なお、このファイルスプールノードに対するサーバプログラムは、 gfsdと名づけられています。 Gfarmの開発、評価、またはテストといった 私的な用途でファイルシステムを使用する場合を除き、 config-gfsdを実行するためには、 ルート権限が必要です。
config-gfsdは、設定ファイル
%%SYSCONFDIR%%/gfarm2.conf
(プライベートモードの場合は、
%%SYSCONFDIR%%/gfsd.conf
)
がホスト上に存在することを前提としています。
存在しない場合は、メタデータサーバから設定ファイルをコピーしてください。
config-gfsdは下記に示した順に実行します。
スプールディレクトリを作成します。
Gfarmの設定ファイル
%%SYSCONFDIR%%/gfarm2.conf
や
%%SYSCONFDIR%%/gfsd.conf
を更新します。
gfsdを起動/停止するためのスクリプト (または、設定ファイル)を作成します。
大抵のOSにおいて、
config-gfsdは、
起動/停止スクリプトgfsd(プライベートモードの場合は、
gfsd-ADDRESS
)を
/etc/init.d
または
/etc/rc.d/init.d
に置きます。
(どちらに置くかはOSに依存します。)
Red Hat Enterprise Linux 7 またはそれ以降のsystemdで動作するLinuxにおいて、
config-gfsdは、
ユニット設定ファイルであるgfsd.service
(プライベートモードの場合は、
gfsd-ADDRESS.service
)を
/etc/systemd/system
ディレクトリに
置きます。
その後、systemctl enable gfsd.service
(または
systemctl enable gfsd-ADDRESS.service)
を実行します。
プライベートモードの場合、config-gfsdは、 gfhost -cを実行することにより、 メタデータサーバにファイルスプールノードであるホストを登録します。 プライベートモードではない場合、 config-gfsdは、 メタデータサーバにファイルスプールノードであるホストの登録方法を 以下に示す例のように表示します。
Please ask admin_user to register your host by the following command: /usr/bin/gfhost -c -a x86_64-centos7.0-linux -p 600 -n 2 ext540
プライベートモードの場合、config-gfsdは gfsdを起動します。 プライベートモードではない場合、 config-gfsdは gfsdの起動方法を以下のように表示します。
After that, start gfsd by the following command as a root: systemctl start gfsd.service
unconfig-gfsd.sh というスクリプトを %%SYSCONFDIR%% 上に作成します。 このスクリプトは、gfsd のセットアップの 取り消しを行います。 gfsd を停止し、 config-gfsd によって作成されたファイル (unconfig-gfsd.sh スクリプト自身を含む) をすべて消去します。
config-gfsdを使用して
ファイルスプールノードをセットアップする前に、
config-gfsd -tを実行することを推奨します。
-t
オプションを付けて実行することにより、
セットアップする代わりに全ての設定パラメータを表示します。
$ config-gfsd -t prefix [--prefix]: hostname [-h]: host1.example.org listen address [-l]: (all local IP addresses) architecture [-a]: x86_64-centos6.5-linux port [-p]: 600 ncpu [-n]: 8 spool directory : /var/gfarm-spool rc script : /etc/init.d/gfsd gfarm client conf file : /etc/gfarm2.conf gfsd pid file : /var/run/gfsd.pid
[]で囲まれたオプション名は、 オプションとして指定できることを意味しています。
--prefix
パス
このオプションを付与した場合、 以下に挙げたgfsdに関連する複数のパスが 設定されます。 具体的には、以下の通りです。
gfsdのスプールディレクトリ:
PREFIX/var/gfarm-spool
gfsdのPIDファイルを置くためのディレクトリ:
PREFIX/var/run
設定ファイルが置かれたディレクトリ:
PREFIX/etc
gfsdの起動/停止スクリプトが置かれた
ディレクトリ:
PREFIX/etc/init.d
か、
PREFIX/rc.d/init.d/etc
これはOSに依存します。
ホスト上でsystemdが起動している場合に、特殊な例外が存在します。
そのホスト上で--prefix
オプションとして空文字を指定する際、
config-gfsdはsystemdに
ユニット設定ファイルを置きません。
その代わりに、PREFIX/etc/init.d
に
旧形式の起動/停止スクリプトを置きます。
セットアップを取り消すスクリプト unconfig-gfsd.sh: PREFIX/etc/unconfig-gfsd.sh
デフォルトでは""(空文字列)です。
-a
アーキテクチャ
ホストのアーキテクチャを指定します。
config-gfsdは、
指定されたアーキテクチャをgfhost -c コマンドに-a
オプションの引数
として渡します。デフォルトで、
config-gfsdはアーキテクチャを推測しそれを使用します。
-p
ポート番号
gfsdが待ち受けるTCPポート番号を指定します。 デフォルトではプライベートモードの場合に10600、 それ以外では600が指定されます。
-h
ホスト名
ホスト名を指定することができます。 config-gfsdは、 指定されたホスト名をgfhost -c コマンドに非オプションの引数として渡します。 デフォルトでは、DNS上におけるそのホストの完全修飾ドメイン名(FQDN)となります。
-l
IPアドレス
gfsdの待ち受けるアドレスを指定すること ができます。 デフォルトでは、全てのローカルIPアドレスで待ち受けます。 オプションが指定された場合、以下に挙げた変更が生じます。
config-gfsdが起動/停止スクリプトを
作成する際、そのスクリプト名は、gfsd
からgfsd-ADDRESS
に変更されます。
config-gfsdがsystemdの設定ファイルを
作成する際、そのファイル名は、
gfsd.service
から
gfsd-ADDRESS.service
に変更されます。
スプールディレクトリは、
PREFIX/var/gfarm-spool
から
PREFIX/var/gfarm-spool-ADDRESS
に変更されます。
ただし、PREFIXは--prefix
で指定された接頭辞です。
-n
cpu数
ホストのCPU数を指定することができます。
config-gfsdは、
指定されたCPU数をgfhost -c コマンドに-n
オプションの引数
として渡します。
デフォルトでは、
config-gfsdはCPU数を推測しその値を与えます。
--help
このコマンドの使用法を表示して、終了します。
-S
このオプションを付与した場合、 プライベートモードを有効にします。 config-gfsdは、 ルート権限なしで実行可能なGfarmファイルシステムをセットアップします。 具体的には、以下の通りに設定手順を変更します。
gfsdにおけるデフォルトの待ち受け
ポート番号(-p
に対応)が、600から10600に変更されます。
%%SYSCONFDIR%%/gfarm2.conf
の代わりに、
%%SYSCONFDIR%%/gfsd.conf
設定ファイル
を更新します。
gfhost -cコマンドを実行することにより、 ファイルスプールノードを登録します。
-N
オプションが付与されているかに関わらず、
gfsdを起動します。
-S
オプションは、起動/停止スクリプトや
設定ファイルの位置を決して変更しません。
これらのファイルのデフォルト位置は
通常では特権ユーザの場合のみ書き込み可能であるため、
config-gfsdはこれらのファイルの生成に
失敗してしまいます。この問題を回避するためには、
--prefix
オプションを合わせて指定してください。
-N
このオプションを付与した場合、 gfsdを起動しません。
-f
このオプションを付与した場合、 強制的に存在しているセットアップを上書きします。
-t
このオプションを付与した場合、 人間が読みやすい形式で全ての設定パラメータの値を表示した後、 すぐに終了します。
-T
-t
オプションと似ていますが、
設定値をKEY=VALUE形式で表示します。