type
status
date
slug
summary
tags
category
icon
password
书籍
ガイド付き演習
アプリケーションのスケーリング
このラボでは、実行中のポッドの数を増加させてアプリケーションをスケーリングします。
リソース
- アプリケーション URL: http://scaling.apps.lab.example.com
目標
デプロイメント構成を使用してアプリケーションをスケーリングし、複数のポッドをデプロイできるようになります。
開始前の準備
第7章「OpenShift Container Platformのインストール」からのすべてのラボが完了しており、OpenShift Container Platform クラスターがマスターと2つのノードで実行されていることを確認してください。もしそうでない場合は、マスター、ノード1、ノード2ホストをリセットし、ワークステーションホストで以下のコマンドを実行して環境が正しく設定されていることを確認してください。
手順
1. 新しいプロジェクトを作成
1.1. 開発者ユーザーとしてOpenShiftにログイン:
1.2.
scaling
という名前のプロジェクトを作成:2. スケーリングをテストするためのアプリケーションを作成
2.1. 新しいアプリケーションを作成し、その定義をYAMLファイルとしてエクスポートします。
php:7.0
イメージストリームを使用:2.2. YAMLリソース定義ファイルをテキストエディタで開く:
DeploymentConfig
リソースを探し、replicas
属性を 1
から 3
に変更します。この変更により、アプリケーションが作成されるときに3つのポッドが作成されます。ファイルを保存してエディタを終了します。
2.3.
oc create
コマンドを使用してアプリケーションを作成:出力例:
2.4. ビルドの状態を確認:
※ビルドが完了するまで数秒かかる場合があります。ビルドの状態が「Complete」に変わるまで待ち、
Ctrl+C
でコマンドを終了します。2.5. 使用可能なポッドをリスト表示:
出力例:
前のコマンドを繰り返して、スケーリングアプリケーションの3つのポッドが表示されるまで待ちます。すべてのポッドが準備完了で実行中になるまで、少し時間がかかることがあります。
3. アプリケーションのルートを作成して、各ポッドへのリクエストをバランスさせる
出力例:
4. アプリケーションのポッドのIPアドレスをWebコンソールで取得し、それらをスケーリングアプリケーションで報告されているIPアドレスと比較します。
4.1. ワークステーションからWebブラウザ(アプリケーション → インターネット → Firefox)を開き、次のURLにアクセスします:
ユーザー名に
developer
、パスワードに redhat
を入力してログインします。4.2. ページの右側にある「My Projects」の下で、scaling
をクリックします。

図14.1: スケーリングプロジェクト
4.3. スケーリングの左側にあるドロップダウンメニューを選択し、「#1」をクリックして、3つのアプリケーションポッドにアクセスします。

図14.2: プロジェクト概要ページ
4.4. 左側のナビゲーションペインで「アプリケーション → ポッド」を選択して、ポッドを表示します。

図14.3: アプリケーションポッド
ポッド名の1つをクリックして、ポッドの詳細を表示します。詳細には、その内部IPアドレスも含まれます。

図14.4: ポッドの詳細
4.5. ワークステーションで oc get pods
コマンドに o wide
オプションを付けて実行し、各実行中のポッドの内部IPアドレスを表示します:
5. OpenShiftのルーターがアプリケーションへのリクエストをバランスよく分配していることを確認します。そのためには、curl
コマンドを実行するために for
ループを使用します。
各リクエストは異なるIPアドレスを返すべきです。なぜなら、各リクエストは異なるポッドによって処理されるからです。もしポッドよりも多くのリクエストを送ると、同じIPアドレスが重複して表示されます。
出力例:
注:
Webブラウザを使ってロードバランシングを確認することはできません。なぜなら、OpenShiftのルーターはセッションアフィニティ(別名、スティッキーセッション)を実装しているからです。同じWebブラウザからのすべてのリクエストは同じポッドに送られます。新しいタブやウィンドウを開いてもセッションアフィニティは回避できません。別のWebブラウザアプリケーションを使用するか、異なるコンピュータからWebブラウザを開く必要があります。
6. アプリケーションのポッド数を増やしてスケールします。
6.1. 現在のDeploymentConfigで指定されているレプリカの数を確認します:
出力例:
6.2. oc scale
コマンドを使って、ポッドの数(レプリカ)を5に増やします:
6.3. また、OpenShiftのWebコンソールの「Overview」タブからもポッドの数を変更できます。青いドーナツの隣にある上矢印または下矢印をクリックすることで、ポッド数を増減できます。

注
ポッドの数が増減するにつれて、Overviewページの青いドーナツがそれに応じて変化することを確認できます。
6.4. 現在、このアプリケーションで5つのポッドが実行されていることを確認します:
出力例:
6.5. ルーターが新しいポッドへのリクエストをバランスよく分配していることを確認します(同じURLを使用):
出力例:
ステップ5の出力と比較します。ルーターが5つのアプリケーションポッド間でリクエストをラウンドロビン方式でバランスよく分配していることが確認できます。
7. クリーンアップ
ワークステーションで次のコマンドを実行して、
scaling
プロジェクトを削除します:出力例:
これで、ガイド付き演習は終了です。
- 作者:みなみ
- 链接:https://www.minami.ac.cn//%E8%B3%87%E6%A0%BC%E5%8B%89%E5%BC%B7/1a9d7ae8-88e2-8002-94de-e802b6b3f109
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章