<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1.2//EN"
  "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">


<refentry id="gfservice.conf.5">

<refentryinfo><date>8 Mar 2013</date></refentryinfo>

<refmeta>
<refentrytitle>gfservice.conf</refentrytitle>
<manvolnum>5</manvolnum>
<refmiscinfo>Gfarm</refmiscinfo>
</refmeta>

<refnamediv id="name">
<refname>gfservice.conf</refname>
<refpurpose>gfservice の設定ファイル</refpurpose>
</refnamediv>

<!-- body begins here -->

<refsect1 id="description"><title>DESCRIPTION</title>

<para>
<command moreinfo="none">gfservice</command> は、設定をファイルから読み込みます。
(<command moreinfo="none">gfservice-agent</command> は設定ファイルを読みません。)
</para>

<para>
設定ファイルはそれ自体が、Bourne シェルスクリプトになっています。
ファイルは、<command moreinfo="none">gfservice</command> によって
<emphasis>スクリプトとして評価されます。</emphasis>
以下に、設定ファイルの記述例を示します。
</para>

<literallayout format="linespecific" class="normal">
	# gfmd サーバー
	gfmd1=db1.example.com
	gfmd2=db2.example.com
</literallayout>

<para>
Bourne シェルと同様に、「#」で始まる行や空行は無視されます。
それ以外の行では、シェル変数を宣言します。
この例では、変数 <replaceable>gfmd1</replaceable> を
<replaceable>db1.example.com</replaceable> という値にセットし、
変数 <replaceable>gfmd2</replaceable> には
<replaceable>db12.example.com</replaceable> という値をそれぞれセット
しています。
「=」の前後に空白文字を置くことはできないので、注意して下さい。
</para>

<para>
変数 <replaceable>gfmd1</replaceable> と <replaceable>gfmd2</replaceable>
は「ホスト ID」として使用します。
<command moreinfo="none">gfservice</command> では、ホストを指定する際にホスト名ではなく、
ホスト IDを使用します。
</para>

<literallayout format="linespecific" class="normal">
	<command moreinfo="none">gfservice <replaceable>start-gfmd</replaceable> <replaceable>gfmd2</replaceable></command>
</literallayout>

<para>
上記のコマンドを実行すると、<command moreinfo="none">gfservice</command> はサーバー
<replaceable>gfmd2</replaceable> 、つまり metadb2.example.com 上の gfmd
を起動します。
ホスト ID の末尾の数は 1 から、連続して割り当てなくてはなりません。
</para>

<para>
gfsd サーバーとクライアントホストを指定するには、ホスト ID 
「gfs<replaceable>n</replaceable>」と「client<replaceable>n</replaceable>」
をそれぞれ使用します。
</para>

<literallayout format="linespecific" class="normal">
	# gfsd サーバー
	gfsd1=fs1.example.com

	# クライアント
	client1=pc1.example.com
	client2=pc2.example.com
	client3=pc2.example.com
</literallayout>

<para>
ホスト ID 変数に加え、<command moreinfo="none">gfservice</command> はホスト ID に関連する
変数をいくつか認識します。
</para>

<literallayout format="linespecific" class="normal">
	# gfmd1 に関する設定
	gfmd1_CONFIG_GFARM_OPTIONS="-X -A $LOGNAME"
	gfmd1_SSH="ssh -i $HOME/.ssh/id_rsa_gfservice"
	gfmd1_SUDO=/usr/local/bin/sudo
</literallayout>

<para>
この例で示しているように、空白文字を含む値をセットするには、引用符を使用
します。
<varname>$VARNAME</varname> は、シェル変数もしくは環境変数 
<varname>VARNAME</varname> の値に展開されます。
</para>

</refsect1>

<refsect1 id="gfmd-variables"><title>VARIABLES ABOUT GFMD</title>

