スケーリング OpenPages アプリケーションサーバーポッド

アプリケーション・サーバー・ポッドをスケーリングすることができます。

始める前に

変更を行う前に、最小システム要件を確認してください。 システム要件を参照。

このタスクについて

アプリケーション・サーバーの場合 OpenPages アプリケーション・サーバーでは
  • インスタンスのサイズを (例えば「極小」から「小」に) 変更します。
  • autoScaleConfig 機能を使用している場合は、使用するレプリカの最小数と最大数を設定します。
  • 使用するレプリカの数を設定する。
  • vCPU の数を増減させます。
  • メモリーを増減させます。
ヒント: アプリケーション・サーバー・ポッドの現在の vCPUs とメモリを確認するには、以下のコマンドを実行します:
oc describe sts/openpages-<instance_name>-sts
注: スケーリング操作はクラスタが静かなときに実行します。

手順

  1. インスタンス管理者として Red Hat® OpenShift® クラスタにログインします。
    ${CPDM_OC_LOGIN}
  2. OpenPages 環境をバックアップする。
    詳細については、 OpenPages バックアップ、復元、移行」を参照してください。
  3. 以下のオプションを 1 つ以上使用します。

    これらのコマンドでは、 --tethered_instance_ns パラメータを使用します。 OpenPages パラメータを使用します。

    --cpd_instance_ns と --tethered_instance_ns は互いに排他的なので、 --cpd_instance_ns パラメータか --tethered_instance_ns パラメータのどちらかを指定しなければならない。

    インスタンスのサイズの変更
    インスタンスのサイズを変更するには、 scaleConfig パラメータを使用します。 パラメータに渡せる有効な値は以下の通り:
    • xsmall
    • small
    • small_mincpureq
    • medium
    • large
    たとえば、サイズを変更するには xsmall、次のコマンドで を xsmall${size} 置き換えます:
    cpd-cli manage update-cr --component=openpages_instance \
        --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
        --patch="{\"scaleConfig\":\"small\"}" \
        --extra-vars='{"cr_name":"${INSTANCE_NAME}"}' \
        [--tethered_instance_ns=${PROJECT_CPD_INSTANCE_TETHERED}]
    

    scaleConfig パラメータは、 customScaleConfig パラメータが定義されていない限り、 1の値を使用する。

    アプリケーション・レプリカの最小数と最大数の設定
    オートスケーリングを使用している場合、使用する最小レプリカ数と最大レプリカ数を設定できます:
    cpd-cli manage update-cr --component=openpages_instance \
     --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} 
     --patch="{\"customScaleConfig\":{\"opapp\":{\"min_replicas\":1,\"max_replicas\":5}}}" \
     --extra-vars='{"cr_name":"${INSTANCE_NAME}"}' \
     [--tethered_instance_ns=${PROJECT_CPD_INSTANCE_TETHERED}]

    autoScaleConfig: true を使用する場合は、これらのパラメーターを使用する。

    アプリケーション・レプリカの数を設定する
    オートスケーリングを使用している場合は、 replicas パラメーターで初期レプリカ数を設定します。 min_replicasmax_replicas の範囲で使用レプリカ数を増減する。
    自動スケーリングを使用していない場合、この replicas パラメータは使用するレプリカ数を固定値に設定します:
    cpd-cli manage update-cr --component=openpages_instance \
     --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
     --patch="{\"customScaleConfig\":{\"opapp\":{\"replicas\":2}}}" \
     --extra-vars='{"cr_name":"${INSTANCE_NAME}"}' \
     [--tethered_instance_ns=${PROJECT_CPD_INSTANCE_TETHERED}]
    アプリケーション・ポッドのリソースの変更
    制限やリクエストのリソースを変更することができます。 リソースを設定するには、 および memory cpu パラメータを変更してください:
    cpd-cli manage update-cr --component=openpages_instance \
     --cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
     --patch="{\"customScaleConfig\":{\"opapp\":{\"replicas\":2,\"resources\":{\"limits\":{\"cpu\":2,\"memory\":\"8Gi\",\"ephemeral-storage\":\"4Gi\"},\"requests\":{\"cpu\":\"5m\",\"memory\":\"8Gi\",\"ephemeral-storage\":\"4Gi\"}}}}}" \
     --extra-vars='{"cr_name":"${INSTANCE_NAME}"}' \
     [--tethered_instance_ns=${PROJECT_CPD_INSTANCE_TETHERED}]
    テザー・ネームスペースでは、以下のエラー・メッセージが表示されることがあります:
    [ERROR] 2025-03-11T01:20:13.024803Z cmd.Run() failed with exit status 2
    [ERROR] 2025-03-11T01:20:13.024950Z Command exception: The update-cr command failed (exit status 2). You may find output and logs in the /root/cpd_cli_linux/cpd-cli-workspace/olm-utils-workspace/work directory.
    [ERROR] 2025-03-11T01:20:13.026910Z RunPluginCommand:Execution error:  exit status 1
    回避策として以下のパッチを適用する:
    oc -n ${PROJECT_CPD_INSTANCE_TETHERED} patch OpenPagesInstance ${INSTANCE_NAME}  \
      --type=merge \
      --patch '{
        "spec": {
          "customScaleConfig": {
            "opapp": {
              "replicas": 1,
              "resources": {
                "limits": {
                    "cpu": "4",
                    "ephemeral-storage":"4Gi",
                    "memory": "6Gi"
                },
                "requests": {
                    "cpu": "4",
                    "ephemeral-storage":"4Gi",
                    "memory": "6Gi"
                }
              }
            }
          }
        }
    }'

    詳細については、 クォータの設定と実施を参照してください。

    例えば、オートスケーリングを使っている場合:
    oc -n ${PROJECT_CPD_INSTANCE_TETHERED} patch OpenPagesInstance ${INSTANCE_NAME}  \
      --type=merge \
      --patch '{
        "spec": {
        "customScaleConfig": {
            "opapp": {
                "min_replicas": 1,
                "max_replicas": 5,
                "resources": {
                    "limits": {
                        "cpu": 4,
                        "memory": "6Gi"
                    },
                    "requests": {
                        "cpu": 4,
                        "memory": "6Gi"
                    }
                }
            }
        }
      }
    }'
    あるいは、オートスケーリングを使っていない場合:
    oc -n ${PROJECT_CPD_INSTANCE_TETHERED} patch OpenPagesInstance ${INSTANCE_NAME}  \ 
      --type=merge \
      --patch '{
        "spec": {
        "customScaleConfig": {
        "opapp": {
          "replicas": 2,
          "resources": {
            "limits": {
              "cpu": 4,
              "memory": "6Gi"
            },
            "requests": {
              "cpu": 4,
              "memory": "6Gi"
            }
          }
        }
      }
     }
    }'