次の方法で共有


Azure Red Hat OpenShift に WebSphere Liberty と Open Liberty をデプロイする

この記事では、Azure portal を使用して Azure Red Hat OpenShift で IBM WebSphere Liberty と Open Liberty をすばやく立ち上げる方法について説明します。

この記事では、Open/WebSphere Liberty の Azure Marketplace オファーを使って、Azure Red Hat OpenShift への移行を加速します。 このオファーでは、OpenShift Container Registry (OCR) が組み込まれた Azure Red Hat OpenShift クラスター、Liberty Operator、必要に応じて Liberty とアプリケーションを含むコンテナー イメージを含むいくつかのリソースが自動的にプロビジョニングされます。 オファーを表示するには、Azure portal にアクセスします。 オファーによって有効になる自動化を利用せずに、Azure Red Hat OpenShift 上で Liberty を実行するための手動のステップ バイ ステップ ガイダンスを使う場合は、「Azure Red Hat OpenShift クラスター上で Open Liberty/WebSphere Liberty を使って Java アプリケーションを手動でデプロイする」を参照してください。

この記事は、デプロイをすばやく行うのに役立ちます。 運用環境に移行する前に、Tuning Liberty について調べる必要があります。

WebSphere on Azure ソリューションを開発しているエンジニアリング チームと密接に連携しながら移行シナリオに取り組むことに関心がある場合は、こちらの簡単な WebSphere 移行に関するアンケートに内容を記入し、連絡先情報を含めてください。 プログラム マネージャー、アーキテクト、エンジニアのチームからすぐに連絡があり、緊密なコラボレーションが開始されます。

重要

ARO は、統合されたサポート エクスペリエンスを提供するために、Red Hat および Microsoft によって共同でエンジニアリング、運用、サポートされていますが、この記事で説明されているものを含め、ARO で実行するソフトウェアは、独自のサポートとライセンス条項の対象となります。 ARO のサポートの詳細については、「Azure Red Hat OpenShift 4 のサポート ライフサイクル」を参照してください。 この記事で説明されているソフトウェアのサポートの詳細については、この記事に記載されているソフトウェアのメイン ページを参照してください。

Note

OpenShift クラスターを作成して実行するには、Azure Red Hat OpenShift に少なくとも 40 コアが必要です。 新しい Azure サブスクリプションの既定の Azure リソース クォータは、この要件を満たしていません。 リソース制限の引き上げを要求するには、「VM ファミリの vCPU クォータの増加」の「調整可能でないクォータの引き上げを要求する」のセクションを参照してください。 引き上げを要求する必要があるクォータの種類は "調整不可" であるため、サポート チケットを提出する必要があります。 「調整可能でないクォータの引き上げを要求する」の手順では、正しい内容でチケットを提出する方法を正確に示します。

無料試用版サブスクリプションは、クォータの引き上げの対象ではありません。 クォータの引き上げを要求する前に、従量課金制サブスクリプションにアップグレードします。 詳細については、「Azure 無料アカウントまたは Microsoft Azure for Students Starter アカウントをアップグレードする」を参照してください。

前提条件

  • Azure サブスクリプション。 Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
  • Unix 系オペレーティング システム (Ubuntu、macOS、または Linux 用 Windows サブシステムなど) がインストールされているローカル コンピューター。
  • Azure CLI。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
    • az login コマンドを使用して、Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、「Azure CLI で Azure にサインインする」を参照してください。
    • 初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、「Azure CLI で拡張機能を使用および管理する」を参照してください。
    • az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。 この記事では、Version 2.31.0 以上の Azure CLI が必要です。
  • Java Standard Edition (SE) 実装、バージョン 17 以降 (例: Eclipse Open J9)。
  • Maven バージョン 3.5.0 以降。
  • 使用する OS 用の Docker
  • サインインに使う Azure ID に、現在のサブスクリプションの共同作成者ロールとユーザー アクセス管理者ロール、または所有者ロールのいずれかがあること。 Azure ロールの概要については、「Azure ロールベースのアクセス制御 (Azure RBAC)とは」を参照してください。

