NAME¶
gfarm2.conf - Gfarm設定ファイル
DESCRIPTION¶
gfarm2.confファイルは、gfarmプログラムの設定ファイルです。
サーバー・プロセスであるgfsdは、デフォルトでは、
この%%SYSCONFDIR%%/gfarm2.confを設定ファイルとして参照します。
メタデータサーバー・プロセスであるgfmdは、%%SYSCONFDIR%%/gfmd.confを
読み込みます。gfmd.confの形式は、gfarm2.confと同一です。
なお、設定内容が読み込まれるのは起動時だけなので、
設定内容を変更した場合、サーバーを再起動する必要があります。
アプリケーションプログラムは、環境変数GFARM_CONFIG_FILEで
指定したファイルと、%%SYSCONFDIR%%/gfarm2.confを、設定ファイル
として参照します。この二つのファイルでは、環境変数GFARM_CONFIG_FILEで
指定したファイルの設定の方が先に読み込まれます。
どちらの設定ファイルも、同一の文法で記述します。
同一の指定文が複数あった場合には、先に指定されていた方が優先されます。
環境変数GFARM_CONFIG_FILEが設定されてない場合、代わりに
ユーザーのホームディレクトリにある.gfarm2rcファイルを使用します。
gfarm2.confは、一行に一文の形式で設定します。
ただし、行末に文字``\''を記述することによって、行を継続させることが
できます。また、文字``#''から行末までは、コメントとして扱われ、無視
されます。
ホスト指定¶
引数として、
ホスト指定を記述できる文がいくつかありますが、
この場合、ホスト指定には、下記のいずれかを記述できます。
- III.JJJ.KKK.LLL
- "."で区切られた0〜255までの数字4つで、IPアドレスを指定します。
- III.JJJ.KKK.LLL/MM
- IPアドレスと、"/"で区切られた0〜31までの数字で、ネットワークを
指定します。"/"以降の数字はnetmaskのビット長です。
- domain.name
- ホスト名をドメイン名で指定します。
- .domain.name
- ドメイン名の先頭が"."ではじまる場合、このドメイン名に所属する全ての
ホストを意味します。
- *
- "*"と記述されている場合、全てのホストを意味します。
- LISTENER
- 全て大文字で"LISTENER"と記述すると、通信する相手に関係なく、
サーバー側(着呼側)のソケットを意味します。
文には、下記の種類があります。
- spool
gfsdスプール・ディレクトリ
- gfsdが、gfarmファイルの実体を保持するディレクトリ名を
指定します。
例:
spool /var/spool/gfarm
- spool_server_listen_address
IPアドレス
- gfsdがTCPおよびUDPの要求を受け付けるIPアドレスを指定します。
省略時は、そのホストの全てのIPアドレスで受け付けます。
このオプションは、一つのノードで複数のスプールを提供する場合に、
それぞれのスプールごとに、別々のIPアドレスを使ってgfsdを起動する
ために用います。
例:
spool_server_listen_address 192.168.121.1
- spool_server_cred_type cred_type
- GSI認証において、gfsdが用いる証明書の種類を指定します。
sharedsecret利用時には、この指定は単に無視されます。
サーバ側でこの指定を省略した場合、サーバをroot権限で起動した場合は
ホスト証明書を用います。またサーバを一般ユーザ権限で起動した場合は
ユーザ証明書を用います。
クライアント側でこの指定を省略した場合、サーバがホスト証明書を利用している
と仮定してサーバ認証を行います。このためサーバをクライアントと同じユーザ
権限で起動している場合、クライアント側では、下記の一行を設定して
おく必要があります。
例:
spool_server_cred_type self
指定可能な
cred_typeとしては、
「self」、
「host」、「user」、
「mechanism-specific」があり、
spool_server_cred_serviceおよび
spool_server_cred_nameと組み合わせて
下記のように用います。
- self
- そのユーザが現在所持しているユーザ証明書を用いることを示します。
この指定を利用する際には、
spool_server_cred_serviceおよび
spool_server_cred_nameの
指定を行ってはいけません。
- host
- ホスト証明書あるいはサービス証明書を用いることを示します。
サービス証明書を用いる場合、そのサービスの名前を
spool_server_cred_serviceで指定します。
サービス名に「host」を指定した場合、
ファイル``
/etc/grid-security/hostcert.pem''に
あるホスト証明書を用います。
それ以外のサービス名を指定した場合、
ファイル``
/etc/grid-security/サービス/サービスcert.pem''
にあるサービス証明書を用います。
サービス名を省略した場合、「host」が指定されたとみなします。
ホスト証明書およびサービス証明書の場合、証明書のCommon
Name欄のみを
比較します。Common
Nameは、「CN=サービス名/ホスト名」の形式である必要が
あります。また、ホスト名は、
gfhostコマンドで指定した
正式名と正確に一致している必要があります。ホスト別名は許されません。
これは、GSSAPI
(RFC2743/RFC2744)のGSS_C_NT_HOSTBASED_SERVICEに
対応する機能です。
例:
spool_server_cred_type host
spool_server_cred_service host
- user
- ユーザ証明書を用いることを示します。
ユーザのアカウント名をspool_server_cred_nameで指定します。
アカウント名を省略した場合には、そのコマンドを起動したユーザ名が使われます。
この指定を利用する際には、spool_server_cred_serviceの
指定を行ってはいけません。
ユーザ名と証明書のDistinguished
Nameの対応をとるため、
``
/etc/grid-security/grid-mapfile''を用います。
このため、このファイルが存在しなかったり、あるいはこのファイルに登録
されてないユーザは、この機能を用いることができません。
これは、GSSAPI
(RFC2743/RFC2744)のGSS_C_NT_USER_NAMEに対応する機能です。
例:
spool_server_cred_type user
spool_server_cred_name guest
- mechanism-specific
- サーバのX.509 Distinguished
Nameをspool_server_cred_nameで
直接指定します。
この指定を利用する際には、spool_server_cred_serviceの
指定を行ってはいけません。
これは、GSSAPI (RFC2743/RFC2744)でName
TypeとしてGSS_C_NO_OIDを
指定した場合に対応する機能です。
例:
spool_server_cred_type mechanism-specific
spool_server_cred_name "/O=Grid/O=Globus/OU=example.com/CN=John Smith"
- spool_server_cred_service
cred_service
- GSI認証において、spool_server_cred_typeとして
「host」を指定している場合に、gfsdが用いるサービス証明書の
種類を指定します。
sharedsecret利用時には、この指定は単に無視されます。
詳しくはspool_server_cred_typeの項を参照してください。
- spool_server_cred_name cred_name
- GSI認証において、spool_server_cred_typeで指定した値に
応じて、gfsdが用いる証明書の設定を行います。
sharedsecret利用時には、この指定は単に無視されます。
詳しくはspool_server_cred_typeの項を参照してください。
- metadb_server_host
gfmdホスト名
- gfmdが動作しているホスト名を指定します。
この設定は必須です。
例:
metadb_server_host ldap.example.com
- metadb_server_port
gfmdポート番号
- gfmdが利用するTCPポートの番号を指定します。
省略時のデフォルト・ポート番号は601番です。
例:
metadb_server_port 601
- metadb_server_cred_type cred_type
- GSI認証において、gfmdが用いる証明書の種類を指定します。
sharedsecret利用時には、この指定は単に無視されます。
設定の意味についてはspool_server_cred_typeの項を
参照してください。
- metadb_server_cred_service
cred_service
- GSI認証において、metadb_server_cred_typeとして
「host」を指定している場合に、gfmdが用いるサービス証明書の
種類を指定します。
sharedsecret利用時には、この指定は単に無視されます。
設定の意味についてはspool_server_cred_typeの項を
参照してください。
- metadb_server_cred_name cred_name
- GSI認証において、metadb_server_cred_typeで指定した値に
応じて、gfmdが用いる証明書の設定を行います。
sharedsecret利用時には、この指定は単に無視されます。
設定の意味についてはspool_server_cred_typeの項を
参照してください。
- metadb_server_stack_size
バイト数
- メタデータサーバgfmd内の各スレッドが利用するスタックのサイズを
指定します。省略された場合OSのデフォルト値が使われます。
このパラメータは、gfmdの消費する仮想メモリ空間のサイズを節約するために
用います。
たとえば、CentOS
5/i386の場合、デフォルトのスタックサイズは10MBです
ので、このパラメータでスタックサイズを256KBに抑えると、gfmdのスタック
が消費する仮想メモリ空間のサイズを、1/40に減らすことができます。
この文はgfmd.confのみで有効であり、gfarm2.confでは無視されます。
例:
metadb_server_stack_size 262144
- metadb_server_thread_pool_size
スレッド数
- メタデータサーバgfmdのスレッドプールのスレッド数を指定します。
メタデータサーバノードのコア数くらいに設定すると効果的です。
デフォルト値は16です。
この文はgfmd.confのみで有効であり、gfarm2.confでは無視されます。
例:
metadb_server_thread_pool_size 16
- metadb_server_job_queue_length
キュー長
- メタデータサーバgfmdのジョブキューのキュー長を指定します。
一度に接続する最大クライアントの数くらいに設定すると効果的です。
デフォルト値は16000です。
この文はgfmd.confのみで有効であり、gfarm2.confでは無視されます。
例:
metadb_server_job_queue_length 160
- metadb_server_heartbeat_interval
秒数
- メタデータサーバgfmdが各ファイルシステムサーバgfsd
に対し動作確認を行うハートビートの間隔を秒数で指定します。
デフォルト値は180秒です。
Gfarm-2.3.0まではこの文はgfmd.confのみで有効であり、gfarm2.confでは
無視されていましたが、Gfarm-2.4.0以降はgfsdもこのパラメータを利用し
gfmd停止を検知するため、
gfarm2.confとgfmd.confの両方で指定する必要があります。
例:
metadb_server_heartbeat_interval 180
- metadb_server_dbq_size
キュー長
- メタデータサーバgfmdではメタデータの変更をバックエンドDBに
非同期的に反映しますが,そのキューの長さを指定します。
キュー長を長くすると,バックエンドDBの更新速度に律速されにくくなります。
デフォルト値は65536です。
この文はgfmd.confのみで有効であり、gfarm2.confでは無視されます。
例:
metadb_server_dbq_size 65536
- ldap_server_host
LDAPサーバー・ホスト名
- gfmdのバックエンド・データベースとして
LDAPサーバを選択する場合、
LDAPサーバーが動作しているホスト名を指定します。
この文はgfmd.confで用いられ、gfarm2.confでは用いられません。
例:
ldap_server_host ldap.example.com
- ldap_server_port
LDAPサーバー・ポート番号
- LDAPサーバーが利用するTCPポートの番号を指定します。
ldap_server_hostを指定する場合には、
この設定は必須です。
例:
ldap_server_port 602
- ldap_base_dn
LDAP_base_distinguished_name
- LDAPデータベースで保持するデータのキーの根となるノードの
名称、base distinguished
nameを指定します。
ldap_server_hostを指定する場合には、
この設定は必須です。
例:
ldap_base_dn "dc=example, dc=com"
- ldap_bind_dn
LDAP_bind_distinguished_name
- LDAPデータベースに接続する際の認証に用いる名称を、distinguished
nameで指定します。
例:
ldap_bind_dn "cn=gfarmuser, dc=example, dc=com"
- ldap_bind_password password
- LDAPデータベースに接続する際の認証パスワードを指定します。
例:
ldap_bind_password "secret-ldap-password"
- postgresql_server_host
PostgreSQLサーバー・ホスト名
- gfmdのバックエンド・データベースとして
PostgreSQLサーバを選択する場合、
PostgreSQLサーバーが動作しているホスト名を指定します。
この文はgfmd.confで用いられ、gfarm2.confでは用いられません。
例:
postgresql_server_host postgresql.example.com
- postgresql_server_port
PostgreSQLサーバー・ポート番号
- PostgreSQLサーバーが利用するTCPポートの番号を指定します。
postgresql_server_hostを指定する場合には、
この設定は必須です。
例:
postgresql_server_port 602
- postgresql_dbname dbname
- PostgreSQLデータベース名を指定します。
postgresql_server_hostを指定する場合には、
この設定は必須です。
例:
postgresql_dbname gfarm
- postgresql_user user
- PostgreSQLデータベースに接続するデータベース管理下のユーザ名を指定します。
例:
postgresql_user gfarm
- postgresql_password password
- PostgreSQLデータベースに接続するデータベース管理下のユーザのパスワードを指定します。
例:
postgresql_password "secret-postgresql-password"
- postgresql_conninfo
connection_info
- PostgreSQLデータベースに接続するときの接続オプションを指定します。
例:
postgresql_conninfo "sslmode=require connect_timeout=30"
- auth 有効性
認証方法
ホスト指定
- この文は、第3引数で指定したホストとの通信に用いる認証方法を設定します。
第1引数の
有効性部には、enableないしdisable
キーワードを指定します。
第2引数の
認証方法部には、gsi、
gsi_authないしsharedsecret
キーワードを指定します。
第3引数には、
ホスト指定を記述します。
この文は複数指定可能です。各認証方法ごとに、先頭から順にホスト指定に
適合するかどうか調べ、有効であるとの指定に適合した場合、その認証方法が
利用候補になります。有効であるとの指定に適合しない場合や、あるいは
有効であるとの指定に適合するよりも前に無効であるとの指定に適合した
場合、その認証方法は、候補になりません。
この指定は、サーバー側とクライアント側の両方で解釈され、
双方ともで有効になっている認証方法のみが用いられます。
認証方法が異なるものに関しては、指定の順序は意味がありません。
複数の認証方法が候補となった場合、sharedsecret、
gsi_auth、gsi認証の順序で試みます。
Gfarmのコンパイル時にglobusとのリンクを指定しなかった場合、
GSIは利用できません。この場合、gsiおよび
gsi_auth認証の指定は単に無視されます。
この設定は必須です。
例:
auth disable sharedsecret 192.168.0.100
auth disable sharedsecret 192.168.0.101
auth enable sharedsecret 192.168.0.0/24
auth enable gsi_auth 10.0.0.0/8
auth enable gsi *
この例では、ホスト192.168.0.100と192.168.0.101の2つのホストを
除いた192.168.0.0/24ネットワークに属すホストには
sharedsecretとgsiの両方を、
10.0.0.0/8ネットワークに属すホストにはgsi_authおよび
gsiの両方を、
それ以外の全てのホストにはgsi認証のみを試みます。
すなわち、ホスト192.168.0.100と192.168.0.101の2つのホストは、
gsi認証のみを試みることになります。
- sockopt
オプション
[=値] [LISTENER |
ホスト指定 ]
- 通信socket(2)に対して、setsockopt(2)システムコールを使って
ソケット・オプションを指定します。
第2引数に全て大文字でLISTENERを指定した場合、
サーバー側(着呼側)のソケットに指定するオプションになります。
この場合、通信する相手に関係なく、
一律にソケット・オプションが設定されます。
第2引数にホスト指定を記述した場合、クライアント側(発呼側)の
ソケットに指定するオプションになります。この場合、通信する相手毎に
ソケット・オプションを変えることができます。
なお、第2引数に"*"と記述すると、クライアント側(発呼側)の全ての
ホストを意味することになり、サーバー側(着呼側)には適用されません。
第2引数を省略した場合、サーバー側とクライアント側の両方で、
全ての通信相手に対して同じソケット・オプションを設定します。
指定可能なソケット・オプションには次のものがあります。
debug。setsockopt(2)システムコールで、SO_DEBUGソケット・オプションを指定します。値を記述する必要はありません。
keepalive。setsockopt(2)システムコールで、SO_KEEPALIVE
ソケット・オプションを指定します。値を記述する必要はありません。
sndbuf。setsockopt(2)システムコールで、SO_SNDBUF
ソケット・オプションを指定します。値の指定が必要です。
rcvbuf。setsockopt(2)システムコールで、SO_RCVBUF
ソケット・オプションを指定します。値の指定が必要です。
tcp_nodelay。setsockopt(2)システムコールで、TCP_NODELAY
ソケット・オプションを指定します。値を記述する必要はありません。
例:
sockopt tcp_nodelay 192.168.0.0/24
sockopt sndbuf=1048576 10.0.0.0/8
sockopt sndbuf=1048576 LISTENER
sockopt rcvbuf=1048576 10.0.0.0/8
sockopt rcvbuf=1048576 LISTENER
- known_network
ホスト指定
- ファイルシステムノードのネットワークを指定します。
本ネットワークは、
ファイルシステムノード選択時のグルーピングに利用されます。
この文で指定したアドレスに適合しないIPアドレスの場合、
IPv4のクラスCネットワークが仮定されます。
例:
known_network 192.168.0.0/24
- admin_user
ユーザ名
- gfmd.conf内のこの文で指定されたユーザが、
デフォルトの特権ユーザとなります。
- admin_user_gsi_dn DN
- gfmd.conf内のadmin_user文で指定された特権ユーザのSubject
DNを指定します。
- local_user_map
ユーザマップファイルパス名
- sharedsecret認証において、
グローバルユーザ名とローカルユーザ名の対応関係を記述した
ユーザマップファイルパス名を指定します。
この設定は必須ではありませんが、
その場合ローカルユーザ名がグローバルユーザ名に変換されます。
同一ユーザーに対して、
異なるローカルアカウント名を与えているファイルシステムノードがある場合や、
ローカルユーザ名とは異なるグローバルユーザ名を利用したい場合、
このファイルで、各ノードのローカルなユーザ名に対して、単一の
グローバルユーザ名を定義します。
例:
local_user_map /etc/gfarm/gfarm-usermap
ユーザーマップファイルは、グローバルユーザー名と
ローカルユーザー名を、空白で区切って各行に記述します。
ユーザマップファイルの内容例:
foobar foo
quux baz
この例の1行目の指定では、このノードのローカルユーザ名fooに
対してグローバルユーザ名foobarが定義されています。
- local_group_map
グループマップファイルパス名
- グローバルグループ名とローカルグループ名の対応関係を記述した
グループマップファイルパス名を指定します。
このマップファイルは,ローカルシステムのグループIDを利用するgfarm2fsや
Globus GridFTPのGfarm
DSIなどで利用されます。
この設定は必須ではありませんが、
その場合ローカルグループ名はグローバルグループ名と等しいと仮定されます。
例:
local_group_map /etc/gfarm/gfarm-groupmap
グループマップファイルは、グローバルグループ名と
ローカルグループ名を、空白で区切って各行に記述します。
- schedule_cache_timeout
秒数
- gfarmライブラリが内部的に保持している、ファイルシステムノード
のスケジューリング処理に関わる情報、すなわちロードアベレージ、
ディスク空き容量、認証が通るか否か等のキャッシュの有効期限を秒数で指定します。
停止していたファイルシステムノードが復活したような場合、この期限が
切れるまでは、そのノードがスケジューリングされないことがあります。
デフォルトは600秒すなわち10分です。
例:
schedule_cache_timeout 60
- schedule_idle_load_thresh
CPU負荷
- ファイルシステムノードのスケジューリング時に、
CPU負荷が低いとみなされるCPU負荷を指定します。
ここで指定されるCPU負荷より低いCPU負荷のファイルシステムノードが
まずはスケジュール対象となります。
デフォルト値は0.1です。
例:
schedule_idle_load_thresh 0.1
- schedule_busy_load_thresh
CPU負荷
- ファイルシステムノードのスケジューリング時に、
CPU負荷が高いとみなされるCPU負荷を指定します。
ここで指定されるCPU負荷より高いCPU負荷のファイルシステムノードは
当初スケジュール対象となりません。
デフォルト値は0.5です。
例:
schedule_busy_load_thresh 0.5
- schedule_virtual_load
CPU負荷
- ファイルシステムノードが選択されたとき、
CPU負荷のクライアントキャッシュにここで指定されるCPU負荷が加えられます。
これにより、
一度スケジュールされたファイルシステムノードが何度もスケジュールされることを防いでいます。
デフォルト値は0.3です。
例:
schedule_virtual_load 0.3
- minimum_free_disk_space
バイト数
- ファイルシステムノードで必要な最小限度のディスク空き容量を指定
します。このサイズ以下の空き容量しかないファイルシステムノードは、
ファイル書き込みを行う可能性のある操作を行う際に、選択されにくくなります。
指定はバイト単位で行いますが、数字の末尾に空白を開けずにk/M/G/Tを指定
することで、それぞれ1kバイト/1Mバイト/1Gバイト/1Tバイトを単位とする
ことができます。
デフォルトは128Mバイトです。
このパラメータは、gfarm2.confとgfmd.confの両方で指定する必要があります。
有効にするためには
gfmd および
Gfarmクライアントを再起動する必要があります。
例:
minimum_free_disk_space 1G
- simultaneous_replication_receivers
同時処理数
- gfmd
主導の複製処理を、単一複製作成ホストに対して、
同時いくつまで並行して行なうことを許すかを設定します。
デフォルトは
20です。
例:
simultaneous_replication_receivers 40
- gfsd_connection_cache
コネクション数
- gfarmライブラリがgfsdとの通信に用いるコネクションを、いくつ
までキャッシュするかを指定します。
デフォルトは16コネクションです。
例:
gfsd_connection_cache 32
- attr_cache_limit 個数
- gfarmライブラリがキャッシュする属性の最大数を指定します。
デフォルトは40000個です。
例:
attr_cache_limit 100000
- attr_cache_timeout
ミリ秒数
- gfarmライブラリが属性をキャッシュしている時間を、ミリ秒単位で指定します。
デフォルトは
1000ミリ秒すなわち
1秒です。
例:
attr_cache_timeout 3600000
- log_level
優先度レベル
- どの優先度レベル以上のログを出力するかを指定します。
ここで指定したレベル未満の優先度のログは、syslogや標準エラーへ
送られません。
レベルは、優先度の高い順に"emerg",
"alert", "crit", "err", "warning",
"notice", "info",
"debug"です。
デフォルトの出力レベルは"info"です。
"crit"以上の優先度を指定することは、お勧めできません。
例:
log_level debug
- log_message_verbose_level
レベル
- ログメッセージの冗長度を指定します。
デフォルトは0です。レベル0では、ログIDが出力されます。
レベル1では、レベル0に加えソースコードのファイル名と行番号が出力されます。
レベル2では、レベル1に加え関数名が出力されます。
例:
log_message_verbose_level 1
- no_file_system_node_timeout
秒数
- 利用可能なファイルシステムノードが存在しない場合,
Gfarmクライアントライブラリはファイルシステムノードが利用可能になるまで試行を繰り返しますが、
そのタイムアウト時間を秒単位で指定します。
デフォルトは
30秒です。
例:
no_file_system_node_timeout 30
- gfmd_reconnection_timeout
秒数
- メタデータサーバへの接続が切断された場合,
メタデータサーバへの再接続を繰り返しますが,
そのタイムアウト時間を秒単位で指定します。
デフォルトは
30秒です。
例:
gfmd_reconnection_timeout 30
GRAMMAR¶
gfarm2.confの文法をBNFで記述すると、下記のようになります。
<statement> ::=
<spool_statement> |
<spool_server_listen_address_statement> |
<spool_server_cred_type_statement> |
<spool_server_cred_service_statement> |
<spool_server_cred_name_statement> |
<metadb_server_host_statement> |
<metadb_server_port_statement> |
<metadb_server_cred_type_statement> |
<metadb_server_cred_service_statement> |
<metadb_server_cred_name_statement> |
<metadb_server_stack_size_statement> |
<metadb_server_thread_pool_size_statement> |
<metadb_server_job_queue_length_statement> |
<metadb_server_heartbeat_interval_statement> |
<metadb_server_dbq_size_statement> |
<ldap_server_host_statement> |
<ldap_server_port_statement> |
<ldap_base_dn_statement> |
<ldap_bind_dn_statement> |
<ldap_bind_password_statement> |
<postgresql_server_host_statement> |
<postgresql_server_port_statement> |
<postgresql_dbname_statement> |
<postgresql_user_statement> |
<postgresql_password_statement> |
<postgresql_conninfo_statement> |
<auth_statement> |
<sockopt_statement> |
<known_network_statement> |
<admin_user_statement> |
<admin_user_gsi_dn_statement> |
<local_user_map_statement> |
<local_group_map_statement> |
<schedule_cache_timeout_statement> |
<schedule_idle_load_thresh_statement> |
<schedule_busy_load_thresh_statement> |
<schedule_virtual_load_statement> |
<minimum_free_disk_space_statement> |
<simultaneous_replication_receivers> |
<gfsd_connection_cache_statement> |
<attr_cache_limit_statement> |
<attr_cache_timeout_statement> |
<log_level_statement> |
<log_message_verbose_level_statement>
<spool_statement> ::= "spool" <pathname>
<spool_server_listen_address_statement> ::=
"spool_server_listen_address" <ipv4_address>
<spool_server_cred_type_statement> ::=
"spool_server_cred_type" <cred_type>
<spool_server_cred_service_statement> ::=
"spool_server_cred_service" <cred_service>
<spool_server_cred_name_statement> ::=
"spool_server_cred_name" <cred_name>
<metadb_server_host_statement> ::= "metadb_server_host" <hostname>
<metadb_server_port_statement> ::= "metadb_server_port" <portnumber>
<metadb_server_cred_type_statement> ::=
"metadb_server_cred_type" <cred_type>
<metadb_server_cred_service_statement> ::=
"metadb_server_cred_service" <cred_service>
<metadb_server_cred_name_statement> ::=
"metadb_server_cred_name" <cred_name>
<metadb_server_stack_size_statement> ::=
"metadb_server_stack_size" <number>
<metadb_server_thread_pool_size_statement> ::=
"metadb_server_thread_pool_size" <number>
<metadb_server_job_queue_length_statement> ::=
"metadb_server_job_queue_length" <number>
<metadb_server_heartbeat_interval_statement> ::=
"metadb_server_heartbeat_interval" <number>
<metadb_server_dbq_size_statement> ::=
"metadb_server_dbq_size" <number>
<ldap_server_host_statement> ::= "ldap_server_host" <hostname>
<ldap_server_port_statement> ::= "ldap_server_port" <portnumber>
<ldap_base_dn_statement> ::= "ldap_base_dn" <string>
<ldap_bind_dn_statement> ::= "ldap_bind_dn" <string>
<ldap_bind_password_statement> ::= "ldap_bind_password" <string>
<postgresql_server_host_statement> ::= "postgresql_server_host" <hostname>
<postgresql_server_port_statement> ::= "postgresql_server_port" <portnumber>
<postgresql_dbname_statement> ::= "postgresql_dbname" <string>
<postgresql_user_statement> ::= "postgresql_user" <string>
<postgresql_password_statement> ::= "postgresql_password" <string>
<postgresql_conninfo_statement> ::= "postgresql_conninfo" <string>
<auth_statement> ::=
"auth" <validity> <auth_method> <hostspec>
<auth_command> ::= "enable" | "disable"
<auth_method> ::= "gsi" | "gsi_auth" | "sharedsecret"
<sockopt_statement> ::=
"sockopt" <socket_option>[=<number>] [""LISTENER" | <hostspec>]
<socket_option> = "debug" | "keepalive" | "sndbuf" | "rcvbuf" |
"tcp_nodelay"
<known_network_statement> ::= "known_network" <hostspec>
<admin_user_statement> ::= "admin_user" <string>
<admin_user_gsi_dn_statement> ::= "admin_user_gsi_dn" <string>
<local_user_map_statement> ::= "local_user_map" <pathname>
<local_group_map_statement> ::= "local_group_map" <pathname>
<schedule_cache_timeout_statement> ::= "schedule_cache_timeout" <number>
<schedule_idle_load_thresh_statement> ::= "schedule_idle_load_thresh" <load>
<schedule_busy_load_thresh_statement> ::= "schedule_busy_load_thresh" <load>
<schedule_virtual_load_statement> ::= "schedule_virtual_load" <load>
<minimum_free_disk_space_statement> ::=
"minimum_free_disk_space" <size>
<simultaneous_replication_receivers> ::= "simultaneous_replication_receivers" <number>
<gfsd_connection_cache_statement> ::= "gfsd_connection_cache" <number>
<attr_cache_limit_statement> ::= "attr_cache_limit" <number>
<attr_cache_timeout_statement> ::= "attr_cache_timeout" <number>
<log_level_statement> ::= "log_level" <log_priority>
<log_message_verbose_level_statement> ::= "log_message_verbose_level" <number>
<no_file_system_node_timeout_statement> ::= "no_file_system_node_timeout" <number>
<gfmd_reconnection_timeout_statement> ::= "gfmd_reconnection_timeout" <number>
<hostspec> ::= <ipv4_address> | <ipv4_address> "/" <address_mask> |
<hostname> | "." <domain_name> | "*"
<pathname> ::= <pathname_character> <pathname_character>*
<pathname_character> ::= <hostname_character> | "," | "/" | "_"
<hostname> ::= <hostname_character> <hostname_character>*
<hostname_character> ::= <alphabet> | <digit> | "-" | "."
<portnumber> ::= <number>
<size> ::= <number> [ "k" | "M" | "G" | "T" ]
<number> ::= <digit> [<digit>*]
<digit> ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"
<string> ::= """ <double_quoted_character>* """
<double_quoted_character> ::=
<any_character_except_backslash_and_double_quotation> |
"\\" | "\""
<validity> ::= "enable" | "disable"
<log_priority> ::= "emerg" | "alert" | "crit" | "err" | "warning" |
"notice" | "info" | "debug"
EXAMPLES¶
メタデータの保存にPostgreSQLを使い、IPアドレス192.168.0.0/24の
ファイルシステムノードやクライアントに対して、sharedsecret認証を
使う例です。
spool /var/spool/gfarm
metadb_server_host metadb.example.org
metadb_server_port 601
postgresql_server_host metadb.example.org
postgresql_server_port 5432
postgresql_dbname gfarm
postgresql_user gfarm
postgresql_password "secret-postgresql-password"
auth enable sharedsecret 192.168.0.0/24
sockopt keepalive
メタデータの保存にLDAPを使い、任意のIPアドレスを使う
ファイルシステムノードやクライアントに対して、GSI認証を使う例です。
spool /var/spool/gfarm
metadb_server_host metadb.example.com
metadb_server_port 601
ldap_server_host metadb.example.com
ldap_server_port 602
ldap_base_dn "dc=example, dc=com"
ldap_bind_dn "cn=gfarmuser, dc=example, dc=com"
ldap_bind_password "secret-ldap-password"
auth enable gsi *
sockopt keepalive
FILES¶
- %%SYSCONFDIR%%/gfarm2.conf
- $HOME/.gfarm2rc
SEE ALSO¶
gfmd(8),
gfsd(8),
setsockopt(2)