7.1.7 OAMサーバー・メモリー・パラメータの設定
デフォルトでは、oam-cluster
に割り当てられるjavaメモリー・パラメータは、非常に小さくなります。推奨される最小値は、-Xms4096m -Xmx8192m
です。ただし、本番環境ではこれらを-Xms8192m -Xmx8192m
に設定することをお薦めします。
/output/weblogic-domains/<domain_uid>
ディレクトリに移動します:
例:cd $WORKDIR/kubernetes/create-access-domain/domain-home-on-pv/output/weblogic-domains/<domain_uid>
cd $WORKDIR/kubernetes/create-access-domain/domain-home-on-pv/output/weblogic-domains/accessdomain
domain.yaml
のバックアップを取得します:cp domain.yaml domain.yaml.orig
domain.yaml
ファイルおよびname:accessdomain-oam-cluster
内を編集し、次のようにメモリー設定を追加します:
例:serverPod: env: - name: USER_MEM_ARGS value: "-XX:+UseContainerSupport -Djava.security.egd=file:/dev/./urandom -Xms8192m -Xmx8192m" resources: limits: cpu: "2" memory: "8Gi" requests: cpu: "1000m" memory: "4Gi"
apiVersion: weblogic.oracle/v1 kind: Cluster metadata: name: accessdomain-oam-cluster namespace: oamns spec: clusterName: oam_cluster serverService: precreateService: true serverPod: env: - name: USER_MEM_ARGS value: "-XX:+UseContainerSupport -Djava.security.egd=file:/dev/./urandom -Xms8192m -Xmx8192m" resources: limits: cpu: "2" memory: "8Gi" requests: cpu: "1000m" memory: "4Gi" replicas: 1
ノート:
管理者は、次のことに注意する必要があります:- 前述のCPUおよびメモリーの値は、単なる例です。エンタープライズ・デプロイメントの場合は、『Kubernetesクラスタ内のOracle Identity and Access Managementのためのエンタープライズ・デプロイメント・ガイド』でパフォーマンスの推奨事項およびサイズ設定の要件を確認してください。
- CPUリソースの制限およびリクエストは、CPU単位で測定されます。Kubernetesの1つのCPUは、クラウド・プロバイダの場合は1つのvCPU/コアに、ベアメタルIntelプロセッサの場合は1つのハイパースレッドに相当します。CPU属性の
m
接尾辞は、「ミリCPU」を示しているため、500mはCPUの50%です。メモリーは様々な単位で表すことができます。1 Miは1 IEC単位のメガバイト(1024^2)で、1 Giは1 IEC単位のギガバイト(1024^3)です。詳細は、「ポッドおよびコンテナのリソース管理」、「コンテナおよびポッドへのメモリー・リソースの割当て」および「コンテナおよびポッドへのCPUリソースの割当て」を参照してください - 前述のパラメータは、Kubernetes Horizontal Pod Autoscaler (HPA)でも利用されます。HPAの詳細は、「Kubernetes Horizontal Pod Autoscaler」を参照してください。
- 必要に応じて、
accessdomain-policy-cluster
に対しても同じリソースおよび制限を設定できます。
domain.yaml
で、adminServer:
で始まるファイルのセクションを見つけます。env:
タグの下に、次のCLASSPATH
エントリを追加します。これは、管理サーバーからidmconfigtool
を実行するために必要です:
例:- name: CLASSPATH value: "/u01/oracle/wlserver/server/lib/weblogic.jar"
# adminServer is used to configure the desired behavior for starting the administration server. adminServer: # adminService: # channels: # The Admin Server's NodePort # - channelName: default # nodePort: 30701 # Uncomment to export the T3Channel as a service # - channelName: T3Channel serverPod: # an (optional) list of environment variable to be set on the admin servers env: - name: USER_MEM_ARGS value: "-Djava.security.egd=file:/dev/./urandom -Xms512m -Xmx1024m " - name: CLASSPATH value: "/u01/oracle/wlserver/server/lib/weblogic.jar"
- 必要に応じて、オプションのパラメータ
maxClusterConcurrentStartup
をdomain.yaml
のspecセクションに追加できます。このパラメータでは、クラスタごとに順番に起動される管理対象サーバーの数を指定します。たとえば、
create-domain-inputs.yaml
でinitialManagedServerReplicas
を4
に更新し、ノードが2つのみである場合、maxClusterConcurrentStartup: 1
を設定すると、すべての管理対象サーバーが一度に起動されるのではなく、ノードごとに1つずつ起動されます。これは、起動時に個々のノードの負荷を軽減するのに役立つ可能性があります。次に、パラメータが追加された例を示します:apiVersion: "weblogic.oracle/v9" kind: Domain metadata: name: accessdomain namespace: oamns labels: weblogic.domainUID: accessdomain spec: # The WebLogic Domain Home domainHome: /u01/oracle/user_projects/domains/accessdomain maxClusterConcurrentStartup: 1 # The domain home source type # Set to PersistentVolume for domain-in-pv, Image for domain-in-image, or FromModel for model-in-image domainHomeSourceType: PersistentVolume ....
- 変更を
domain.yaml
に保存します