🎯 レッスンの目的__HTMLTAG_66___
- ✅ 体系的なトラブルシューティング方法
- ✅ ポッドのトラブルシューティング (CrashLoopBackOff、保留中、OOM)
- ✅ ネットワークの問題 (DNS、サービス検出、接続)
- ✅ ストレージの問題 (PV/PVC、マウント エラー)
- ✅ コントロール プレーンのトラブルシューティング__HTMLTAG_77___
- ✅ 必須の診断ツール
パート 1: トラブルシューティング方法
コードブロック_0
パート 2: ポッドのトラブルシューティング
コードブロック_1
コードブロック_2
パート 3: ネットワークのトラブルシューティング
コードブロック_3
パート 4: ストレージのトラブルシューティング
コードブロック_4
パート 5: コントロール プレーンのトラブルシューティング
コードブロック_5
パート 6: 一般的なエラーのクイック リファレンス
___HTMLTAG_137__OOM強制終了| エラー | 一般的な原因 | 簡単な修正 |
|---|---|---|
| ImagePullBackOff | 画像名/タグが間違っています、プルシークレットがありません_ | 画像を確認し、画像PullSecretsを追加してください |
| CrashLoopBackOff | アプリのクラッシュ、env/config の欠落 | ログの確認 --previous_ |
| _保留中 | リソースが不足しています。一致するノードがありません | イベント、ノード容量を確認してください_ |
| メモリ制限を超えました | 制限を増やすか、リークを修正してください_ | |
| CreateContainerConfigError | ConfigMap/Secretが見つかりません | 参照リソースが存在することを確認してください |
| エビクト_ | ノードのディスク/メモリの負荷 | ノードのクリーンアップ、リソースの増加_ |
| バックオフ再起動 | Readiness プローブの失敗 | プローブの構成、ポート、パスを確認してください_ |
| 接続が拒否されました | サービスの準備ができていません、ポートが間違っています | _エンドポイント、サービスポートを確認してください_ |
| DNS 解決に失敗しました | CoreDNS がダウンしています、サービス名が間違っています_ | coredns ポッド、FQDN を確認してください_ |
💡 重要なポイント
- 体系的なアプローチ: 特定→分離→診断→修正→検証
- kubectl description: K8s の問題に対する最初のツール
- イベント: kubectl イベントを取得 --sort-by=.lastTimestamp
- デバッグ コンテナ: ライブ診断用の一時的なコンテナ
- レイヤーごと: アプリ → コンテナ → ポッド → サービス → ノード → クラスター
- ドキュメント: すべての修正はランブック エントリになります
🎯 演習
演習 1: トラブルシューティングの課題
- Teammate は 5 つの壊れたデプロイメントを作成します (間違ったイメージ、欠落した構成マップなど)
- kubectl__HTMLTAG_225___ のみを使用してそれぞれを診断して修正します
- それぞれの診断手順を文書化
演習 2: 診断ツールキット
- netshoot、pg_isready、redis-cli を使用して「デバッグ ツールボックス」ポッドを作成
- DNS、ネットワーク、ストレージのトラブルシューティングを実践
- _個人的なトラブルシューティングのチートシートを作成
📚 次の投稿
__HTMLTAG_243___レッスン 50: Capstone プロジェクト — E コマース プラットフォーム では、エンドツーエンドのマイクロサービス システム全体を構築してデプロイします。