Red Hat プル シークレットを取得する

この記事で使用する Azure Marketplace オファーには、Red Hat プル シークレットが必要です。 このセクションでは、Azure Red Hat OpenShift の Red Hat プル シークレットを取得する方法について説明します。 Red Hat プル シークレットが何であるかと何故それが必要なのかを学習するには、「Azure Red Hat OpenShift 4 クラスターの作成」の「Red Hat プル シークレットの取得」セクションを参照してください。 使用するプル シークレットを取得するには、このセクションの手順に従います。

Red Hat OpenShift ハイブリッド クラウド コンソールにアクセスして、Red Hat アカウントを使用して OpenShift クラスター マネージャー ポータルにサインインします。 次のスクリーンショットに示すように、追加の使用条件に同意してアカウントを更新する必要がある場合があります。 アカウントを作成したときと同じパスワードを使用します。

Red Hat のアカウントの更新ページのスクリーンショット。

サインインしたら、[OpenShift][ダウンロード] の順に選択します。 [All categories] 候補リストを選択して、[Tokens] を選択します。 [シークレットのプル] で、次のスクリーンショットに示すように、[コピー] または [ダウンロード] を選択します。

プル シークレットを示す Red Hat コンソール ポータルのスクリーンショット。

次のコンテンツは、Red Hat コンソール ポータルからコピーされた例であり、認証コードは xxxx...xxx に置き換えられています。

{"auths":{"cloud.openshift.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"quay.io":{"auth":"xxx...xxx","email":"contoso-user@test.com"},"registry.connect.redhat.com":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"},"registry.redhat.io":{"auth":"xxxx...xxx","email":"contoso-user@contoso.com"}}}

後で使用できるように、シークレットをファイルに保存します。

Azure portal から Microsoft Entra サービス プリンシパルを作成する

この記事で使用する Azure Marketplace オファーには、Azure Red Hat OpenShift クラスターをデプロイするための Microsoft Entra サービス プリンシパルが必要です。 このオファーでは、デプロイ時にサービス プリンシパルに適切な特権を割り当て、ロールの割り当ては必要ありません。 サービス プリンシパルを使う準備ができている場合は、このセクションをスキップして次のセクションに進み、オファーをデプロイします。

サービス プリンシパルをデプロイし、Azure portal からアプリケーション (クライアント) ID とシークレットを取得するには、次の手順に従います。 詳細については、「サービス プリンシパルを作成および使用して Azure Red Hat OpenShift クラスターをデプロイする」を参照してください。

Note

アプリケーションを Microsoft Entra テナントに登録するための十分なアクセス許可を持っている必要があります。 問題が発生した場合は、「必要なアクセス許可」をチェックして、使用しているアカウントで ID を作成できることを確認してください。 詳細については、「Microsoft Entra アプリを登録し、サービス プリンシパルを作成する」を参照してください。

  1. Azure Portal で Azure アカウントにサインインします。

  2. [Microsoft Entra ID] を選びます。

  3. [アプリの登録] を選択します。

  4. [新規登録] を選択します。

  5. アプリケーションに名前を付けます (例: "liberty-on-aro-app")。 サポートされているアカウントを選択します。これにより、アプリケーションを使用できるユーザーを決定します。 値を設定した後、次のスクリーンショットに示すように、[Register] を選択します。 アプリケーションのプロビジョニングには数秒かかります。 デプロイが完了するのを待ってから続行します。

    [アプリケーションの登録] ページを表示している Azure portal のスクリーンショット。

  6. 次のスクリーンショットに示すように、概要ページからアプリケーション (クライアント) ID を保存します。 ポインターを値 (スクリーンショットで編集済み) の上に置き、表示されるコピー アイコンを選択します。 ツールヒントには、[クリップボードにコピー] と表示されます。 そのセクションの他の値にもコピー アイコンがあるため、正しい値をコピーするように注意してください。 後で使用できるように、アプリケーション ID をファイルに保存します。

    サービス プリンシパルのクライアント ID を示す Azure portal のスクリーンショット。

  7. 次の手順に従って、新しいクライアント シークレットを作成します。

    1. [証明書とシークレット] を選択します。
    2. [クライアント シークレット][新しいクライアント シークレット] の順に選択します。
    3. シークレットの説明と期間を指定します。 操作が終わったら、[Add] を選択します。
    4. クライアント シークレットを追加すると、クライアント シークレットの値が表示されます。 後からの取得はできないので、この値をコピーします。

