7.1.5 ドメイン作成スクリプトの準備

Oracle Access Management (OAM)ドメイン・デプロイメントのサンプル・スクリプトは、$WORKDIR/kubernetes/create-access-domainディレクトリにあります。OAMをデプロイする前にスクリプトを準備する必要があります。

  1. $WORKDIR/kubernetes/create-access-domain/domain-home-on-pvディレクトリに移動します:
    cd $WORKDIR/kubernetes/create-access-domain/domain-home-on-pv
  2. create-domain-inputs.yamlファイルのコピーを作成します:
    cp create-domain-inputs.yaml create-domain-inputs.yaml.orig
  3. create-domain-inputs.yamlを編集し、次のパラメータを変更します。完了後、ファイルを保存します:
    domainUID: <domain_uid>
    domainHome: /u01/oracle/user_projects/domains/<domain_uid>
    image: <image_name>:<tag>
    imagePullSecretName: <container_registry_secret>
    weblogicCredentialsSecretName: <kubernetes_domain_secret>
    logHome: /u01/oracle/user_projects/domains/logs/<domain_uid>
    namespace: <domain_namespace>
    persistentVolumeClaimName: <pvc_name>
    rcuSchemaPrefix: <rcu_prefix>
    rcuDatabaseURL: <rcu_db_host>:<rcu_db_port>/<rcu_db_service_name>
    rcuCredentialsSecret: <kubernetes_rcu_secret>
    例:
    domainUID: accessdomain
    domainHome: /u01/oracle/user_projects/domains/accessdomain
    image: container-registry.oracle.com/middleware/oam_cpu:14.1.2.1.0-jdk17-ol8-<YYMMDD>
    imagePullSecretName: orclcred
    weblogicCredentialsSecretName: accessdomain-credentials
    logHome: /u01/oracle/user_projects/domains/logs/accessdomain
    namespace: oamns
    persistentVolumeClaimName: accessdomain-domain-pvc
    rcuSchemaPrefix: OAMK8S
    rcuDatabaseURL: mydatabasehost.example.com:1521/orcl.example.com
    rcuCredentialsSecret: accessdomain-rcu-credentials
