16.4 HPAのデプロイ
次のステップでは、Horizontal Pod Autoscaler (HPA)を構成および実行して、CPUまたはメモリー使用率のリソース・メトリックに基づいてOracle Access Management (OAM)をスケーリングする方法を示します。
デフォルトのOAMデプロイメントでは、1つのOAM管理対象サーバー(oam_server1
)を起動するクラスタaccessdomain-oam-cluster
が作成されます。デプロイメントでは、4つの別のOAM管理対象サーバー(oam-server2
からoam-server5
)も作成されますが、起動されません。
次の例では、HPAリソース(クラスタ・リソースaccessdomain-oam-cluster
)が作成されます。このリソースは、少なくとも1つのクラスタ・メンバーから最大5つのクラスタ・メンバーまで、OAM管理対象サーバーを自動スケーリングします。スケール・アップは、平均CPUが常に70%を超えている場合に行われます。スケール・ダウンは、平均CPUが常に70%を下回っている場合に行われます。
$WORKDIR/kubernetes/hpa
に移動し、次を含むautoscalehpa.yaml
ファイルを作成します:
説明:# # apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: accessdomain-oam-cluster-hpa namespace: oamns spec: scaleTargetRef: apiVersion: weblogic.oracle/v1 kind: Cluster name: accessdomain-oam-cluster behavior: scaleDown: stabilizationWindowSeconds: 60 scaleUp: stabilizationWindowSeconds: 60 minReplicas: 1 maxReplicas: 5 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 70
-
accessdomain
は、<domainUID>
です oamns
は、<domain_namespace>
です。-
minReplicas
およびmaxReplicas
は、現在のドメイン設定と一致する必要があります。
ノート:
メモリー・メトリックに基づいてHPAを設定するには、次の内容でメトリック・ブロックを更新します。Oracleでは、CPUとメモリーの両方ではなく一方のみを使用することをお薦めします:metrics: - type: Resource resource: name: memory target: type: Utilization averageUtilization: 70
-
- 次のコマンドを実行して、オートスケーラを作成します:
出力は次のようになります:kubectl apply -f autoscalehpa.yaml
horizontalpodautoscaler.autoscaling/accessdomain-oam-cluster-hpa created
- 次を実行して、オートスケーラのステータスを確認します:
出力は次のようになります:kubectl get hpa -n oamns
前述の例は、CPUがNAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE accessdomain-oam-cluster-hpa Cluster/accessdomain-oam-cluster 5%/70% 1 5 1 21s
accessdomain-oam-cluster-hpa
に対して現在5%で実行されていることを示しています。