これで、Microsoft Entra アプリケーション、サービス プリンシパル、クライアント シークレットが用意できました。

Azure Red Hat OpenShift に IBM WebSphere Liberty または Open Liberty をデプロイする

このセクションの手順では、Azure Red Hat OpenShift に IBM WebSphere Liberty または Open Liberty をデプロイします。

次の手順では、オファーを検索して、[基本] ペインに入力する方法について説明します。

  1. Azure portal の上部にある検索バーに、「Liberty」と入力します。 自動提案された検索結果の [Marketplace] セクションで、次のスクリーンショットに示すように、[IBM Liberty on ARO] を選択します。

    検索結果に IBM WebSphere Liberty と Azure Red Hat OpenShift 上の Open Liberty が表示されている Azure portal のスクリーンショット。

    この ポータル リンクを使用して、オファーに直接移動することもできます。

  2. オファー ページで、[作成] を選択します。

  3. [基本] ペインで、[サブスクリプション] フィールドに表示される値が、前提条件セクションに示されているロールと同じであることを確認します。

  4. オファーは空のリソース グループにデプロイする必要があります。 [リソース グループ] フィールドで、[新規作成] を選択し、リソース グループの値を入力します。 リソース グループはサブスクリプション内で一意である必要があるため、一意の名前を選択します。 一意の名前を付ける簡単な方法は、自分の名前のイニシャル、今日の日付、何らかの識別子を組み合わせて使用することです。 たとえば、 abc1228rgです。

  5. シェル内にリソース グループ名の環境変数を作成します。

    export RESOURCE_GROUP_NAME=<your-resource-group-name>
    
  6. [インスタンスの詳細] で、デプロイのリージョンを選択します。 OpenShift が動作する Azure リージョンの一覧については、Azure での Red Hat OpenShift 4.x のリージョンに関するページを参照してください。

  7. リージョンを選んだら、[次へ] を選びます。

次の手順では、次のスクリーンショットに示す [ARO] ウィンドウに入力する方法を示します。

Azure Red Hat OpenShift の ARO ペイン上の IBM WebSphere Liberty と Open Liberty を示す Azure portal のスクリーンショット。

  1. [新しいクラスターを作成する] で、[はい] を選びます。

  2. [新しいクラスターを作成するための情報を入力する] で、[Red Hat プル シークレット] については、「Red Hat プル シークレットを取得する」セクションで取得した Red Hat プル シークレットを入力します。 [シークレットの確認] にも同じ値を使用します。

  3. [サービス プリンシパルのクライアント ID] に、「Azure portal から Microsoft Entra サービス プリンシパルを作成する」セクションで取得したサービス プリンシパル アプリケーション (クライアント) ID を入力します。

  4. [サービス プリンシパルのクライアント シークレット] に、「Azure portal から Microsoft Entra サービス プリンシパルを作成する」セクションで取得したサービス プリンシパル アプリケーション シークレットを入力します。 [シークレットの確認] にも同じ値を使用します。

  5. 値を入力したら、[次へ] を選びます。

次の手順では、次のスクリーンショットに示す [オペレーターとアプリケーション] ウィンドウに入力し、デプロイを開始する方法を示します。

