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%を下回っている場合に行われます。

  1. $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
  2. 次のコマンドを実行して、オートスケーラを作成します:
    kubectl apply -f autoscalehpa.yaml
    出力は次のようになります:
    horizontalpodautoscaler.autoscaling/accessdomain-oam-cluster-hpa created
    
  3. 次を実行して、オートスケーラのステータスを確認します:
    kubectl get hpa -n oamns
    
    出力は次のようになります:
    NAME                           REFERENCE                          TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
    accessdomain-oam-cluster-hpa   Cluster/accessdomain-oam-cluster   5%/70%    1         5         1          21s
    前述の例は、CPUがaccessdomain-oam-cluster-hpaに対して現在5%で実行されていることを示しています。