Я хотел бы узнать, что происходит с соединениями, когда nfs переключается на другой сервер (drbd). Если у меня открыт файл в vim, он зависает, я думаю, только иногда возвращается обратно.. через долгое время?
Каковы некоторые общие способы узнать, блокируется ли ввод-вывод, разрываются ли соединения и т. д. при возникновении отказа?
Итак, это использование плавающего IP-адреса между двумя серверами с использованием NFS с томом DRBD.
решение1
С точки зрения клиентов, если failower реализован достаточно хорошо, это будет выглядеть так, как будто сервер NFS исчез на очень короткое время, а затем вернулся. Однако, чтобы избежать потери данных, вы можете захотеть смонтировать с опцией "sync".
Один из способов узнать, ожидает ли процесс io, — выполнить «ps aux» и найти «D» в столбце «STAT». Распространенный способ узнать, есть ли какие-либо проблемы с любым сервером NFS, — изучить содержимое файлов журнала и вывод «dmesg» и поискать сообщения, связанные с NFS, например «nfs: server myserver not answersing, still trying».
Один из способов избежать зависания неубиваемой обработки на потерянных серверах NFS — добавить переключатель "intr" при монтировании NFS. С этим переключателем вы, по крайней мере, сможете убивать процессы, ожидающие серверы NFS, которые пропали.