Azure Red Hat OpenShift のオペレーターとアプリケーション ペイン上の IBM WebSphere Liberty と Open Liberty を示す Azure portal のスクリーンショット。

  1. [IBM がサポートされていますか?] で、[はい] を選択します。

    Note

    このクイック スタートでは、IBM でサポートされている WebSphere Liberty オペレーターをデプロイしますが、代わりに [いいえ] を選択 して Open Liberty オペレーターをデプロイできます。

  2. [アプリケーションをデプロイしますか?] の既定の オプションは [いいえ] のままにします。

    Note

    このクイックスタートでは、後でサンプル アプリケーションを手動でデプロイしますが、必要に応じて、[アプリケーションをデプロイしますか?][はい] を選択できます。

  3. [Review + create](レビュー + 作成) を選択します。 緑色の [検証に成功しました] というメッセージが上部に表示されることを確認します。 メッセージが表示されない場合は、検証の問題を修正し、[確認と作成] を再度選択します。

  4. [作成] を選択します。

  5. [デプロイが進行中です] ページで、デプロイの進行状況を追跡します。

選んだリージョンのネットワーク状態やその他のアクティビティによっては、デプロイが完了するまでに最大 40 分かかる場合があります。

デプロイの機能を確認する

このセクションの手順では、デプロイが正常に完了したことを確認する方法を示します。

[デプロイが進行中です] ページから移動した場合は、次の手順でそのページに戻る方法について説明します。 [デプロイが完了しました] と示されたページが表示されたままの場合は、5 つ目の手順にスキップできます。

  1. ポータル ページの隅にあるハンバーガー メニューを選んでから [リソース グループ] を選びます。

  2. [任意のフィールドのフィルター] というテキストが表示されているボックスに、前に作成したリソース グループの最初の数文字を入力します。 推奨される方法に従った場合は、名前のイニシャルを入力してから、適切なリソース グループを選択します。

  3. ナビゲーション ウィンドウの [設定] セクションで、[デプロイ] を選択します。 このリソース グループへのデプロイの順序指定済みリストが表示され、最新のデプロイが最初に表示されます。

  4. このリストの一番古いエントリまでスクロールします。 このエントリは、前のセクションで開始したデプロイに対応します。 次のスクリーンショットに示すように、一番古いデプロイを選択します。

    Azure Red Hat OpenShift デプロイ上の IBM WebSphere Liberty と Open Liberty を示す Azure portal のスクリーンショット。最も古いデプロイが強調表示されています。

  5. ナビゲーション ウィンドウで、[出力] を選択します。 このリストには、そのデプロイの出力値が表示され、これには役立つ情報が含まれています。

  6. ターミナルを開き、cmdToGetKubeadminCredentials フィールドの値を貼り付けます。 OpenShift クラスター コンソール ポータルにログインするための管理者アカウントと資格情報が表示されます。 次のコンテンツは、管理者アカウントの例です。

    az aro list-credentials --resource-group abc1228rg --name clusterf9e8b9
    {
      "kubeadminPassword": "xxxxx-xxxxx-xxxxx-xxxxx",
      "kubeadminUsername": "kubeadmin"
    }
    
  7. clusterConsoleUrl フィールドの値をインターネットに接続された Web ブラウザーに貼り付け、Enter キー を押します。 管理者のユーザー名とパスワードを入力してサインインします。

  8. Liberty に適切な Kubernetes オペレーターがインストールされていることを確認します。 次のスクリーンショットに示すように、ナビゲーション ペインで [Operators] を選び、次に [Installed Operators] を選びます。

    [Installed Operators] ページを表示している Red Hat OpenShift クラスター コンソール ポータルのスクリーンショット。

    WebSphere Liberty オペレーターまたは Open Liberty オペレーターをインストールした場合は注意してください。 オペレーターのバリアントは、デプロイ時に選んだものと一致します。 [IBM サポート] を選んだ場合は、WebSphere Liberty オペレーターが利用できます。 それ以外の場合は、Open Liberty オペレーターを使います。 これは、後の手順で知っておくべき重要な情報です。

  9. チュートリアル「OpenShift CLI をインストールする」の手順に従って、OpenShift CLI oc をダウンロードしてインストールしてから、このドキュメントに戻ります。

  10. [出力] ペインに切り替え、cmdToLoginWithKubeadmin フィールドから値をコピーしてから、ターミナルに貼り付けます。 コマンドを実行して、OpenShift クラスターの API サーバーにサインインします。 コンソールに、次の例のような出力が表示されます。

    Login successful.
    
    You have access to 71 projects, the list has been suppressed. You can list all projects with 'oc projects'
    
    Using project "default".
    

