Rulez un sistem de fișiere Spectrum Scale pe RHEL8 care este exportat prin NFSv3. Partea HA este realizată de ctdb folosind 4 noduri (activ-activ), urmând acest ghid de configurare de către oamenii samba/ctdb: https://wiki.samba.org/index.php/Setting_up_CTDB_for_Clustered_NFS.
În nfs.conf există o cale de director de stat pentru statd care indică un director din sistemul de fișiere partajat Spectrum Scale:
state-directory-path=/shared/.hadata/nfs/statd
Acum, în secțiunea mountd există și un parametru de director de stare, dar este comentat/neutilizat:
#state-directory-path=/var/lib/nfs
man rpc.mountd
afirmă:
-s, directorul --state-directory-path
Specificați un director în care să plasați informațiile de stare (etab și rmtab). Dacă această opțiune nu este specificată, se utilizează implicit /var/lib/nfs.
Acest parametru este nu set, realizând directorul local /var/lib/nfs
fiind folosit pentru acele fișiere. Mă întreb de ce. Din înțelegerea mea, a avea aceste două fișiere într-un spațiu de stocare partajat ar ajuta la menținerea unui rmtab curat (er) și ar împiedica nodurile să aibă exporturi inconsistente.
Pentru referință nfs.conf-ul meu complet:
[general]
[exportf]
[gssd]
folosește-gss-proxy=1
[lockd]
port=55599
udp-port=55599
[montd]
manage-gids=1
port=55597
fire=40
[nfsdcld]
[nfsdcltrack]
[nfsd]
fire=768
vers3=y
vers4=n
vers4.0=n
vers4.1=n
vers4.2=n
[statd]
port=55595
portul de ieșire=55596
nume=myfs
state-directory-path=/shared/.hadata/nfs/statd
ha-callout=/etc/ctdb/statd-callout
[sm-notify]