verificação de existência de bloqueio de arquivo no host remoto

1

Eu quero verificar a existência de bloqueio de arquivo em um arquivo no sistema de arquivos gluster. Para que eu possa ver de qualquer host que o bloqueio de arquivos é mantido por qualquer processo (remoto ou local) no arquivo no sistema de arquivos gluster.

Por exemplo: Eu tenho dois host: h1 e h2 , ambos com o RHEL 7.2. Eu tenho um aplicativo no host h1 que adquiriu o bloqueio de arquivo em um arquivo no sistema de arquivos gluster usando pthread_rwlock_wrlock API. Depois, às vezes, eu faço o host h1 .

Agora de h2 estou usando pthread_rwlock_trywrlock para ver se algum bloqueio é mantido neste arquivo ou não. Isso me devolveu EBUSY até 30 minutos de poweroff de h1 (parece que a aplicação de h1 ainda tem bloqueio nele). Após cerca de 30 minutos pthread_rwlock_trywrlock retornando 0 .

Existe alguma maneira de verificar rapidamente se um arquivo em gluster é mantido por algum processo ou não?

    
por dcds 14.11.2018 / 14:46

1 resposta

0

Após o ajuste abaixo do parâmetro de volumes gluster, funcionou.

network.frame-timeout 30
network.ping-timeout 5
server.keepalive-time 5
server.keepalive-interval 2
server.keepalive-count 2
server.tcp-user-timeout 5

Após o ajuste acima dos parâmetros dos volumes gluster. Estou vendo o aplicativo no host remoto capaz de detectar a existência de bloqueio em um arquivo de bloqueio no glusterfs em 10 segundos no desligamento da VM.

    
por 19.11.2018 / 09:48