2 環境の設定

デプロイメントを開始する前に、前提条件となるソフトウェアをインストールし、環境を設定します。

AMC earファイルを使用してAMCコンテナ・イメージを構築する必要があります。「AMCコンテナ・イメージの作成」を参照してください。

前提条件

次に、Containerized AMCをデプロイするための前提条件を示します:

  • コンテナ、KubernetesおよびHelmについて理解していること
  • Kubernetesクラスタを設定できること
  • Oracle DBまたはMySQLデータベースを使用できること
  • Oracle Container Registry (OCR)にアクセスできること
  • Oracle Technology Resources (OTN)またはMy Oracle Support (MOS)からAMC earをダウンロードするためのJava SEサブスクリプション・ライセンス
  • データベースで一般的な管理タスクを実行する権限

システム要件

WebLogic Kubernetes Operator (WKO)およびContainerized AMCをデプロイするためのシステム要件。

  • WKOリリースの前提条件: WKOの前提条件を参照してください
  • AMCアプリケーションからの外部接続を受け入れる準備ができている次のいずれかのデータベースの設定:
    • Oracle DB: 19c、12cまたは11g
    • MySQL: 8、5.7または5.6
  • パブリックにアクセス可能なKubernetes ServiceとしてのWebLogicクラスタは、すべてのエージェント・マシンからアクセス可能である必要があります

    ノート:

    AMCの初期化時に指定されたホスト名を変更すると、AMCエージェントがサーバーと通信するのを停止し、エージェント・バンドルのダウンロードをブロックする場合があります。
  • KubernetesクラスタでのWKOデプロイメント
  • AMCは外部ネットワークに接続してJavaリリース情報をフェッチするため、Kubernetesワーカー・ノードにはインターネット・アクセスが必要です
  • すべてのエージェントがサーバーにアクセスできる必要があります

環境設定

Containerized AMCをシームレスにデプロイするには、環境を設定する必要があります。

次の環境が設定されていることを確認します:

AMCコンテナ・イメージの作成

WebLogic Image Tool (WIT)を使用してAMCコンテナ・イメージを作成できます。

このトピックでは、AMCコンテナ・イメージを作成するための大まかな手順について説明します。手順の詳細は、イメージ作成ガイドを参照してください。

