機械翻訳について

使用

このドキュメントでは、一般的なModel in Imageドメインの作成およびデプロイに必要なものについて説明します。

目次

WebLogic Kubernetes Operator

オペレータをデプロイし、Model in Imageドメインの目的のネームスペースをモニタリングしていることを確認します。 「オペレータの管理」および「クイック・スタート」を参照してください。

WebLogic Serverイメージ

Model in Imageには、WebLogic Serverインストールを含むイメージが必要です。

  • WebLogic Server 12.2.1.4以降、container-registry.oracle.com/middleware/weblogic:12.2.1.4などのOracle Container Registry事前作成ベース・イメージから開始できます。

    container-registry.oracle.com/middleware/weblogic内のイメージは、パッチが適用されていないイメージです。 常に、container-registry.oracle.com/middleware/weblogic_cpuからパッチを適用したイメージを使用するか、独自のパッチを適用したイメージをビルドする必要があります(「パッチを適用したカスタム・イメージの作成」を参照)。

    ベース・イメージの例はGAイメージで、パブリック・インターネットから環境を使用できないデモおよび開発目的「のみ」に適しています。これらは「本番で使用できません」 本番では、常にOCRのCPU (パッチ適用済)イメージを使用するか、WebLogic Image Tool (WIT)と--recommendedPatchesオプションを使用してイメージを作成する必要があります。 詳細は、「Oracle WebLogic Serverの本番環境の保護」「最新のパッチと更新の適用」を参照してください。

    このアプローチの例は、Model in Imageのサンプルを参照してください。 Oracle Container Registryにログインしてイメージのライセンス契約に同意する方法の詳細は(Oracle Container Registryイメージのプルを許可するために必要)、この「ドキュメント」を参照してください。

  • または、「パッチを適用したカスタム・イメージの作成」の説明に従って独自のベース・イメージを手動でビルドできます。 これは、ベース・イメージに追加のパッチを含める場合に便利です。

    ノート: 2023年6月現在、Oracle WebLogic Server 12.2.1.3はサポートされなくなっています。 WebLogic Server 12.2.1.3の最後のCritical Patch Updates (CPU)イメージは、2023年4月に公開されました。

ディレクトリ構造

Model in Imageでは、その(オプションの) WDTモデル・ファイルおよび(必須の) WDTホームのポッドに次のディレクトリ構造が必要です :

ドメイン・リソース属性 目次 デフォルト・ディレクトリ
domain.spec.configuration.model.modelHome ゼロ以上のモデル.yaml.properties、または.zipファイルをアーカイブします。 オプション。 モデルYAMLファイル、.propertiesファイルおよびアプリケーション.zipアーカイブを含むWDTモデル・ホームのロケーション。 「補助イメージ」が構成されていない場合は/u01/wdt/modelsに、それ以外の場合は/aux/modelsにデフォルト設定されます。
domain.spec.configuration.model.wdtInstallHome 解凍したWDTインストール(必須)。 オプション。 WDTホームのロケーション。 「補助イメージ」が構成されていない場合は/u01/wdt/weblogic-deployに、それ以外の場合は/aux/weblogic-deployにデフォルト設定されます。

modelHomeおよびwdtInstallHomeをデフォルト以外の値に設定すると、オペレータは、「補助イメージ」からコピーされたWDTモデル・ファイルとWDTホームを無視します。

初期WDTモデル・ファイルおよびWDTホームの指定

Model in Imageには、WebLogicインストール(「WebLogic Serverイメージ」を参照)と次のアクセスを含むイメージが最小限必要です:

  • domain.spec.configuration.model.wdtInstallHomeのWDTインストール。
  • domain.spec.configuration.model.modelHomeディレクトリまたは「オプションのWDTモデルConfigMap」にドメインを構成する1つ以上のWDTモデル.yamlファイル。
  • domain.spec.configuration.model.modelHomeディレクトリまたは「オプションのWDTモデルConfigMap」に0個以上のWDTモデル.propertiesファイルがあります。
  • domain.spec.configuration.model.modelHomeディレクトリに0個以上のWDTモデル・アプリケーション.zipアーカイブがあります。 アプリケーション・アーカイブは「オプションのWDTモデルConfigMap」でサポートされていないため、モデル・ホームでアーカイブを指定する必要があります。

