type
status
date
slug
summary
tags
category
icon
password
ソリューション:マルチコンテナアプリケーションのデプロイ
このラボでは、OpenShiftテンプレートを使用して、PHPアプリケーションとMySQLデータベースをデプロイし、アプリケーションに必要なリソースを定義します。
成果物
複数のコンテナで構成されたOpenShiftアプリケーションを作成し、ウェブブラウザーを通じてアクセスできるようになります。
始める前に
第7章「OpenShift Container Platformのインストール」のラボをすべて完了し、マスターと2つのノードを持つOpenShift Container Platformクラスターが稼働している必要があります。もしまだ実施していない場合は、以下のコマンドを使用してマスター、ノード1、ノード2ホストをリセットし、作業ホストで環境が正しく設定されていることを確認してください。
クラスターが開始され、必要なファイルがダウンロードされることを確認するため、作業ホストで以下のコマンドを実行します。
1. OpenShiftクラスターにログインし、この演習用の新しいプロジェクトを作成
1.1. ワークステーションVMから、管理者ユーザーとしてログインします。
ターミナルウィンドウで以下のコマンドを実行します。
oc login コマンドが「安全でない接続の使用」に関して尋ねてきた場合は、y(はい)と答えます。
1.2. OpenShiftで新しいプロジェクト「deploy」を作成します。
以下のコマンドを実行してプロジェクトを作成します。
1.3. デフォルトのクラスターセキュリティポリシーを緩和します。
適切な権限でコンテナを実行できるように、提供されたsetpolicy.shシェルスクリプトを使用してセキュリティポリシーを設定します。
2. データベースコンテナイメージのビルドとプライベートレジストリへの公開
2.1. 提供されたDockerfileとビルドスクリプトを使用してMySQLデータベースイメージをビルドします。
2.2. MySQLイメージをプライベートレジストリにプッシュします。
イメージにタグ「registry.lab.example.com/do285/mysql-57-rhel7」を付けて、プライベートレジストリにプッシュします。
3. PHPコンテナイメージのビルドとプライベートレジストリへの公開
3.1. 提供されたDockerfileとビルドスクリプトを使用してPHPイメージをビルドします。
3.2. PHPイメージにタグを付けて、プライベートレジストリにプッシュします。
4. 提供されたテンプレートファイル /home/student/DO285/labs/deploy-multicontainer/quote-php-template.json を確認
テンプレート内で定義されたポッド、サービス、および永続ボリュームクレームの設定を確認します。
5. アプリケーションに必要な永続ボリュームを作成
提供されたcreate-pv.shスクリプトを使用して永続ボリュームを作成します。
6. PHPアプリケーションテンプレートをアップロード
以下のコマンドでテンプレートをプロジェクトにアップロードします。
7. アップロードしたテンプレートを処理してアプリケーションリソースを作成
7.1. oc process コマンドを使用してテンプレートファイルを処理し、結果を oc create コマンドにパイプで送ってアプリケーションを作成します。
7.2. デプロイのステータスを確認します。
8. サービスを公開
PHP Quoteアプリケーションを外部ネットワークからアクセスできるようにするため、oc expose コマンドでquote-phpサービスを公開します。
9. アプリケーションのテスト
9.1. oc get route コマンドでアプリケーションが利用可能なFQDNを確認します。
9.2. curl コマンドでPHP QuoteアプリケーションのREST APIをテストします。
10. クリーンアップ
10.1. 演習で使用したプロジェクトを削除します。
10.2. 提供されたdelete-pv.shスクリプトを使用して永続ボリュームを削除します。
10.3. Dockerfileビルド時に生成したコンテナイメージを削除します。
これでラボは終了です。

 
概要
この章では、以下の内容を学びました:
  • コンテナ化されたアプリケーションは、サービスを見つけるために固定IPアドレスやホスト名に依存することはできません。DockerとKubernetesは、ネットワーク接続パラメータを定義する環境変数を提供する仕組みを提供します。
  • ユーザー定義のDockerネットワークを使用すると、コンテナは他のコンテナと名前で通信できるようになります。コンテナが相互に通信できるようにするためには、同じユーザー定義ネットワークに接続する必要があります。これには、docker runコマンドの-networkオプションを使用します。
  • Kubernetesサービスは、同じプロジェクト内のすべてのポッドに注入される環境変数を定義します。
  • Kubernetesのテンプレートは、サービスによって相互接続された複数のポッドから構成されるアプリケーションを自動的に作成します。
  • テンプレートパラメータは、複数のポッドに対する環境変数を定義します。
 
43- 第10章:OpenShift でのマルチコンテナアプリケーションのデプロイ-2:テンプレートの演習45- 第11章:コマンドの実行-1:CLIを使用したリソースの構成の説明
Loading...
minami
minami
一个普通的干饭人🍚
Announcement

🎉 ブログへようこそ 🎉

notion image
名前:みなみ独立事務所
性別:男
国籍:China
完全独学だけで基本情報をはじめ31個の資格を仕事をしながら合格。 現在はIT会社の技術担当や、ブログの執筆や学習支援などを手掛けています。 独学で合格できる学習法、勉強法、試験対策を配信します!

📚 主な内容

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

🔍 コンテンツの探し方

現在、サイトのデザインはシンプルなため、情報がやや探しにくいかもしれません。
気になるテーマを探す際は、タグ検索の利用をおすすめします。