Azure SQL Database の作成

以下の手順では、アプリで使う Azure SQL Database の単一データベースを作成する手順について説明します。

  1. クイックスタート: Azure SQL Database の単一データベースを作成するの手順に従って、Azure SQL Database で単一データベースを作成します。次の注で説明されている相違点に注意してください。 OpenShift クラスターと同じリソース グループにデータベースをデプロイできます。 データベース サーバーを作成して構成した後、この記事に戻ります。

    Note

    [基本] の手順の [リソース グループ][データベース名]<サーバー名>.database.windows.net[サーバー管理者ログイン][パスワード] の値をメモします。 この記事の後半では、データベース リソース グループ<db-resource-group> と表記します。

    [ネットワーク] の手順の [接続方法][パブリック エンドポイント] に、[Azure サービスおよびリソースにこのサーバーへのアクセスを許可する][はい] に、[現在のクライアント IP アドレスを追加する][はい] に設定します。

    [接続方法] と [ファイアウォール規則] の設定が強調表示された [SQL データベースの作成] ページの [ネットワーク] タブを示す Azure portal のスクリーンショット。

  2. データベースのリソース グループ名の環境変数をシェルに作成します。

    export DB_RESOURCE_GROUP_NAME=<db-resource-group>
    

データベースと Azure Red Hat OpenShift クラスターを作成したので、WebSphere Liberty アプリケーションをホストする Azure Red Hat OpenShift を準備できます。

サンプル アプリケーションを構成してデプロイする

このセクションの手順に従って、Liberty ランタイムにサンプル アプリケーションをデプロイします。 これらの手順では、Maven を使用します。

アプリケーションをチェックアウトする

次のコマンドを使って、このガイドのサンプル コードをクローンします。 サンプルは GitHub にあります。

git clone https://github.com/Azure-Samples/open-liberty-on-aro.git
cd open-liberty-on-aro
export BASE_DIR=$PWD
git checkout 20240920
cd 3-integration/connect-db/mssql

HEAD がデタッチされた状態であることを示すメッセージが表示された場合、このメッセージは無視しても問題ありません。 これは、タグをチェックアウトしたという意味です。

リポジトリにはいくつかのサンプルがあります。 3-integration/connect-db/mssql/ を使います。 アプリケーションのファイル構造を次に示します。

mssql
├─ src/main/
│  ├─ aro/
│  │  ├─ db-secret.yaml
│  │  ├─ openlibertyapplication.yaml
│  │  ├─ webspherelibertyapplication.yaml
│  ├─ docker/
│  │  ├─ Dockerfile
│  │  ├─ Dockerfile-ol
│  ├─ liberty/config/
│  │  ├─ server.xml
│  ├─ java/
│  ├─ resources/
│  ├─ webapp/
├─ pom.xml

javaresources、および webapp ディレクトリには、サンプル アプリケーションのソース コードが含まれています。 このコードでは、jdbc/JavaEECafeDB という名前のデータ ソースを宣言して使用します。