ノート:

  • オペレーティング・システム・ユーザーにインストールおよびデプロイ・コマンドを実行する適切な権限があることを確認してください。必要に応じて、sudoまたはsudo -Eコマンドを使用します。
  • このトピックで説明するフォルダ名は、説明のためのものです。要件に合せて、フォルダに名前を付けることができます。
  1. 作業フォルダmodel-imagesを作成します。
    コマンド例:
    $ mkdir model-images
    $ cd model-images/
  2. WITの最新バージョンをダウンロードし、model-imagesフォルダに配置します。zipをこのフォルダに解凍します。
  3. 最新バージョンのWebLogic Deploy Tooling (WDT)をダウンロードし、model-imagesフォルダに配置します。
  4. Oracle Container RegistryからWebLogicコンテナ・イメージをダウンロードします。https://container-registry.oracle.com/から「ミドルウェア」weblogicリポジトリの順に移動し、イメージをダウンロードします。サインインして、ライセンスの手続きに同意する必要があります。これは1回かぎりの要件です。
    次のコマンドを使用して、WebLogicコンテナ・イメージをダウンロードします:
    docker login container-registry.oracle.com
    docker pull container-registry.oracle.com/middleware/weblogic:12.2.1.4
    コマンド例:
    $ docker login container-registry.oracle.com       
    Username: <abc>        
    Password: <123>
    $ docker pull container-registry.oracle.com/middleware/weblogic:12.2.1.4
  5. model-imagesフォルダ内にarchive-AMCを作成して、AMCアプリケーション・バンドルを保存します。archive-AMC内のフォルダ構造はwlsdeploy/applicationsである必要があります。WDTアーカイブのディレクトリ構造は適切に定義されており、最上位ディレクトリは常にwlsdeployです。AMCダウンロード・ページから最新のAMC EAR (JavaAMC-2_20.ear)をダウンロードします。ファイルをwlsdeploy/applicationsフォルダに保存します。
    コマンド例:
    $ mkdir archive-AMC
    $ cd archive-AMC
    $ mkdir -p wlsdeploy/applications
    $ cp JavaAMC-2_20.ear wlsdeploy/applications/
    $ zip -r archive.zip wlsdeploy
  6. JAVA_HOMEをエクスポートします:
    export JAVA_HOME=</jdk/home/>
    コマンド例:
    $ export JAVA_HOME=/usr/java/jdk1.8.0_271-amd64
  7. model-imagesディレクトリから次のコマンドを使用して、イメージが正常に作成されるようにWDTをキャッシュします:
    
    $ cd model-images 
    ./imagetool/bin/imagetool.sh cache addInstaller \  
    --type wdt \  
    --version latest \  
    --path ./weblogic-deploy.zip
  8. モデル・ファイルをステージングします。次のコード・スニペットをmodel.amc.yamlファイルにコピーし、model-imagesフォルダに保存します。
    サンプルのmodel.amc.yamlファイル:
    # Copyright (c) 2020, Oracle Corporation and/or its affiliates.
    # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
    
    domainInfo:
        AdminUserName: '@@SECRET:__weblogic-credentials__:username@@'
        AdminPassword: '@@SECRET:__weblogic-credentials__:password@@'
        ServerStartMode: 'prod'
    
    appDeployments:
        Application:
            JavaAMC:
                SourcePath: 'wlsdeploy/applications/JavaAMC-2_20.ear'
                ModuleType: ear
                Target: '@@ENV:AMC-CLUSTER-NAME@@'
        Library:
            'jax-rs#2.0@2.22.4.0':
                SourcePath: '@@WL_HOME@@/common/deployable-libraries/jax-rs-2.0.war'
                ModuleType: war
                Target: '@@ENV:AMC-CLUSTER-NAME@@'
  9. WITを使用してイメージを構築します:
    
    ./imagetool/bin/imagetool.sh update \
      --tag amc-<version>:latest \
      --chown oracle:root \
      --fromImage container-registry.oracle.com/middleware/weblogic:12.2.1.4 \
      --wdtModel      ./model.amc.yaml \
      --wdtArchive    ./archive-AMC/archive.zip \
      --wdtModelOnly \
      --wdtDomainType WLS

    fromImageは、Oracle Container Registryから参照されるWebLogicコンテナ・イメージです。

    スクリプトの例:
    #!/bin/bash
    wls_image="container-registry.oracle.com/middleware/weblogic:12.2.1.4"
    
    ./imagetool/bin/imagetool.sh update \
      --tag amc2u20:latest \
      --chown oracle:root \
      --fromImage ${wls_image} \
      --wdtModel      ./model.amc.yaml \
      --wdtArchive    ./archive-AMC/archive.zip \
      --wdtModelOnly \
      --wdtDomainType WLS
イメージが正常に構築され、次のメッセージが表示されます:
[INFO ] Build successful. Build time=36s. Image tag=amc2u20:latest

また、コンテナ(docker)イメージ・コマンドを実行して、イメージが正常に作成されたかどうかを確認します。

すべてのKubernetesノードへのイメージの配布

AMCコンテナ・イメージは、1つのマシン上に構築されます。デプロイ時には、すべてのKubernetesノードでイメージが使用可能である必要があります。

イメージをすべてのKubernetesノードに配布するには、イメージをプライベート・コンテナ・レジストリにpushし、デプロイメント時にこのレジストリからイメージをpullします。レジストリを使用できない場合は、「保存してロード」方法を使用してイメージを配布できます。

「保存してロード」方法を使用してイメージをすべてのクラスタ・ノードに配布するには、次のステップを実行します:
  1. イメージが構築されたマシンから、次のコマンドを使用してイメージをtarファイルとして保存します:
    docker save <amc2u20:latest> -o <amc2u20>.tar 

    ノート:

    デプロイメント構成ファイルでパラメータを構成する際は、必ず同じ<repo/image:tag> (<amc2u20:latest>など)を使用してください。このデプロイメント・ガイドでは、この構成ファイルをcustom-values.yamlファイルと呼びます。
  2. 次のコマンドを使用して、tarファイルをすべてのノード・マシンにコピーします:
    scp <amc2u20>.tar <user>@<machine>:/home/<user>/
    sshキー・ベースの認証を使用している場合は、次のコマンドを使用します:
    scp -i private_key <amc2u20>.tar <user>@<machine>:/home/<user>/
  3. Kubernetesノード・マシンで、次のコマンドを使用してイメージをロードします:
    cat <amc2u20>.tar | docker load