WebLogic Domainセクションには、WebLogic Kubernetes Operatorで定義されているWebLogicドメインのKubernetesカスタム・リソースの作成およびデプロイがサポートされています。 詳細は、WebLogic Kubernetes Operatorドキュメントの「ドメイン・リソース」を参照してください。
Design Viewは、ドメイン・リソース定義の生成に必要なデータを指定し、そのリソースをKubernetesクラスタにデプロイするのに役立ちます。
Domain UIDフィールドは、Kubernetesドメイン・カスタム・リソース・オブジェクトの名前を定義します。 この名前は、作成されるKubernetesネームスペース内で一意である必要があります。このネームスペースは、Kubernetes Namespaceフィールドで制御されます。
Domain UIDフィールドのデフォルト値は、WDTモデルで定義されているWebLogicドメインの名前に基づきます:
Domain Home Pathフィールドは読取り専用であり、その値はAdvancedの下のDomain Home Directoryフィールドを使用して設定されます。/sharedに設定され、ドメイン・ホームが永続ボリュームの/domains/mydomainにある場合、Domain Home Pathフィールドを/shared/domains/mydomainに設定する必要があります。 "Model in Image"の場合は、Domain Typeフィールドを使用して、モデルを使用して作成するドメインのタイプを指定します。
WebLogic Credentials Secret Nameフィールドを使用して、WebLogicドメイン資格証明が格納されるKubernetesシークレット名を設定します。 WebLogic Admin UsernameおよびWebLogic Admin Passwordフィールドを使用して、WebLogic Server管理資格証明の値を設定します。 これらのフィールドは、選択したドメインのロケーションに適切に設定する必要があります:
"Domain in PV"を使用する場合、永続ボリュームに関連付けられた3つの追加フィールドが表示されます:
Persistent Volume Name - ドメイン・リソース・ファイルで使用する永続ボリュームの名前。Persistent Volume Claim Name - 永続ボリュームは、永続ボリュームに関連付けることを要求します。Persistent Volume Mount Path - コンテナ内の永続ボリュームへのパス。Enable Log Home - ログ・ディレクトリを永続ボリュームのドメイン・ディレクトリから分離する機能を有効にします。Log Home Path - Enable Log Homeが有効な場合にログ・ホームに使用するパス。WebLogic Kubernetes Operator Installed Versionフィールドは、WebLogic Kubernetes Operatorバージョン4.0がインストールされていることを前提としています。 WKT UIを使用してWebLogic Kubernetes Operatorをインストールすると、フィールドにはインストール済バージョンが移入されます。 そうでない場合は、アイコンをクリックすると、Kubernetesクラスタからインストール済オペレータのバージョンを取得できます。 このフィールドの値が、WKT UIによって生成および使用されるドメイン・リソースに影響する「ノート」。 オペレータのバージョンが4.0.0より前の場合、生成されたドメイン・リソースはWebLogic Kubernetes Operator v 3.xと互換性があります。それ以外の場合、生成されたドメイン・リソースは、WebLogic Kubernetes Operator v 4.0.0以降によって「のみ」使用できるようになります。
次のセクションでは、生成されたドメイン・リソースの構成をサポートするその他のペインについて説明します。これらのペインは次のとおりです:
このペインでは、コンテナ内のWebLogic Serverドメインの実行に使用するコンテナ・プライマリ・イメージに焦点を当てます。 Create a New Primary Imageを選択した場合は、Go To Create Primary Image Pageをクリックしてイメージを構成します。 詳細は、「イメージ」の項を参照してください。
Primary Image Tagフィールドは読取り専用で、その値はImageセクションのImage Tagフィールドを使用して設定されます。Image Tagフィールドは読取り専用ではなく、WebLogicドメインのコンテナの実行に使用するイメージを指定する場所です。Image Registry Addressフィールドには、Image Tagフィールドの値を解析してコンテナ・イメージ・レジストリ・アドレスを抽出します。 タグにイメージ・レジストリ・アドレスがない場合は、Dockerハブに存在するものとみなされます。 Primary Image Pull Policyフィールドを使用して、Kubernetesが指定したイメージ・レジストリからイメージをいつ取得するかを指定します。 選択肢は次のとおりです。
If Not Present (default) - イメージがKubernetesノードに存在しない場合のみプルします。Always - コンテナを起動するためにイメージが必要なたびにイメージをプルします。Never - イメージをプルしないでください。イメージがKubernetesノードにまだ存在しない場合、エラーが発生します。指定したイメージ・レジストリからイメージをプルが認証を必要としない場合は、Specify Image Pull Credentialsを無効にする必要があります。 有効にすると、Use Existing Image Pull Secretフィールドを使用して、既存のイメージ・プル・シークレットを使用するか、新しいイメージ・プル・シークレットを作成するかをアプリケーションに指示します。 Image Pull Secret Nameフィールドにイメージ・プル・シークレット名を指定します。 新しいシークレットを作成する場合は、Image Registry Pull Username、Image Registry Pull Email AddressおよびImage Registry Pull Passwordフィールドを使用してシークレット・データを指定します。
Auxiliary Image Configurationで、補助イメージ(既存の補助イメージ)を使用するか、新しい補助イメージ(デフォルト)を作成するかを指定するためのラジオ・ボタンを使用します。 Create a New Auxiliary Imageを選択した場合は、Go To Create Auxiliary Image Pageをクリックしてイメージを構成します。 詳細は、「イメージ」の項を参照してください。
「Model in Image」ドメインの場合のみ、このペインはドメインに使用するコンテナ補助イメージに焦点を当てます。
Auxiliary Image Tagフィールドは読取り専用で、その値はImageセクションのAuxiliary ImageページのAuxiliary Image Tagフィールドを使用して設定されます。
Auxiliary Image Pull Policyフィールドを使用して、イメージ・レジストリからドメインの補助イメージをいつ取得するかを指定します。 選択肢は次のとおりです。
If Not Present (default) - イメージがまだ存在しない場合のみプルします。Always - コンテナを起動するためにイメージが必要なたびにイメージをプルします。Never - イメージをプルしないでください。イメージがまだ存在しない場合はエラーが発生します。指定したイメージ・レジストリからイメージをプルが認証を必要としない場合は、Specify Auxiliary Image Pull Credentialsを無効にする必要があります。 有効にすると、Use Existing Auxiliary Image Pull Secretフィールドを使用して、既存のイメージ・プル・シークレットを使用するか、新しいイメージ・プル・シークレットを作成するかをアプリケーションに指示します。 Auxiliary Image Pull Secret Nameフィールドにイメージ・プル・シークレット名を指定します。 新しいシークレットを作成する場合は、Auxiliary Image Registry Pull Username、Auxiliary Image Registry Pull Email AddressおよびAuxiliary Image Registry Pull Passwordフィールドを使用してシークレット・データを指定します。
「クラスタ」ペインには、モデル内の各クラスタの名前がリストされ、WebLogic Server起動構成およびKubernetesリソース・リクエストおよび制限を調整できます。 現在、Prepare Modelの実行時に移入されています。これは、"Domain in PV"を使用するプロジェクトがクラスタ・レベルで構成を調整するためのアクセス権を持っていないことを意味します。 "Domain in PV"プロジェクトでは、Advancedの下のDomain-Wide Server Settingsペインを引き続き使用できます。
クラスタの設定を表示または編集するには、表のクラスタの行の右端にある編集アイコンを選択します。 これにより、すべてのクラスタ関連フィールドとその値を表示するダイアログが開きます。 読取り専用Cluster Nameフィールドには、基礎となるモデルで指定されているクラスタの名前が表示されます。
Replicasフィールドを使用して、ドメインのデプロイ時にWebLogic Kubernetes Operatorが起動する管理対象サーバーの数を調整します。 Replicasフィールドのデフォルト値は、モデルで指定されたサーバーの最大数に基づいて設定されます:
Replicasフィールドの上限としても機能します。 つまり、レプリカの数を減らすだけです。 レプリカ数をモデルで定義されている最大制限を超えて増やすことはできません。 Minimum Heap SizeおよびMaximum Heap Sizeフィールドを使用して、クラスタ内の各サーバーで使用可能なJavaヒープ領域の量を制御します。 Additional Java Optionsフィールドで、追加のJavaコマンドライン・オプションを指定します。
Disable debug logging to standard outは、WebLogic Serverデバッグ・ログ・メッセージの標準出力への書込みを無効にします。 WebLogic Server 12.2.1.3.0では、Oracle DatabaseのFAN (高速アプリケーション通知)イベントを処理するOracle JDBCドライバに影響を与える問題があります。 この問題を回避するには、Disable Oracle JDBC Support for FAN Eventsを有効にします。
Use pseudo-random number generatorは、WebLogic Serverが疑似乱数ジェネレータ(/dev/urandom)を使用するか、通常の乱数ジェネレータ(/dev/random)を使用するかを制御します。 後者は使用可能なエントロピの影響を受けるため、仮想マシンまたはコンテナでWebLogic Serverを実行すると、パフォーマンスに悪影響を及ぼす可能性があります。 このアプリケーションによって構成されるサーバーは常にコンテナで実行されるため、デフォルトは擬似乱数ジェネレータを使用するように設定されます。
Kubernetesリソース・リクエストおよび制限値は、Kubernetesスケジューラがコンテナの起動に使用するノードを決定するのに役立ちます(コンテナが実行できる十分なリソースがあることを確認してください)。 次のフィールドでは、これらの値を指定できます:
Kubernetes CPU Request - 管理対象サーバー・コンテナごとにリクエストされたCPUの量。Kubernetes CPU Limit - 各管理対象サーバー・コンテナで使用できるCPUの最大量。Kubernetes Memory Request - 管理対象サーバー・コンテナごとにリクエストされたメモリー量。Kubernetes Memory Limit - 各管理対象サーバー・コンテナで使用できるメモリーの最大量。これらのフィールドとその値の設定の詳細は、「Kubernetesドキュメント」を参照してください。
このペインは、「Model in Image」を使用してイメージですでに設定されているモデル・データをカスタマイズする場合に、モデル変数の値をオーバーライドするために使用します。 たとえば、イメージには、データベースに接続するためのJDBC URLを参照する値の変数を含めることができます。 イメージは開発環境、テスト環境および本番環境全体で使用できるため、JDBC URLをオーバーライドして環境に適したデータベースを指し示すことで、3つの環境すべてで同じイメージを使用できるようになります。 すべてのオーバーライド値は、WebLogic Kubernetes Operatorに渡されるKubernetes ConfigMapに追加され、環境の正しい値で基礎となるWebLogic Serverドメインが作成されます。
モデルに1つ以上の変数がある場合、Kubernetes Config Map Nameフィールドが表示され、Kubernetes ConfigMap名の名前を制御できます。 表には、モデル変数ファイルで定義されているモデル変数が移入されます。 通常、モデル変数ファイルはこのページに到達するとイメージですでに設定されているため、Model Variable NameエントリとModel Variable File Valueエントリの両方が読取り専用です。 Model Variable File Valueをオーバーライドする変数のModel Variable Override Valueを入力します。 ConfigMapは、1つ以上の変数にオーバーライド値が指定されている場合にのみ作成されます。
"Model in Image"を使用する場合、このペインを使用して、モデルで参照されるシークレットの値を設定します(WebLogic管理者資格証明シークレット以外)。 表に表示されるシークレットは、モデル・ファイルから直接プルされるため、Secret Nameフィールドは読取り専用です。 表内の各シークレットに適切なUsernameおよびPasswordフィールド値を設定します。 これらの値は必須であり、指定した値でシークレットを作成または更新するために使用されます。
"Model in Image"を使用する場合、WebLogic Kubernetes Operatorでは、Kubernetesに格納されている機密のWebLogic Serverドメイン・データの暗号化に使用するランタイム暗号化シークレットが必要です。 詳細は、WebLogic Kubernetes Operatorドキュメントの「必須ランタイム暗号化シークレット」を参照してください。
必要に応じて、Runtime Encryption Secret Nameフィールドを使用してシークレットの名前を制御します。 通常はデフォルト名で十分です。 Runtime Encryption Secret Valueフィールドのデフォルト値は生成されますが、必要に応じて変更できます。
このペインは、WebLogic Kubernetes Operatorイントロスペクション・ジョブの構成を制御します。 Introspection Job Active Deadline Secondsフィールドを使用して、イントロスペクション・ジョブが完了するまでオペレータの待機時間を制御します。 アプリケーションはデフォルトを900秒(15分)に設定します。これにより、オペレータに組み込まれた120秒(2分)の基礎となるデフォルトがオーバーライドされます。 したがって、このフィールドの値をクリアすると、有効値が120秒に設定されます。
このペインでは、WebLogic Server起動構成およびKubernetesリソース・リクエストを調整し、WebLogic Serverドメイン内のすべてのWebLogic Serverコンテナのデフォルト値を制限できます。 ここで設定したフィールドは、他の場所でオーバーライドされない場合にのみ適用されます。 たとえば、Minimum Heap Sizeを設定すると、サーバーが属するクラスタが最小ヒープ・サイズをオーバーライドしない場合にのみ、WebLogic Serverの最小ヒープ・サイズが指定した値に設定されます。 管理サーバーと1つ以上のクラスタを持つ一般的なドメインの場合、このセクションを使用して管理サーバーを構成し、Clustersペインを使用して各クラスタを明示的に構成することをお薦めします。
このペインのフィールドは、前述した同等のフィールドと同様の意味を持ちます。詳細は、そのセクションを参照してください。
このペインでは、実行するノードを指定できます。
Code Viewは、ドメインをデプロイし、その依存リソースを作成するシェル・スクリプト、およびKubernetesカスタム・リソース(つまり、ドメイン・リソース)のYAML定義およびモデル変数オーバーライドConfigMap (該当する場合)を表示します。
まだ選択されていない場合は、Script Languageドロップダウン・メニューを使用して目的のスクリプト言語を選択します。 アプリケーションには、プロセスの自動化方法を示す作業サンプル・スクリプトが用意されています。 スクリプトを使用する前に、スクリプトを確認し、環境に必要な変更を加えます。 ベスト・プラクティスとみなされる一般的な変更の1つは、スクリプトを変更してコマンドライン引数を受け入れるか、またはスクリプト自体で資格証明をハード・コーディングしないようにスクリプトに必要な資格証明を指定するように環境変数を外部で設定することです。 通常、このような資格証明を安全に処理するための既存の標準が様々な環境にあるため、この変更は演習として残されます。
Prepare Modelは、Modelセクションで説明したものと同じです。 Design ViewのClustersペインはPrepare Modelの実行時にのみ移入されるため、ここでのみ表示されます。
Deploy Domainは、ドメイン・カスタム・リソース・オブジェクトおよびその依存オブジェクト(ネームスペース、シークレット、ConfigMapなど)をKubernetesに作成します。 このアクションにアクセスするには、WebLogic DomainページまたはGo > Deploy WebLogic Domain to Kubernetesメニュー・アイテムのDeploy Domainボタンを使用します。 前述のように、このアクションは必要に応じてオペレータ構成も更新し、オペレータのHelmチャートを再実行して、このプロジェクトに対して構成されたWebLogic Kubernetes Operatorによって新しいネームスペースが管理可能であることを確認します。
Deploy Domainは、オブジェクトが作成され、オペレータのHelmチャートの実行が完了するとすぐに完了します。 アクションの完了後、オペレータはドメイン・カスタム・リソース・オブジェクトの新しい(または更新された)バージョンを検出し、新しいイントロスペクション・ジョブを開始してドメインを作成し、WebLogic Serverコンテナを起動または再起動します。 Get Domain Statusは、最後のDeploy Domainアクションの現在のステータスを示します。
最後のドメイン・デプロイメントの現在のステータスを表示するには、Get Domain StatusボタンまたはGo > Get WebLogic Domain Statusを使用します。 このアクションは、WebLogic Kubernetes Operatorで指定されたドメイン・デプロイメント・ステータスを取得および表示します。
Undeploy Domainは、WebLogicドメインとその依存オブジェクトのKubernetesカスタム・リソースをKubernetesから削除します。 また、対応するネームスペースを削除するかどうかも選択できます。 これらのアクションにアクセスするには、WebLogic DomainページまたはGo > Undeploy WebLogic Domain to Kubernetesメニュー・アイテムのUndeploy Domainボタンを使用します。