Model in Image WDTモデル・ファイル、WDT変数ファイルおよびWDTアーカイブ・ファイル(総称してWDTモデル・ファイル)を指定するメソッドは複数あります:

  • 補助イメージの使用: 「補助イメージ」を使用して、目的のファイルを含む1つ以上の小さいイメージを作成します。

    これが推奨される最良のアプローチです。 イントロスペクション・ジョブで見つけられるように、各小さいイメージのファイルを各ポッドのファイル・システムの/aux/modelsおよび/aux/weblogic-deployディレクトリに自動的にコピーします。

  • メイン・イメージに含める: WDTモデル・ファイルは、ドメイン・リソースdomain.spec.imagedomain.spec.configuration.model.modelHomeおよびdomain.spec.configuration.model.wdtInstallHomeディレクトリにベース・イメージのレイヤーとして含めることができます(ベース・イメージにはWebLogicインストールが含まれます)。

    ノート: 補助イメージのないModel in Image (WDTモデルおよびインストール・ファイルは、WebLogic Serverインストールと同じイメージに含まれています)は、WebLogic Kubernetes Operatorバージョン4.0.7では非推奨です。 Oracleでは、Model in Imageを補助イメージと「一緒に」 「補助イメージ」を参照してください。

    次のいずれかのメソッドを使用します。

    • 「手動イメージ作成」は、Dockerコマンドを使用して、ベース・イメージの上部にある、前の表で説明するWDTモデル・ファイルを新しいイメージにレイヤー化します。
    • WebLogic Image Tool (WIT)には、イメージ内のWDTモデル・ファイル、WDTインストール、WebLogic ServerインストールおよびWebLogic Serverパッチをレイヤー化するための組込みオプションがあります。 「イメージ内のモデルを使用してカスタム・イメージを作成」を参照してください。
  • 永続ボリューム要求(PVC)の使用: このメソッドは、高度なユースケース専用です。 WDTモデルYAML、変数またはアーカイブ・ファイルを「永続ボリューム要求」に指定し、configuration.model.modelHomeおよびconfiguration.model.wdtInstallHomeをPVCのマウント・ロケーション内の対応するディレクトリに変更します。

  • WDTモデルConfigMapの使用: WDTモデルYAMLおよび.propertiesファイルには、「WDTモデルConfigMap(オプション)」を使用します。 これは、前述のいずれかのメソッドと組み合せることができます。ほとんどの場合、これらのメソッドのいずれかによって提供されるモデルへのランタイム更新を容易にするために使用されます。

モデル・ファイルの構文の詳細は、「WDTモデル・ファイルの操作」を参照してください。

WDTモデルConfigMap(オプション)

イメージにすでに指定されているもの以外のモデル.yamlおよび.propertiesファイルを定義するWDTモデルConfigMapを作成し、ドメインYAMLファイルのconfiguration.model.configMap属性を使用してこのConfigMapを参照できます。 指定されたイメージがすでにモデルを完全に定義している場合、これはオプションです。

WDTモデルのConfigMapファイルは、ドメイン・ホームが作成される前に、実行時にイメージに定義されたWDTファイルとマージされます。 ConfigMapファイルは、イメージ内で指定したモデル構成に対して追加、削除または変更できます。

たとえば、追加の.yamlおよび.propertiesファイルを/home/acmeuser/wdtoverrideというディレクトリに配置し、次のコマンドを実行します:

$ kubectl -n MY-DOMAIN-NAMESPACE \
  create configmap MY-DOMAINUID-my-wdt-config-map \
  --from-file /home/acmeuser/wdtoverride
$ kubectl -n MY-DOMAIN-NAMESPACE \
  label  configmap MY-DOMAINUID-my-wdt-config-map \
  weblogic.domainUID=MY-DOMAINUID

モデル・ファイルの構文およびロード順序については、「WDTモデル・ファイルの操作」を参照してください。WDTモデルConfigMapsを使用して実行中のドメインのモデル構成を更新する方法については、「ランタイムの更新」を参照してください。

必要なランタイム暗号化シークレット

