Eu tenho uma replicação simples de 2 tijolos usando dois nós. Estou tentando fazer com que o ponto de montagem do volume seja montado automaticamente na inicialização. Eu tentei várias soluções, comoaquieaqui, mas a maioria delas são soluções desatualizadas. Estou usando o systemd e o gluster 3.8.12.
Aqui está a linha fstab relevante:
127.0.0.1:/gv-ftp-data /data glusterfs defaults,_netdev,noexec,nosuid,nodev,acl,context=system_u:object_r:user_home_t:s0 0 2
Observe que 127.0.0.1 ocorre porque estou usando os dois nós na configuração servidor/cliente.
Agora, configurei regras de iptables no nó para permitir a comunicação gluster com outros nós. Montar manualmente o ponto /data como root não apresenta problemas e resolve perfeitamente as alterações de arquivo do outro nó.
No entanto, simplesmente não consigo fazer isso automaticamente na inicialização. Tentei usar montagens automáticas do systemd e não consegui fazer isso funcionar, e tentei adicionar x-systemd.automount
as opções do fstab sem sucesso.
Olhando para trás no diário, encontrei esta linha:
May 24 10:16:12 ftp-2.novalocal mount[2019]: /usr/bin/fusermount-glusterfs: mount failed: Permission denied
Estou pensando que esse é o culpado, como eu resolveria isso? Observe que /data pertence ao root com permissões 711 (e precisa permanecer assim, se possível)
Responder1
Eu descobri isso para outras pessoas que estão tendo o mesmo problema. Tive que criar um módulo SELinux usando estes comandos (graças ao setroubleshoot):
ausearch -c 'fusermount-glus' --raw | audit2allow -M my-fusermountglus
semodule -i my-fusermountglus.pp
Fazer isso me permitiu voltar ao modo de aplicação sem problemas, agora o diretório está montado na inicialização.