aro ディレクトリには、3 つのデプロイ ファイルがあります。 db-secret.xml は、データベース接続資格情報を使用して Kubernetes シークレットを作成するために使用されます。 ファイル webspherelibertyapplication.yaml は、このクイックスタートで WebSphere Liberty アプリケーションをデプロイするために使われます。 「Azure Red Hat OpenShift に IBM WebSphere Liberty または Open Liberty をデプロイする」セクションで Open Liberty オペレーターをデプロイした場合は、ファイル openlibertyapplication.yaml を使って Open Liberty アプリケーションをデプロイします。

docker ディレクトリには、Open Liberty または WebSphere Liberty を使用してアプリケーション イメージを作成するための 2 つのファイルがあります。 これらのファイルはそれぞれ、DockerfileDockerfile-ol です。 このクイックスタートでは、ファイル Dockerfile を使って、WebSphere Liberty でアプリケーション イメージをビルドします。 同様に、「Azure Red Hat OpenShift に IBM WebSphere Liberty または Open Liberty をデプロイする」セクションで Open Liberty オペレーターをデプロイした場合は、ファイル Dockerfile-ol を使って Open Liberty でアプリケーション イメージをビルドします。

liberty/config ディレクトリ内の server.xml ファイルは、Open Liberty および WebSphere Liberty クラスターのデータベース接続を構成するために使用されます。

プロジェクトをビルドする

必要なプロパティを収集したので、次のコマンドを使ってアプリケーションを構築できます。 プロジェクトの POM ファイルにより、環境から多くの変数が読み取られます。 Maven ビルドの一部として、これらの変数は、src/main/aro にある YAML ファイルの値を設定するために使われます。 必要に応じて、Maven の外部でアプリケーションに対して同様の操作を行うことができます。

cd ${BASE_DIR}/3-integration/connect-db/mssql

# The following variables are used for deployment file generation into target.
export DB_SERVER_NAME=<server-name>.database.windows.net
export DB_NAME=<database-name>
export DB_USER=<server-admin-login>@<server-name>
export DB_PASSWORD=<server-admin-password>

mvn clean install

(省略可能) プロジェクトをローカルでテストする

以下の手順を使って、Azure にデプロイする前にプロジェクトをローカルで実行してテストできるようになりました。 便宜上、liberty-maven-plugin を使用します。 liberty-maven-plugin の詳細については、「Building a web application with Maven」(Maven での Web アプリケーションのビルド) を参照してください。 アプリケーションでは、ローカル IDE などの他のメカニズムを使用して、同様の操作を行うことができます。 コンテナーでの開発を目的とした liberty:devc オプションの使用を検討することもできます。 liberty:devc の詳細については、Liberty のドキュメントを参照してください。

  1. 次の例に示すように、liberty:run を使ってアプリケーションを起動します。 liberty:run では、前のセクションで定義した環境変数も使います。

    cd ${BASE_DIR}/3-integration/connect-db/mssql
    mvn liberty:run
    
  2. アプリケーションが想定どおりに動作することを確認します。 成功すると、コマンドの出力に [INFO] [AUDIT] CWWKZ0003I: The application javaee-cafe updated in 1.930 seconds. のようなメッセージが表示されます。 ブラウザーで http://localhost:9080/ または https://localhost:9443/ に移動し、アプリケーションがアクセス可能で、すべての機能が動作していることを確認します。

  3. Ctrl+C キーを押して停止します。

次に、以下の手順に従って、Docker を使ってプロジェクトをコンテナ化し、Azure にデプロイする前にローカルでコンテナーとして実行します。

  1. 次のコマンドを使用して、イメージをビルドします。

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    docker buildx build --platform linux/amd64 -t javaee-cafe:v1 --pull --file=Dockerfile .
    
  2. 次のコマンドを使用してイメージを実行します。 前に定義した環境変数を使用しています。

    docker run -it --rm -p 9080:9080 -p 9443:9443 \
        -e DB_SERVER_NAME=${DB_SERVER_NAME} \
        -e DB_NAME=${DB_NAME} \
        -e DB_USER=${DB_USER} \
        -e DB_PASSWORD=${DB_PASSWORD} \
        javaee-cafe:v1
    
  3. コンテナーが起動したら、ブラウザーで http://localhost:9080/ または https://localhost:9443/ に移動してアプリケーションにアクセスします。

  4. Ctrl+C キーを押して停止します。