Model in Imageには、セキュアなpasswordキーを使用したランタイム暗号化シークレットが必要です。 このシークレットは、ランタイムのConfigMapまたはログに追加する前に、モデルおよびドメイン・ホーム・ファイルを暗号化するためにオペレータによって使用されます。 ドメインを完全に停止した後はいつでもpasswordを安全に変更できますが、実行中のドメインの存続期間中は同じままにする必要があります。 作成するランタイム暗号化シークレットには任意の名前を付けることができますが、クリーンアップ・スクリプトがシークレットを見つけて削除できるように、シークレットにドメインUIDの名前を付けてラベルを付けることをお薦めします。

ノート: ランタイム暗号化パスワードは共有する必要はなく、ドメインの存続期間中のみ存在する必要があるため、パスワード・ジェネレータを使用できます。

例:

$ kubectl -n MY-DOMAIN-NAMESPACE \
  create secret generic MY-DOMAINUID-runtime-encrypt-secret \
  --from-literal=password=MY-RUNTIME-PASSWORD
$ kubectl -n MY-DOMAIN-NAMESPACE \
  label secret MY-DOMAINUID-runtime-encrypt-secret \
  weblogic.domainUID=MY-DOMAINUID

対応するドメインYAMLファイル・スニペット:

configuration:
  model:
    runtimeEncryptionSecret: MY-DOMAINUID-runtime-encrypt-secret

モデル・マクロのシークレット

モデル・ファイル内のマクロの必要に応じて、追加のシークレットを作成します。 たとえば、シークレットを参照するモデル内の@@SECRETマクロを使用してアクセスされるデータベースURLおよび資格証明を格納できます。 モデル・マクロの説明については、「モデル・ファイル」を参照してください。

ドメイン・フィールド

次のドメイン・フィールドは、Model in Imageドメインに固有です。

ドメイン・リソース属性 ノート
domainHomeSourceType 必須。 FromModelに設定します。
domainHome イメージ内の空または存在しないディレクトリを参照する必要があります。 永続ボリュームのマウント・パスは含めないでください。 ポッドが再起動するたびに、Model in ImageによってWebLogic Serverポッドのドメイン・ホームが再作成されることに注意してください。
configuration.model.configMap オプション。 「WDTモデルConfigMap(オプション)」に従って追加のモデルをConfigMapに格納した場合に構成します。
configuration.secrets オプション。 カスタムKubernetesシークレットを参照するマクロがイメージまたはConfigMapモデルに含まれている場合は、この配列を構成します。 たとえば、マクロがシークレットmy-secretおよびmy-other-secretに依存している場合は、[my-secret, my-other-secret]に設定します。
configuration.model.runtimeEncryptionSecret 必須。 すべてのModel in Imageドメインは、実行時暗号化シークレットを指定する必要があります。 「必要なランタイム暗号化シークレット」を参照してください。
configuration.model.domainType ドメインのタイプを設定します。 WLS がデフォルトです。 「WDTドメイン・タイプ」を参照してください。
configuration.model.runtimeEncryptionSecret 必須。 すべてのModel in Imageドメインは、実行時暗号化シークレットを指定する必要があります。 「必要なランタイム暗号化シークレット」を参照してください。
configuration.model.modelHome オプション。 モデルYAMLファイル、.propertiesファイルおよびアプリケーション.zipアーカイブを含むWDTモデル・ホームのロケーション。 「補助イメージ」が構成されていない場合は/u01/wdt/modelsに、それ以外の場合は/aux/modelsにデフォルト設定されます。
configuration.model.wdtInstallHome オプション。 WDTホームのロケーション。 「補助イメージ」が構成されている場合はデフォルトで/aux/weblogic-deploy、それ以外の場合は/u01/wdt/weblogic-deployに設定されます。

modelHomeおよびwdtInstallHomeをデフォルト以外の値に設定すると、オペレータは、「補助イメージ」からコピーされたWDTモデル・ファイルとWDTホームを無視します。

NOTES:

常に外部状態を使用

ドメイン・ホームのソース・タイプに関係なく、常にイメージの外部に状態を保持することをお薦めします。 これには、クラスタ・データベース・リース表、JMSおよびトランザクション・ストア、EJBタイマーなどが含まれます。 これにより、コンテナが破棄されたときにデータが失われることがなくなります。

組込みデータベース・サーバーの高可用性機能を利用するには、状態をデータベースに保持することをお薦めします。また、最短距離を除くすべてのサイトの障害時リカバリでは、データの統合およびレプリケートに常に単一のデータベース・サーバー(DataGuard)を使用する必要があります。

詳細は、次のドキュメントを参照してください。