<para>
変数「gfmd<replaceable>n</replaceable>」(gfmd1, gfmd2, ...) は、gfmd
サーバーを定義するために用います。
名前が「gfmd<replaceable>n</replaceable>_」で始まる変数 (たとえば
<replaceable>gfmd1_SSH</replaceable>) は、対応する
「gfmd<replaceable>n</replaceable>」サーバーの設定パラメタをセットするため
に用います。
<command moreinfo="none">gfservice</command> が現在のところ認識する変数は、以下の通りです。
</para>

<variablelist>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable></varname></term>
<listitem>
<para>
gfmd サーバーを登録します。
変数の値は、サーバーホストのホスト名 (もしくは IP アドレス) を表します。
<command>gfservice</command> は、この値を SSH 接続先ホストとしてしか
使用しないので注意して下さい。
Gfarm システム内で使用されるホスト名を指定するには、代わりに 
<varname>gfmd<replaceable>n</replaceable>_CONFIG_GFARM_OPTOINS</varname>
という変数の中で、<option>-h</option> オプションを使用して下さい。
</para>
<literallayout>
	gfmd1=md1-ctl.example.org
	gfmd1_CONFIG_GFARM_OPTIONS="-h md1.example.org"
</literallayout>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_GFBINDIR</varname></term>
<listitem>
<para>
gfmd サーバー上で <command moreinfo="none">gfservice-agent</command> コマンドが
インストールされているディレクトリへのパスを指定します。
この変数が宣言されていると <command moreinfo="none">gfservice</command> は、
「<command moreinfo="none"><varname>$gfmd<replaceable>n</replaceable>_GFBINDIR</varname>/gfservice-agent</command>」を実行します。
宣言されていない場合は、「<command moreinfo="none">gfservice-agent</command>」を実行します。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_CONFIG_GFARM_OPTIONS</varname></term>
<listitem>
<para>
<command moreinfo="none">config-gfarm</command> コマンドのオプションを指定します。
デフォルト値は、空文字列 (オプションなし) です。
<command moreinfo="none">gfservice</command> は <command moreinfo="none">config-gfarm</command> サブコマンド
およびその他多くのサブコマンドを実行する際に、この変数を参照します。
<command moreinfo="none">config-gfarm</command> が完了した後であっても、この変数の宣言を
削除したり、編集したりはしないで下さい。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_PRIVATE_MODE</varname></term>
<listitem>
<para>
リモートホスト上の gfmd をプライベートモードで動作させる場合は、この
変数に「true」をセットします。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_AUTH_TYPE</varname></term>
<listitem>
<para>
認証タイプ ("sharedsecret", "gsi", "gsi_auth" のいずれか) を指定します。
この変数が定義されていない場合は、gfmd1 上で
<command moreinfo="none">config-gfarm</command> を実行したときの
<varname>AUTH_TYPE</varname> の値が採用されます。
(変数 <varname>gfmd1_CONFIG_GFARM_OPTIONS</varname> の値によって、この
ときの <varname>AUTH_TYPE</varname> の値は変わるので、注意して下さい。)
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_CLUSTER_NAME</varname></term>
<listitem>
<para>
gfmd サーバのクラスタ名を指定します。
デフォルトは「」(空文字列) で、これはこのサーバがデフォルトのクラスタに
属することを意味します。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_SSH</varname></term>
<listitem>
<para>
SSH クライアントコマンドのパスおよびオプションを指定します。
<command moreinfo="none">gfservice</command> が gfmd サーバーに接続するために
SSH クライアントコマンドを実行する際、この変数が利用されます。
デフォルトは「ssh」です。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfmd<replaceable>n</replaceable>_SUDO</varname></term>
<listitem>
<para>
Sudo コマンドのパスおよびオプションを指定します。
<command moreinfo="none">gfservice</command> が SSH を介して gfmd サーバー上で Sudo
コマンドを実行する際、この変数が利用されます。
デフォルトは「sudo」です。
</para>
</listitem>
</varlistentry>

</variablelist>

</refsect1>

<refsect1 id="gfsd-variables"><title>VARIABLES ABOUT GFSD</title>

