6.3.3.2.3. クラスターサービスの設定
HA クラスターは、Pacemaker および Corosync を使用して維持されます。Pacemaker はリソースマネージャーを処理し、Corosync はクラスターの通信層を提供します。Pacemaker/Corosync の詳細は、Red Hat Enterprise Linux 7 ドキュメントの 『Clustering』 セクション: https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/ を参照してください。
注記
クラスターのクォーラムを維持するために、3 つ以上のノードを使用して NFS Ganesha HA クラスターを設定することを推奨します。
- 以下のコマンドを使用して Pacemaker サービスを有効にします。Red Hat Enterprise Linux 7 の場合:
# systemctl enable pacemaker.service
- 以下のコマンドを使用して pcsd サービスを起動します。Red Hat Enterprise Linux 7 の場合:
# systemctl start pcsd
注記- システムの再起動後にデフォルトで pcsd を起動するには、以下のコマンドを実行します。Red Hat Enterprise Linux 7 の場合
# systemctl enable pcsd
- 以下のコマンドを使用して、すべてのノードに ’hacluster’ ユーザーのパスワードを設定します。すべてのノードに同じパスワードを使用します。
# echo <password> | passwd --stdin hacluster
- ノード間でクラスター認証を行います。ここで、username は ’hacluster’ で、password は直前の手順で使用したものです。すべてのノードで以下のコマンドを実行してください。Red Hat Enterprise Linux 7 の場合:
# pcs cluster auth <hostname1> <hostname2> ...
Red Hat Enterprise Linux 8 の場合:# pcs host auth <hostname1> <hostname2> ...
注記すべてのノードでノードを実行する際には、Ganesha-HA クラスターのすべてのノードのホスト名をコマンドに含める必要があります。たとえば、nfs1、nfs2、nfs3、および nfs4 の 4 つのノードクラスターで、すべてのノードで以下のコマンドを実行します。Red Hat Enterprise Linux 7 の場合:# pcs cluster auth nfs1 nfs2 nfs3 nfs4 Username: hacluster Password: nfs1: Authorized nfs2: Authorized nfs3: Authorized nfs4: Authorized
Red Hat Enterprise Linux 8 の場合:# pcs host auth nfs1 nfs2 nfs3 nfs4 Username: hacluster Password: nfs1: Authorized nfs2: Authorized nfs3: Authorized nfs4: Authorized
- root ユーザーのパスワードなしで鍵ベースの SSH 認証を、全 HA ノードで有効にする必要があります。次の手順を実行します。
- クラスターのいずれかのノード (node1) で、以下を実行します。
# ssh-keygen -f /var/lib/glusterd/nfs/secret.pem -t rsa -N ''
- すべてのノードについて以下のコマンドを実行して、生成された公開鍵を node1 からすべてのノード (node1 を含む) にデプロイします。
# ssh-copy-id -i /var/lib/glusterd/nfs/secret.pem.pub root@<node-ip/hostname>
- すべてのノードについて以下のコマンドを実行して、Ganesha-HA クラスターのすべてのノードに node1 から ssh キーペアをコピーします。
# scp -i /var/lib/glusterd/nfs/secret.pem /var/lib/glusterd/nfs/secret.* root@<node-ip/hostname>:/var/lib/glusterd/nfs/
- クラスターの設定の一環として、ポート 875 は Rquota サービスにバインドされます。このポートがすでに使用されている場合は、すべてのノードの /etc/ganesha/ganesha.conf ファイルで以下の行を変更して、このサービスに別のポートを割り当てます。
# Use a non-privileged port for RQuota Rquota_Port = 875;