GentooでNFSをやってたら、ときどき「刺さる」ことが気になっていた。
手動NFSの場合は問題がなく、automountを使うと問題が起こる。
どうやら automount 特有の問題らしい。
調べてみると、Gentoo のデフォルトでは server 側は60秒で umount をかけるようだ。一方の client 側は autofs のデフォルト値である300秒が設定されているようで、結果としてクライアント側はサーバーは縁を切ったつもりなのに接続したつもりになっているという状況が発生することが分かった。
要は、60秒以上の空白がなければ順調にマウントできているが、60秒を過ぎて300秒までの間にアクセスすると、クライアントは繋がったつもりだけどサーバーは切ってしまっているという悲しい状態になってしまうようだ。これが300秒を過ぎてアクセスすれば、双方とも切れた状態になっているので、何事もなかったかのように接続できるという仕組み。
というわけで、クライアント側のタイムアウト時間をサーバー側のタイムアウト時間よりも短くすればいいようだ。
/etc/autofs/auto.master に --timeout 30 のオプションを加え、クライアント側のタイムアウト時間をサーバーの半分の30秒にしたところ、今のところ順調そうである。
手動NFSの場合は問題がなく、automountを使うと問題が起こる。
どうやら automount 特有の問題らしい。
調べてみると、Gentoo のデフォルトでは server 側は60秒で umount をかけるようだ。一方の client 側は autofs のデフォルト値である300秒が設定されているようで、結果としてクライアント側はサーバーは縁を切ったつもりなのに接続したつもりになっているという状況が発生することが分かった。
要は、60秒以上の空白がなければ順調にマウントできているが、60秒を過ぎて300秒までの間にアクセスすると、クライアントは繋がったつもりだけどサーバーは切ってしまっているという悲しい状態になってしまうようだ。これが300秒を過ぎてアクセスすれば、双方とも切れた状態になっているので、何事もなかったかのように接続できるという仕組み。
というわけで、クライアント側のタイムアウト時間をサーバー側のタイムアウト時間よりも短くすればいいようだ。
/etc/autofs/auto.master に --timeout 30 のオプションを加え、クライアント側のタイムアウト時間をサーバーの半分の30秒にしたところ、今のところ順調そうである。
※コメント投稿者のブログIDはブログ作成者のみに通知されます