インフラ作業支援ラボInfra Support Lab ← ガイド一覧← 戻る
トラブル解決

インフラのトラブル解決ガイド

問題が起きている人向けに、原因候補を並べるだけでなく、確認する順番と結果ごとの次の対応をまとめています。

systemd

systemdが起動しない・failedになる

statusとjournalから、Unit構文・実行パス・権限の原因を順番に切り分けます。

cronエラー

crontab: bad minuteになる

登録前の書式エラーを、5フィールド・6フィールド・不可視文字から確認します。

cron

cron・crontabが実行されない

登録先、実行ユーザー、PATH、ログを確認して動かない原因を切り分けます。

logrotate

logrotateでログが切り替わらない

デバッグ実行と状態ファイルから、条件・権限・再オープンを確認します。

Linux権限

Permission deniedになる

実行ユーザー、親ディレクトリ、ACL、SELinux、noexecを順番に確認します。

systemd

systemctl enableしたのに自動起動しない

systemctl enable済みなのに、OS再起動後にサービスが立ち上がらない場合の切り分け手順です。

cron

cronは実行されるがスクリプトが失敗する

cron自体は動いているのに、登録したスクリプトだけが失敗する場合の切り分け手順です。

logrotate

logrotate後にアプリがログを書かなくなる

ログローテーション自体は成功したのに、アプリが新しいログファイルへ書かなくなった場合の切り分け手順です。

SSH

SSH接続できない

Connection refused・timed out・Permission denied (publickey)から、通信・sshd・認証のどこで失敗しているかを切り分けます。

SSH

Permission denied (publickey)になる

ユーザー・鍵選択・authorized_keys・権限・sshd設定・ログを順に確認します。

Linux DNS

DNS名前解決できない

getent・nsswitch.conf・resolv.conf・resolvectl・digを使って、名前解決が失敗している場所を順番に切り分けます。

Linux容量

No space left on deviceになる

df・inode・du・削除済みオープンファイルを順番に確認し、容量不足の原因を切り分けます。

systemd

reset-failedと起動制限の再試行

failed状態とStart request repeated too quicklyを、根本原因の確認から安全にリセットします。

systemd

status=203/EXECになる

ExecStartの実体・権限・shebang・noexecを確認し、実行できない原因を切り分けます。

systemd

startでUnit not foundになる

Unit名・探索パス・system/user・読込み状態を確認し、起動前のエラーを解決します。

systemd

systemctl enableでFailed to enableになる

Unit名・static・masked・[Install]・権限を確認し、enable自体が失敗する原因を切り分けます。

Linux DNS

digでresolv.confのparseに失敗する

構文・不可視文字・symlink・DNS設定の管理元を確認します。

Docker障害

Dockerコンテナ起動失敗

Docker daemonへの接続障害と、コンテナ内アプリの終了を分け、ログ・終了コード・設定を順番に調べます。

Kubernetes障害

CrashLoopBackOffの原因

CrashLoopBackOffという結果ではなく、コンテナプロセスが終了した原因と再起動の仕組みを調べます。

Kubernetes障害

ImagePullBackOffの原因

アプリ起動後のクラッシュとは区別し、レジストリからのイメージ取得失敗を調べます。

Docker障害

Dockerのport is already allocated

競合しているホストポート・IP・プロセスを特定し、既存サービスを停止せず変更案を判断します。

Docker障害

Docker daemonへ接続できない・Permission denied

接続先の設定、Docker Engine・rootlessモード、UNIXソケット権限を変更せずに確認します。

Kubernetes障害

Kubernetes PodがPendingのまま

PodのConditionsとEventsから、リソース・Node制約・ストレージ・イメージ取得のどれが原因か絞ります。

作業ガイドとの違い

作業ガイドは設定を作る・変更する前に仕組みや設定値を確認するページです。トラブル解決ガイドは、すでに起きている症状をコマンドで順番に切り分けるページです。