<para>
変数「gfsd<replaceable>n</replaceable>」(gfsd1, gfsd2, ...) は、gfsd
サーバーを定義するために用います。
名前が「gfsd<replaceable>n</replaceable>_」で始まる変数 (たとえば
<replaceable>gfsd1_SSH</replaceable>) は、対応する
「gfsd<replaceable>n</replaceable>」サーバーの設定パラメタをセットするため
に用います。
<command moreinfo="none">gfservice</command> が現在のところ認識する変数は、以下の通りです。
</para>

<variablelist>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable></varname></term>
<listitem>
<para>
gfsd サーバーを登録します。
変数の値は、サーバーホストのホスト名 (もしくは IP アドレス) を表します。
<command>gfservice</command> は、この値を SSH 接続先ホストとしてしか
使用しないので注意して下さい。
Gfarm システム内で使用されるホスト名を指定するには、代わりに 
<varname>gfsd<replaceable>n</replaceable>_CONFIG_GFSD_OPTOINS</varname>
という変数の中で、<option>-h</option> オプションを使用して下さい。
</para>
<literallayout>
	gfsd1=fs2-ctl.example.org
	gfsd1_CONFIG_GFSD_OPTIONS="-h fs2.example.org"
</literallayout>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable>_GFBINDIR</varname></term>
<listitem>
<para>
gfsd サーバー上で <command moreinfo="none">gfservice-agent</command> コマンドが
インストールされているディレクトリへのパスを指定します。
この変数が宣言されていると <command moreinfo="none">gfservice</command> は、
「<command moreinfo="none"><varname>$gfsd<replaceable>n</replaceable>_GFBINDIR</varname>/gfservice-agent</command>」を実行します。
宣言されていない場合は、「<command moreinfo="none">gfservice-agent</command>」を実行します。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable>_CONFIG_GFSD_OPTIONS</varname></term>
<listitem>
<para>
<command moreinfo="none">config-gfsd</command> コマンドのオプションを指定します。
デフォルト値は、空文字列 (オプションなし) です。
<command moreinfo="none">gfservice</command> は <command moreinfo="none">config-gfsd</command> サブコマンド
およびその他多くのサブコマンドを実行する際に、この変数を参照します。
<command moreinfo="none">config-gfsd</command> が完了した後であっても、この変数の宣言を
削除したり、編集したりはしないで下さい。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable>_PRIVATE_MODE</varname></term>
<listitem>
<para>
リモートホスト上の gfsd をプライベートモードで動作させる場合は、この
変数に「true」をセットします。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable>_AUTH_TYPE</varname></term>
<listitem>
<para>
認証タイプ ("sharedsecret", "gsi", "gsi_auth" のいずれか) を指定します。
この変数が定義されていない場合は、gfmd1 上で
<command moreinfo="none">config-gfarm</command> を実行したときの
<varname>AUTH_TYPE</varname> の値が採用されます。
(変数 <varname>gfmd1_CONFIG_GFARM_OPTIONS</varname> の値によって、この
ときの <varname>AUTH_TYPE</varname> の値は変わるので、注意して下さい。)
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable>_SSH</varname></term>
<listitem>
<para>
SSH クライアントコマンドのパスおよびオプションを指定します。
<command moreinfo="none">gfservice</command> が gfsd サーバーに接続するために
SSH クライアントコマンド実行する際、この変数が利用されます。
デフォルトは「ssh」です。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>gfsd<replaceable>n</replaceable>_SUDO</varname></term>
<listitem>
<para>
Sudo コマンドのパスおよびオプションを指定します。
<command moreinfo="none">gfservice</command> が SSH を介して gfsd サーバー上で Sudo
コマンドを実行する際、この変数が利用されます。
デフォルトは「sudo」です。
</para>
</listitem>
</varlistentry>

</variablelist>

</refsect1>

<refsect1 id="client-variables"><title>VARIABLES ABOUT CLIENT</title>

