2023/03/13NFSで盛大にやらかしたという経験があるので話したい。みんなも気をつけよう...目次1、NFSにデータを入れて共有していた2、予期せぬエラーが発生3、NFSエラー対策4、教訓1、NFSにデータを入れて共有していたあらゆるキャッシュデータをさくらVPSの追加ストレージ(NFS)に保存。各サーバーにキャッシュを保存すると管理が大変。して一元管理にしようと考えついた先が、「NFSを使おう」だった。さくらVPSならNFSが月額880円からある。マウントするマニュアルが公式にあるので簡単。ローカルネットワーク接続なのでレスポンスも抜群。他のローカル内サーバーと変わらない速度で安心。全サーバーでマウントすると、共有ディレクトリの出来上がり。「/mnt」で使えるのでプログラミングも楽々です。自作プログラムが動かない。結論的にはNFSに繋がっていなかったことが原因です。マウントから外れていた(中身を認識しない)。メモリ解放をしたのが原因か、ubuntuの自動更新が原因か。エラーが特殊な感じだったので原因特定に苦戦。NFSが原因と特定することができず、2時間くらいかかりました。mntというディレクトリは見えているけど、中身を認識しないという悪質さ。再マウントしたらエラーは無くなり万事解決。今回の原因はおそらくメモリ解放による不具合。再起動時の自動マウント設定をしていなかったこと。公式マニュアルに書いてあるのに、すっかり忘れていた。あとはやはり、NFSを信用しすぎていた、です。3、NFSエラー対策バックアップをローカルに置き、NFSを認識しない時はローカルのデータを取得するようにした。NFSと全く同じデータをcronで定期的に各サーバーにコピー。無かったらローカルのファイルを確認して使うという設計に。{include($cachegile_local);}これでもうNFSが故障しても一時的には問題無い。4、教訓なんでも冗長化大事。サーバーは冗長化しているのに、プログラムを冗長化していない愚かさ。明らかに経験不足、スキル不足です。今後はキャッシュの取得等は必ず冗長化します。エラーになったらメールが来るようになっていますが、NFSが認識しないというのは想定外で作動せず。キャッシュ取得も一つ一つエラーでメールをするようにしたい。迷惑をかけたけども、この経験でだいぶスキルが上がったと思う。みなさんも「全てを信用しない設計」を意識ください。投稿日:2023/01/17(2023年対応済)2019年版:Logwatch(ログウォッチ)をNginxに対応させる方法。管理人について名前:doudonn(どうどん)ひたすらWEB制作な人。Proでやるメリット6つの話(スマホとの違い)イノベーターのスーツケースの種類一覧と選び方の解説!お知らせ2022年11月30日に全記事削除しました。無駄にページ表示速度にこだわってます。通称「ダンカグ」のWiki。スタンドアローン版ダンカグのWiki。通称「キャノボ・東方CB」のWiki。