OpenShift アプリケーションのデプロイ管理

このラボでは、OpenShift クラスターで通常のメンテナンス作業を実行するために、Pod を管理する方法を学びます。

必要な環境

このラボを開始する前に、**「OpenShift Container Platform のインストール」**に関するラボを完了し、以下の構成を持つ OpenShift クラスターが稼働していることを確認してください。
  • マスター 1台
  • ノード 2台(node1, node2)
環境が整っていない場合は、マスター、node1、node2 のホストをリセットし、以下のコマンドを実行してください。
環境が正しくセットアップされているか確認するには、次のコマンドを実行してください。

目標

このラボでは、以下のスキルを習得します。
✅ スケーラビリティの向上(Pod の数を増やす)
✅ ノードの指定(特定のノードでのみ Pod を実行)
✅ デプロイのロールバック(以前のバージョンに戻す)

手順

1. ノードのラベルを変更する

まず、node1 の region ラベルを services に、node2 を applications に変更します。

1.1. OpenShift に管理者としてログイン

1.2. 現在のノードラベルを確認

【期待される出力】

1.3. node1 のラベルを services に変更

1.4. node2 のラベルを applications に変更

1.5. ラベルの変更を確認

【期待される出力】

2. manage-review プロジェクトを作成


3. version アプリケーションをデプロイ

3.1. version アプリをデプロイ(PHP 7.0)
3.2. Pod の数を 3 にスケール
3.3. Pod の状態を確認
【期待される出力(Pod は node2 に配置される)】
📌 Pod が node2 に集中している理由
  • デフォルトのスケジューラー設定では、同じ region ラベルを持つノードを優先するため、Pod は node2 に配置される。
  • ここでは、意図的に node2 のみに配置するよう設定を変更する。

4. Pod を node2 のみにスケジュール

4.1. DeploymentConfig をエクスポート
4.2. nodeSelector を追加(YAML ファイルを編集)
4.3. 設定を適用
4.4. Pod の再配置を確認

5. node1 に Pod を移動

node2 をメンテナンスのために停止し、node1 へ Pod を移動する。

5.1. node1 のラベルを変更

5.2. node2 をスケジューリング不可に設定

5.3. node2 の Pod を削除し、node1 へ再配置

5.4. node1 に Pod が移動したか確認

【期待される出力】

6. アプリケーションを外部公開


7. アプリケーションの動作確認

【期待される出力】

8. 環境を元に戻す

8.1. node2 をスケジューリング可能にする
8.2. ノードのラベルを infra に戻す
8.3. manage-review プロジェクトを削除

まとめ

✅ Pod のスケールアップ
✅ 特定のノードでの Pod 実行
✅ デプロイのロールバック
✅ ノードのメンテナンス時の Pod の移動
以上でラボ完了です! 🎉
 

まとめ

この章では、以下の内容を学びました:
  • レプリケーションコントローラー は、指定された数のPodレプリカが常に稼働していることを保証します。
  • OpenShiftのHorizontalPodAutoscaler を使用すると、現在の負荷に応じて自動的にスケール調整が行われます。
  • スケジューラー は、新しいPodをOpenShiftクラスタ内のどのノードに配置するかを決定します。特定のノードにPodを制限して配置するには、クラスタ管理者がノードにラベルを設定し、開発者がノードセレクターを定義します。
  • トリガー により、OpenShift内外のイベントをもとに新しいデプロイメントが作成されます。
  • イメージストリーム は、Dockerのイメージリポジトリのように、関連するコンテナイメージをタグ付きで管理し、一つの仮想的なビューとして提供します。
 
65- 第14章:アプリケーションデプロイメントの管理-6:イメージストリームの管理の演習52- 第12章:OpenShiftリソースへのアクセス制御-4:データベースパスワード保護の演習
Loading...
minami
minami
みなみの成長 🐝
Announcement

🎉 ブログへようこそ 🎉

名前: みなみ一人会社
性別: 男
国籍: China 🇨🇳
完全独学で基本情報技術者をはじめ、32個の資格を仕事をしながら取得。
現在はIT会社で技術担当として働きながら、ブログ執筆や学習支援にも取り組んでいます。
独学で合格できる学習法や勉強法、試験対策を発信中!

📚 発信内容

  • 💻 IT・システム開発
  • 🏠 不動産 × 宅建士
  • 🎓 MBA 学習記録