<para>
変数「client<replaceable>n</replaceable>」(client1, client2, ...) は、
client サーバーを定義するために用います。
名前が「client<replaceable>n</replaceable>_」で始まる変数 (たとえば
<replaceable>client1_SSH</replaceable>) は、対応する
「client<replaceable>n</replaceable>」サーバーの設定パラメタをセットする
ために用います。
<command moreinfo="none">gfservice</command> が現在のところ認識する変数は、以下の通りです。
</para>

<variablelist>

<varlistentry>
<term><varname>client<replaceable>n</replaceable></varname></term>
<listitem>
<para>
クライアントホストを登録します。
変数の値は、クライアントホストのホスト名 (もしくは IP アドレス) を
表します。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_GFBINDIR</varname></term>
<listitem>
<para>
クライアントホスト上で <command moreinfo="none">gfservice-agent</command> コマンドが
インストールされているディレクトリへのパスを指定します。
この変数が宣言されていると <command moreinfo="none">gfservice</command> は、
「<command moreinfo="none"><varname>$client<replaceable>n</replaceable>_GFBINDIR</varname>/gfservice-agent</command>」を実行します。
宣言されていない場合は、「<command moreinfo="none">gfservice-agent</command>」を実行します。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_MOUNT_GFARM2FS</varname></term>
<listitem>
<para>
<command moreinfo="none">mount.gfarm2fs</command> コマンドのパスおよび
オプションを指定します。
<command moreinfo="none">gfservice</command> がクライアントホスト上で
<command>mount.gfarm2fs</command> コマンドを実行してファイルシステムを
マウントする際、この変数が利用されます。
デフォルトは「%%BINDIR%%/mount.gfarm2fs」です。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_UMOUNT_GFARM2FS</varname></term>
<listitem>
<para>
<command moreinfo="none">umount.gfarm2fs</command> コマンドのパスおよび
オプションを指定します。
<command moreinfo="none">gfservice</command> がクライアントホスト上で
<command>umount.gfarm2fs</command> コマンドを実行してファイルシステムを
アンマウントする際、この変数が利用されます。
デフォルトは「%%BINDIR%%/umount.gfarm2fs」です。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_SSH</varname></term>
<listitem>
<para>
SSH クライアントコマンドのパスおよびオプションを指定します。
<command moreinfo="none">gfservice</command> がクライアントホストに接続するために
SSH クライアントコマンド実行する際、この変数が利用されます。
デフォルトは「ssh」です。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_SUDO</varname></term>
<listitem>
<para>
Sudo コマンドのパスおよびオプションを指定します。
<command moreinfo="none">gfservice</command> が SSH を介してクライアントホスト上で Sudo
コマンドを実行する際、この変数が利用されます。
デフォルトは「sudo」です。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_GFARM_CONF</varname></term>
<listitem>
<para>
gfarm2.confファイルのパスを絶対パスで指定します。
この値が設定されていない場合、<command moreinfo="none">gfservice</command>はgfmd1の
gfarm2.confファイルのパスと同じパスを使用します(gfarm2.confファイルの
パスは「gfmd1_CONFIG_GFARM_OPTIONS」シェル変数の値を基に決定されます)。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_PRIVATE_MODE</varname></term>
<listitem>
<para>
この変数に「true」をセットすると、<command moreinfo="none">gfservice</command> が
サブコマンド <command moreinfo="none">config-client</command> を実行する際、クライアント
ホスト側の処理は root 権限を持たずに行います。
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><varname>client<replaceable>n</replaceable>_AUTH_TYPE</varname></term>
<listitem>
<para>
認証タイプ ("sharedsecret", "gsi", "gsi_auth" のいずれか) を指定します。
この変数が定義されていない場合は、gfmd1 上で
<command moreinfo="none">config-gfarm</command> を実行したときの
<varname>AUTH_TYPE</varname> の値が採用されます。
(変数 <varname>gfmd1_CONFIG_GFARM_OPTIONS</varname> の値によって、この
ときの <varname>AUTH_TYPE</varname> の値は変わるので、注意して下さい。)
</para>
</listitem>
</varlistentry>

</variablelist>

</refsect1>

</refentry>