イメージをビルドしてイメージ ストリームにプッシュする

アプリケーションの状態に問題がなければ、以下の手順を使って、クラスター上にリモートでイメージをビルドします。

  1. 次のコマンドを使って、ソース ディレクトリと Dockerfile を確認します。

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    
    # If you are deploying the application with WebSphere Liberty Operator, the existing Dockerfile is ready for you
    
    # If you are deploying the application with Open Liberty Operator, uncomment and execute the following two commands to rename Dockerfile-ol to Dockerfile
    # mv Dockerfile Dockerfile.backup
    # mv Dockerfile-ol Dockerfile
    
  2. 次のコマンドを使ってイメージ ストリームを作成します。

    oc create imagestream javaee-cafe
    
  3. 次のコマンドを使って、ビルド出力のイメージ ストリーム タグを指定するビルド構成を作成します。

    oc new-build --name javaee-cafe-config --binary --strategy docker --to javaee-cafe:v1
    
  4. 次のコマンドを使い、ビルドを開始してローカル コンテンツをアップロードし、コンテナ化を行い、前に指定したイメージ ストリーム タグに出力します。

    oc start-build javaee-cafe-config --from-dir . --follow
    

アプリの配置およびテスト

次の手順を使用して、アプリケーションをデプロイしてテストします。

  1. 次のコマンドを使用して、データベース シークレットを適用します。

    cd ${BASE_DIR}/3-integration/connect-db/mssql/target
    oc apply -f db-secret.yaml
    

    出力 secret/db-secret-mssql created が表示されるはずです。

  2. 次のコマンドを使って、デプロイ ファイルを適用します。

    oc apply -f webspherelibertyapplication.yaml
    
  3. 次のコマンドを使って、すべてのポッドが開始され、正常に実行されるまで待ちます。

    oc get pods -l app.kubernetes.io/name=javaee-cafe --watch
    

    すべてのポッドが実行されていることを示す、次の例のような出力が表示されます。

    NAME                          READY   STATUS    RESTARTS   AGE
    javaee-cafe-67cdc95bc-2j2gr   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-fgtt8   1/1     Running   0          29s
    javaee-cafe-67cdc95bc-h47qm   1/1     Running   0          29s
    
  4. 以下の手順に従って結果を確認します。

    1. 次のコマンドを使って、アプリケーションと共にデプロイされた Route リソースの host を取得します。

      echo "route host: https://$(oc get route javaee-cafe --template='{{ .spec.host }}')"
      
    2. 出力から route host の値をコピーし、それをブラウザーで開いて、アプリケーションをテストします。 Web ページが正しくレンダリングされない場合は、アプリがバックグラウンドでまだ起動中であることが原因です。 数分待ってから操作をやり直してください。

    3. コーヒーをいくつか追加および削除して、アプリの機能とデータベース接続を確認します。

      実行中のアプリのスクリーンショット。

リソースをクリーンアップする

Azure の課金を回避するには、不要なリソースをクリーンアップする必要があります。 クラスターが必要なくなったら、az group delete コマンドを使って、リソース グループ、Azure Red Hat OpenShift クラスター、Azure SQL Database、すべての関連リソースを削除します。

az group delete --name $RESOURCE_GROUP_NAME --yes --no-wait
az group delete --name $DB_RESOURCE_GROUP_NAME --yes --no-wait

次のステップ

Azure に IBM WebSphere ファミリをデプロイする方法の詳細については、「Azure で WebSphere 製品ファミリを実行するためのソリューションとは」を参照してください。