お問い合わせ

コース概要

モジュール1:マイクロサービスの設計

• 適切なマイクロサービスの境界
• ドメイン駆動設計(DDD)の使用法
• ビジネスドメインの境界への代替案(揮発性、データ、テクノロジー、組織構造による変動)
• モノリスの分離
• 早期デコンポジションのリスク
• レイヤごとのデコンポジション
• デコンポジションパターン(ストレンジラー、並行実行、フィーチャートグル)の使用法
• データ分解に関する懸念事項(パフォーマンス、整合性、トランザクション)

モジュール2:Dockerとランタイムの最適化

• 適切なベースイメージの選択
• レイヤー数の最小化
• マルチステージビルドの使用法
• イメージの最適化(複数行の引数などのソートなど)
• ビルドキャッシュの活用
• イメージバージョンの固定
• リソース割り当ての詳細なチューニング
• 安全なコンテナ運用プラクティス
• パフォーマンスのためのランタイム設定

モジュール3:Kubernetesとリリース戦略

Kubernetesデプロイメントの概要
• 初期デプロイメントの作成と実行
• Kubernetesデプロイメントオプション

ローリングアップデートデプロイメントの実行
• ローリングアップデートの理解
• ローリングアップデートの作成と実行
• デプロイメントのロールバック

カナリアデプロイメントの実行
• カナリアデプロイメントの理解
• カナリアデプロイメントの作成と実行

ブルーグリーンデプロイメントの実行
• ブルーグリーンデプロイメントの理解
• ブルーグリーンデプロイメントの作成と実行

ジョブとCronJobの実行
• ジョブとCronJobの作成

モニタリングおよびトラブルシューティングタスクの実行
• kubectlを用いたトラブルシューティング技法

モジュール4:自動化と運用効率化

Pythonを用いてKubernetesの一般的なタスクを自動化する
• Pythonを用いてKubernetesでの管理操作を実行する
• Pythonを用いて構成オブジェクトを定義する
• Pythonを用いてデプロイメントオブジェクトを作成する
• Pythonを用いてKubernetesイベントを監視する
• Pythonを用いてデプロイメントをスケーリングする

デプロイメント自動化の課題の理解
• Kubernetesによる宣言的構成
• 構成整合性の管理

GitOpsアプローチを用いたデプロイメント自動化
• GitOpsの原則
• Fluxの紹介
• KubernetesクラスターへのFluxインストール

自動デプロイメントのためのFlux設定
• 通知の使用法
• ソースリポジトリの構造

イメージ自動化によるアプリケーションアップデートの処理
• Fluxを用いてアプリケーションデプロイメントを更新する
• コンテナイメージリポジトリのタグをスキャンする
• 最新イメージ選択のポリシー定義
• 自動イメージ更新を実行するためのFlux設定

モジュール5:観測可能性と根本原因の明確化

Kubernetesのロギングおよびトレーシング機能
• ロギングとトレーシングが重要な理由
• Kubernetesログへのアクセス
• ポッドとコンテナのログ
• コントロールプレーンのログ
• ノードとポッドのリソース使用量

ログの収集と分析
• ログ集約
• ログ可視化

Kubernetesにおける分散トレーシング
• 分散トレーシングとは何か
• OpenTelemetryの使用法
• 分散トレーシングツール
• アプリケーションのインストゥルメンテーション
• トレーシングを用いたパフォーマンス問題の発見

PrometheusとGrafanaによるモニタリング
• 観測可能性の概念
• モニタリングツール
• Prometheusインストゥルメンテーションの使用法

ロギングの高度なユースケース
• ログ処理
• ログのフィルタリングとエンリッチメント
• イベントソーシング

モジュール6:クラスター危機シュミレーションとインシデント対応

• クラスター環境におけるさまざまな障害タイプの理解
• ノード障害のシュミレーション
• ポッド eviction & リソース枯渇シナリオ
• ネットワーク問題
• アプリケーションタイムアウト処理のためのDNS障害シュミレーション
• APIサーバー outage のシュミレーション
• システム安定性に向けた高トラフィックのシュミレーション
• ストレージ障害
• 構成エラー
• インシデント報告手順の理解

モジュール7:トラブルシューティング支援のためのAI

• Kubernetesにおける生成AIの利点
• K8sGPT CLIのアーキテクチャ
• K8sGPT CLIのインストール
• K8sGPTのコマンドと使用法
• K8sGTCアナライザー(podAnalyzer、pvcAnalyzer、rsAnalyzerなど)の使用法
• K8sGPTを用いたクラスターの分析
• K8sGPTを用いたリアルタイム問題の分析
• クラスター内オペレーター for K8sGPT

要求

  • Linuxコマンドラインの基礎知識
  • アプリケーション開発またはシステム管理の実務経験
  • コンテナ(Dockerの概念)への親しみ
  • Kubernetesの概念(ポッド、デプロイメント、サービスなど)に対する基本的な理解
  • ソフトウェアアーキテクチャ(例:API、サービス)に関する一般的な理解

対象者:

  • DevOpsエンジニア
  • サイト信頼性エンジニア(SRE)
  • マイクロサービスと連携するバックエンド/ソフトウェア開発者
  • クラウドエンジニアおよびプラットフォームエンジニア
  • Kubernetes環境に移行しようとしているシステム管理者

     

 49 時間

参加者の人数


参加者1人あたりの価格

お客様の声 (2)

今後のコース

関連カテゴリー