次に、create-domain-inputs.yamlファイルのパラメータの完全なリストを示します:
パラメータ 定義 デフォルト
adminPort Kubernetesクラスタ内の管理サーバーのポート番号。 7001
adminNodePort Kubernetesクラスタ外部の管理サーバーのポート番号。 30701
adminServerName 管理サーバーの名前。 AdminServer
clusterName ドメイン用に生成するWebLogicクラスタ・インスタンスの名前。デフォルトでは、OAMドメイン用のクラスタ名はoam_clusterです。 oam_cluster
configuredManagedServerCount ドメインに対して生成する管理対象サーバー・インスタンスの数。 5
createDomainFilesDir createDomainScriptNameプロパティで指定されたスクリプトを含め、WebLogicドメインを作成するためのすべてのファイルを検索するホスト・マシン上のディレクトリ。デフォルトでは、このディレクトリは相対パスwlstに設定され、作成スクリプトは、wlstディレクトリの組込みWLSTオフライン・スクリプトを使用してWebLogicドメインを作成します。これは相対パスwdtに設定することもできます。その後、組込みWDTスクリプトがかわりに使用されます。絶対パスも、ファイル・システム内の任意のディレクトリを指すようにサポートされています。組込みスクリプトは、ファイルが指定されたディレクトリにあるかぎり、ユーザーが指定したスクリプトまたはモデル・ファイルに置き換えることができます。このディレクトリ内のファイルは、Kubernetes構成マップに配置され、さらにcreateDomainScriptsMountPathにマウントされます。これにより、Kubernetesポッドがスクリプトおよびサポート・ファイルを使用してドメイン・ホームを作成できるようになります。 wlst
createDomainScriptsMountPath ドメイン作成スクリプトがポッド内にあるマウント・パス。create-domain.shスクリプトは、ドメイン・ホームを作成するKubernetesポッドでスクリプト(createDomainScriptNameプロパティで指定)を実行するKubernetesジョブを作成します。createDomainFilesDirディレクトリ内のファイルはポッドのこの場所にマウントされるため、Kubernetesポッドはスクリプトおよびサポート・ファイルを使用してドメイン・ホームを作成できます。 /u01/weblogic
createDomainScriptName ドメイン作成スクリプトがWebLogicドメインの作成に使用するスクリプト。create-domain.shスクリプトは、ドメイン・ホームを作成するこのスクリプトを実行するKubernetesジョブを作成します。このスクリプトは、createDomainScriptsMountPathプロパティで指定されたポッド内のディレクトリにあります。組込みスクリプトを使用するかわりに、ドメイン・ホームを作成するための独自のスクリプトを指定する必要がある場合は、このプロパティを使用して、ドメイン作成ジョブで実行するスクリプトの名前を設定する必要があります。 create-domain-job.sh
domainHome OAMドメインのホーム・ディレクトリ。指定しない場合、値はdomainUIDから/shared/domains/<domainUID>として導出されます。 /u01/oracle/user_projects/domains/accessdomain
domainPVMountPath ドメイン永続ボリュームのマウント・パス。 /u01/oracle/user_projects/domains
domainUID この特定のドメインの識別に使用される一意のID。生成されたWebLogicドメインの名前およびKubernetesドメイン・リソースの名前として使用されます。このIDは、Kubernetesクラスタ内のすべてのドメインで一意である必要があります。このIDには、Kubernetesサービス名で有効ではない文字を含めることはできません。 accessdomain
domainType ドメインのタイプ。OAMドメインでは必須入力です。サポートされているドメイン・タイプ値のいずれかを指定する必要があります: oam (OAMドメインをデプロイします) oam
exposeAdminNodePort 管理サーバーがKubernetesクラスタの外部に公開されているかどうかを示すブール。 false
exposeAdminT3Channel T3管理チャネルがKubernetesクラスタの外部に公開されているかどうかを示すブール。 false
image OAMコンテナ・イメージ。オペレータにはOAM 14.1.2が必要です。イメージを取得または作成する方法の詳細は、「OAMコンテナ・イメージの取得」を参照してください。 oracle/oam:14.1.2.1.0
imagePullPolicy WebLogicコンテナ・イメージ・プル・ポリシー。有効な値は、IfNotPresentAlwaysまたはNeverです IfNotPresent
imagePullSecretName コンテナ・レジストリにアクセスしてOAMコンテナ・イメージをプルするためのKubernetesシークレットの名前。このパラメータを指定すると、シークレットの存在が検証されます。 orclcred
includeServerOutInPodLog ポッドのstdoutにserver.outを含めるかどうかを示すブール。 true
initialManagedServerReplicas ドメインで最初に起動する管理対象サーバーの数。 1
javaOptions 管理サーバーおよび管理対象サーバーを起動するためのJavaオプション。Javaオプションには、WebLogicドメイン情報を取得するための事前定義された次の1つ以上の変数への参照を含めることができます: $(DOMAIN_NAME)$(DOMAIN_HOME)$(ADMIN_NAME)$(ADMIN_PORT)および$(SERVER_NAME) -Dweblogic.StdoutDebugEnabled=false
logHome ドメイン・ログ、サーバー・ログ、サーバー出力およびノード・マネージャ・ログ・ファイルのポッド内の場所。指定しない場合、値はdomainUIDから/shared/logs/<domainUID>として導出されます。 /u01/oracle/user_projects/domains/logs/accessdomain
managedServerNameBase 管理対象サーバー名の生成に使用されるベース文字列。 oam_server
managedServerPort 各管理対象サーバーのポート番号。 14100
namespace ドメインを作成するKubernetesネームスペース。 oamns
persistentVolumeClaimName ドメイン・ホームをホストするために作成された永続ボリューム要求の名前。指定しない場合、値はdomainUIDから<domainUID>-weblogic-sample-pvcとして導出されます。 accessdomain-domain-pvc
productionModeEnabled ドメインで本番モードが有効かどうかを示すブール。 true
serverStartPolicy 起動するWebLogic Serverインスタンスを決定します。有効な値は、NeverIfNeededAdminOnlyです。 IfNeeded
t3ChannelPort NetworkAccessPointのT3チャネルのポート。 30012
t3PublicAddress T3チャネルのパブリック・アドレス。これは、Kubernetesクラスタのパブリック・アドレスに設定する必要があります。これは通常、ロード・バランサのアドレスになります。開発環境の場合のみ: 単一サーバー(オールインワン)のKubernetesデプロイメントでは、これはマスターのアドレスに設定できますが、少なくともいずれかのワーカー・ノードのアドレスに設定する必要があります。 指定しない場合、スクリプトはこれをKubernetesクラスタのIPアドレスに設定しようとします
weblogicCredentialsSecretName 管理サーバーのユーザー名とパスワードのKubernetesシークレットの名前。指定しない場合、値はdomainUIDから<domainUID>-weblogic-credentialsとして導出されます。 accessdomain-domain-credentials
serverPodCpuRequest、serverPodMemoryRequest、serverPodCpuCLimit、serverPodMemoryLimit サーバー・ポッドごとに許可されるコンピュート・リソースの最大量および必要なコンピュート・リソースの最小量。詳細は、コンテナのコンピュート・リソースの管理に関するKubernetesドキュメントを参照してください。 リソース・リクエストおよびリソース制限は指定されていません。
rcuSchemaPrefix データベースで使用するスキーマ接頭辞(OAM1など)。RCUスキーマとの一致ドメインを簡略化するために、これをdomainUIDと同じにできます。 OAM1
rcuDatabaseURL データベースURL。 xxxxx.example.com:1521/oampdb1.example.com
rcuCredentialsSecret データベース資格証明を含むKubernetesシークレット。 accessdomain-rcu-credentials
datasourceType OAMドメインに適用可能なJDBCデータソースのタイプ。有効な値は、aglおよびgenericです。Active GridLinkデータソースの場合はaglを選択し、汎用データソースの場合はgenericを選択します。エンタープライズ・デプロイメントでは、Oracle RACデータベースへの接続にGridLinkデータ・ソースを使用することをお薦めします。詳細は、『Kubernetesクラスタ内のOracle Identity and Access Managementのためのエンタープライズ・デプロイメント・ガイド』を参照してください。 generic

ノート:

生成されたYAMLファイル内のKubernetesリソースの名前は、create-inputs.yamlファイルに指定された一部のプロパティの値で構成される可能性があります。これらのプロパティには、adminServerNameclusterNameおよびmanagedServerNameBaseが含まれます。これらの値にKubernetesサービス名で無効な文字が含まれている場合、それらの文字は生成されたYAMLファイルで有効な値に変換されます。たとえば、大文字は小文字に変換され、アンダースコア("_")はハイフン("-")に変換されます。

サンプルでは、1つのクラスタのみを持つドメインに対して、OAMドメイン・ホームおよび関連するKubernetesリソースを作成する方法を示します。また、このサンプルでは、他のユース・ケース用にドメイン・ホームを作成するためのユーザー独自のスクリプトを提供する機能も示します。生成されたドメインYAMLファイルも、より多くのユース・ケースに対応するように変更できます。