6.5. Configuração dos recursos e grupo de recursos para um servidor NFS em um cluster
Esta seção fornece o procedimento para configurar os recursos do cluster para este caso de uso.
Se você não tiver configurado um dispositivo de esgrima para seu cluster, por padrão os recursos não começam.
Se você descobrir que os recursos que você configurou não estão funcionando, você pode executar o pcs resource debug-start resource
comando para testar a configuração do recurso. Isto inicia o serviço fora do controle e do conhecimento do cluster. No ponto em que os recursos configurados estão rodando novamente, executar pcs resource cleanup resource
para que o grupo tome conhecimento das atualizações.
O procedimento a seguir configura os recursos do sistema. Para garantir que todos estes recursos funcionem no mesmo nó, eles são configurados como parte do grupo de recursos nfsgroup
. Os recursos começarão na ordem em que são adicionados ao grupo, e pararão na ordem inversa em que são adicionados ao grupo. Execute este procedimento a partir de um único nó do grupo.
Criar o recurso LVM-activate chamado
my_lvm
. Como o grupo de recursosnfsgroup
ainda não existe, este comando cria o grupo de recursos.AtençãoNão configure mais de um recurso
LVM-activate
que utiliza o mesmo grupo de volume LVM em uma configuração HA ativa/passiva, pois isso corre o risco de corrupção de dados. Além disso, não configure um recursoLVM-activate
como um recurso clone em uma configuração de HA ativa/passiva.[root@z1 ~]#
pcs resource create my_lvm ocf:heartbeat:LVM-activate
vgname=my_vg
vg_access_mode=system_id --group nfsgroup
Verifique o status do agrupamento para verificar se o recurso está funcionando.
root@z1 ~]#
pcs status
Cluster name: my_cluster Last updated: Thu Jan 8 11:13:17 2015 Last change: Thu Jan 8 11:13:08 2015 Stack: corosync Current DC: z2.example.com (2) - partition with quorum Version: 1.1.12-a14efad 2 Nodes configured 3 Resources configured Online: [ z1.example.com z2.example.com ] Full list of resources: myapc (stonith:fence_apc_snmp): Started z1.example.com Resource Group: nfsgroup my_lvm (ocf::heartbeat:LVM): Started z1.example.com PCSD Status: z1.example.com: Online z2.example.com: Online Daemon Status: corosync: active/enabled pacemaker: active/enabled pcsd: active/enabledConfigurar um recurso
Filesystem
para o cluster.O seguinte comando configura um recurso ext4
Filesystem
chamadonfsshare
como parte do grupo de recursosnfsgroup
. Este sistema de arquivo usa o grupo de volume LVM e o sistema de arquivo ext4 que você criou em Configuring an LVM volume with an ext4 file system e será montado no diretório/nfsshare
que você criou em Configuring an NFS share.[root@z1 ~]#
pcs resource create nfsshare Filesystem
\device=/dev/my_vg/my_lv directory=/nfsshare
\fstype=ext4 --group nfsgroup
Você pode especificar opções de montagem como parte da configuração do recurso para um recurso
Filesystem
com ooptions=options
parâmetro. Execute o comandopcs resource describe Filesystem
para opções de configuração completa.Verifique se os recursos
my_lvm
enfsshare
estão funcionando.[root@z1 ~]#
pcs status
... Full list of resources: myapc (stonith:fence_apc_snmp): Started z1.example.com Resource Group: nfsgroup my_lvm (ocf::heartbeat:LVM): Started z1.example.com nfsshare (ocf::heartbeat:Filesystem): Started z1.example.com ...Criar o recurso
nfsserver
chamadonfs-daemon
como parte do grupo de recursosnfsgroup
.NotaO recurso
nfsserver
permite especificar um parâmetronfs_shared_infodir
, que é um diretório que os servidores NFS usam para armazenar informações de estado relacionadas ao NFS.Recomenda-se que este atributo seja definido em um subdiretório de um dos recursos
Filesystem
que você criou nesta coleção de exportações. Isto garante que os servidores NFS estejam armazenando suas informações de estado em um dispositivo que ficará disponível para outro nó se este grupo de recursos precisar se relocalizar. Neste exemplo;-
/nfsshare
é o diretório de armazéns compartilhados gerenciado pelo recursoFilesystem
-
/nfsshare/exports/export1
e/nfsshare/exports/export2
são os diretórios de exportação -
/nfsshare/nfsinfo
é o diretório de informações compartilhadas para o recursonfsserver
[root@z1 ~]#
pcs resource create nfs-daemon nfsserver
\nfs_shared_infodir=/nfsshare/nfsinfo nfs_no_notify=true
\--group nfsgroup
[root@z1 ~]#pcs status
...-
Adicione os recursos de
exportfs
para exportar o diretório/nfsshare/exports
. Estes recursos fazem parte do grupo de recursosnfsgroup
. Isto constrói um diretório virtual para clientes do NFSv4. Os clientes do NFSv3 também podem acessar estas exportações.NotaA opção
fsid=0
é necessária somente se você quiser criar um diretório virtual para clientes do NFSv4. Para mais informações, veja Como configurar a opção fsid no arquivo /etc/exports de um servidor NFS?[root@z1 ~]#
pcs resource create nfs-root exportfs
\clientspec=192.168.122.0/255.255.255.0
\options=rw,sync,no_root_squash
\directory=/nfsshare/exports
\fsid=0 --group nfsgroup
[root@z1 ~]# #pcs resource create nfs-export1 exportfs
\clientspec=192.168.122.0/255.255.255.0
\options=rw,sync,no_root_squash directory=/nfsshare/exports/export1
\fsid=1 --group nfsgroup
[root@z1 ~]# #pcs resource create nfs-export2 exportfs
\clientspec=192.168.122.0/255.255.255.0
\options=rw,sync,no_root_squash directory=/nfsshare/exports/export2
\fsid=2 --group nfsgroup
Adicione o recurso de endereço IP flutuante que os clientes NFS usarão para acessar o compartilhamento NFS. Este recurso faz parte do grupo de recursos
nfsgroup
. Para este exemplo de implantação, estamos usando 192.168.122.200 como o endereço IP flutuante.[root@z1 ~]#
pcs resource create nfs_ip IPaddr2
\ip=192.168.122.200 cidr_netmask=24 --group nfsgroup
Adicione um recurso
nfsnotify
para enviar notificações de reinicialização do NFSv3 quando toda a implantação do NFS tiver sido iniciada. Este recurso faz parte do grupo de recursosnfsgroup
.NotaPara que a notificação NFS seja processada corretamente, o endereço IP flutuante deve ter associado um nome de host que seja consistente tanto nos servidores NFS quanto no cliente NFS.
[root@z1 ~]#
pcs resource create nfs-notify nfsnotify
\source_host=192.168.122.200 --group nfsgroup
Depois de criar os recursos e as restrições de recursos, você pode verificar o status do agrupamento. Observe que todos os recursos estão funcionando no mesmo nó.
[root@z1 ~]#
pcs status
... Full list of resources: myapc (stonith:fence_apc_snmp): Started z1.example.com Resource Group: nfsgroup my_lvm (ocf::heartbeat:LVM): Started z1.example.com nfsshare (ocf::heartbeat:Filesystem): Started z1.example.com nfs-daemon (ocf::heartbeat:nfsserver): Started z1.example.com nfs-root (ocf::heartbeat:exportfs): Started z1.example.com nfs-export1 (ocf::heartbeat:exportfs): Started z1.example.com nfs-export2 (ocf::heartbeat:exportfs): Started z1.example.com nfs_ip (ocf::heartbeat:IPaddr2): Started z1.example.com nfs-notify (ocf::heartbeat:nfsnotify): Started z1.example.com ...