Linux サーバで作業をしていると、「何かおかしい」と感じる瞬間は定期的にやってくる。
サービスに繋がらない、急に重くなった、監視に引っかかったなど、きっかけはさまざまだ。
以前は、そういうときにいきなり設定を開いたり、サービスを再起動したりしてしまうこともあった。でも今は、まず“状態を把握する”ことを最優先にしている。
その中で、ほぼ毎回確認している項目がある。
今回は、自分がLinuxサーバを触るときに「最初に見ている5つのポイント」を整理してみる。
① サーバに接続できるか
まずは、そもそもサーバに接続できるかどうか。
SSHでログインできるか、pingが通るかなど、最低限の疎通確認を行う。
ここで問題がある場合、Linuxの中身以前に、ネットワーク・仮想基盤・FWなど外側の問題の可能性が高い。
この切り分けを最初にしておくだけで、無駄にOS側を疑わずに済む。
② サービスが動いているか
次に確認するのが、対象のサービスが動いているかどうか。
「Webが見えない」ならWebサービス、
「監視が止まった」なら監視プロセス、といったように、まず状態を把握する。
止まっているのか、エラー状態なのか、起動はしているのか。
この時点で「ログを見るべきか」「設定を見るべきか」の方向性がかなり絞られる。
③ ログに異常が出ていないか
サービス状態を確認したら、次はログ。
journalctlやアプリケーションログを見て、直近でどんなメッセージが出ているかを確認する。
設定エラー、依存関係、権限、ポート競合など、
多くの場合、原因に近い情報はログに何かしら残っている。
エラー行だけで判断せず、前後の流れを見るようにしている。
④ リソースに余裕があるか
サービスが動いていても、CPU・メモリ・ディスクが限界に近いと、別の問題を引き起こす。
- ディスクフルで書き込み不可
- メモリ不足でプロセス停止
- 高負荷でタイムアウト
一見アプリの問題に見えても、リソースが原因だった、ということは少なくない。
⑤ ネットワークに問題がないか
最後にネットワーク。
IP設定、疎通、名前解決、ポートの開放状況などを確認する。
特に「ローカルでは動いているのに外から繋がらない」系のトラブルでは、
ここを見落とすと遠回りになりやすい。
まとめ
この5つを順番に見るようになってから、
トラブル対応で迷うことがかなり減った。
トラブル対応は、知識量よりも
「何から確認するかが決まっているか」のほうが重要だと感じている。


コメント