25.4.2. メモリー使用率の自動スケーリング


CPU ベースの自動スケーリングとは異なり、メモリーベースの自動スケーリングでは、oc autoscale コマンドの代わりに YAML を使用して Autoscaler を指定することが必要です。オプションとして、Pod の最小数および Pod がターゲットとする必要のある平均のメモリー使用率を指定できます。 これらを指定しない場合は、OpenShift Container Platform サーバーからのデフォルト値がこれらに指定されます。

重要

メモリー使用率の自動スケーリングはテクノロジープレビュー機能として提供されています。テクノロジープレビュー機能は、Red Hat の実稼働環境でのサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポートについての詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

注記

メモリーベースの自動スケーリングは、自動スケーリング API の v2beta1 バージョンでのみ利用できます。

メモリーベースの自動スケーリングを使用するには、以下を実行します。

  1. メモリーベースの自動スケーリングを有効にします。

    1. クラスターの master-config.yaml ファイルに以下を追加します。

      ...
      apiServerArguments:
        runtime-config:
        - apis/autoscaling/v2beta1=true
      ...
    2. OpenShift Container Platform サービスを再起動します。

      $ master-restart api
      $ master-restart controllers
  2. 必要な場合は、スケーリングするオブジェクトの名前を取得します。

    $ oc get dc
    
    NAME                  REVISION   DESIRED   CURRENT   TRIGGERED BY
    frontend              1          5         0         config
  3. 以下を hpa.yaml などのファイルに置きます。

    apiVersion: autoscaling/v2beta1
    kind: HorizontalPodAutoscaler
    metadata:
      name: hpa-resource-metrics-memory 1
    spec:
      scaleTargetRef:
        apiVersion: apps.openshift.io/v1 2
        kind: DeploymentConfig 3
        name: frontend 4
      minReplicas: 2 5
      maxReplicas: 10 6
      metrics:
      - type: Resource
        resource:
          name: memory
          targetAverageUtilization: 50 7
    1
    この Horizontal Pod Autoscaler オブジェクトの名前。
    2
    スケーリングするオブジェクトの API バージョン:
    • ReplicationController については、v1 を使用します。
    • DeploymentConfig については、apps.openshift.io/v1 を使用します。
    3
    スケーリングするオブジェクトの種類 (ReplicationController または DeploymentConfig のいずれか)。
    4
    スケーリングする既存オブジェクトの名前。
    5
    スケールダウン時のレプリカの最小数。デフォルトは 1 です。
    6
    スケールアップ時のレプリカの最大数。
    7
    各 Pod が使用していることが予想される要求されたメモリーの平均のパーセンテージ。
  4. 次に上記のファイルから Autoscaler を作成します。

    $ oc create -f hpa.yaml
重要

メモリーベースの自動スケーリングを機能させるには、メモリー使用量がレプリカ数と比例して増減する必要があります。平均的には以下のようになります。

  • レプリカ数が増えると、Pod ごとのメモリー (作業セット) の使用量が全体的に減少します。
  • レプリカ数が減ると、Pod ごとのメモリー使用量が全体的に増加します。

OpenShift web コンソールを使用して、アプリケーションのメモリー動作を確認し、メモリーベースの自動スケーリングを使用する前にアプリケーションがそれらの要件を満たしていることを確認します。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.