すべてのプロダクト
Search
ドキュメントセンター

Auto Scaling:Elastic Container Instanceタイプのスケーリング設定を作成する

最終更新日:Sep 25, 2024

このトピックでは、Elastic Container Instanceタイプのスケーリング設定を作成する方法について説明します。 スケールアウトイベントがトリガーされると、Auto Scalingはスケーリング設定をテンプレートとして使用して、エラスティックコンテナインスタンスを作成します。 スケーリング設定は、次のいずれかの方法を使用して作成できます。フォームで作成およびYAMLファイルで作成します。

前提条件

  • Elastic Container Instanceタイプのスケーリンググループが作成されます。 詳細については、「スケーリンググループの管理」をご参照ください。

  • セキュリティグループが作成されます。 スケーリンググループのネットワークタイプが仮想プライベートネットワーク (VPC) の場合、セキュリティグループとスケーリンググループが同じVPCにあることを確認します。 詳細については、「セキュリティグループの作成」をご参照ください。

手順

Alibaba Cloudは、Elastic Container Instanceタイプのスケーリング設定を作成するための複数の方法を提供しています。 ビジネス要件に基づいて、次のいずれかの方法を選択できます。

  • フォームで作成

    Auto scalingコンソールの [フォームによる作成] タブで、Elastic Container Instanceタイプのスケーリング設定を作成できます。 詳細については、「方法1: [フォームによる作成] タブのスケーリング設定の作成」をご参照ください。

  • YAMLファイルによる作成

    Kubernetes YAMLファイルを使用して、スケーリング設定の作成と管理に使用する設定を宣言することもできます。 Auto Scalingを使用すると、Kubernetes YAMLファイルをコンパイルして、スケーリング設定を作成および管理できます。 Auto Scalingでは、Alibaba Cloudコマンドラインインターフェイス (CLI) を使用してスケーリング設定を作成および管理することもできます。 詳細については、「方法2: YAMLファイルによる作成タブのスケーリング設定の作成」をご参照ください。

方法1: [フォームによる作成] タブでスケーリング設定を作成する

  1. [スケーリング設定の作成] ページに移動します。

    1. Auto Scalingコンソールにログインします。

    2. 左側のナビゲーションウィンドウで、スケーリンググループをクリックします。

    3. 上部のナビゲーションバーで、リージョンを選択します。

    4. [スケーリンググループ] ページで、管理するスケーリンググループを見つけ、[操作] 列の [詳細] をクリックします。

    5. [インスタンス設定ソース] タブ、[スケーリング設定] タブをクリックします。 次に、[スケーリング設定の作成] をクリックして、[スケーリング設定の作成] ページに移動します。

  2. [スケーリング設定の作成] ページで、[フォームで作成] タブをクリックし、スケーリング設定の作成を求められたとおりにパラメーターを設定します。 [次へ: その他の設定] をクリックします。

    パラメーターの詳細については、「基本設定手順」をご参照ください。

  3. (オプション) プロンプトに従って、その他の設定 (オプション) ステップでパラメーターを設定します。

    パラメーターの詳細については、「その他の設定 (オプション) ステップ」をご参照ください。

  4. [設定の確認] をクリックします。 [確認] ステップで、スケーリング設定を確認し、[注文の作成] をクリックします。

  5. (オプション) スケーリング設定を有効にします。

    [注文の作成] をクリックした後、[成功] メッセージの [有効化] をクリックしてスケーリング設定を有効にします。

    説明

    スケーリング設定を作成した直後にスケーリング設定を有効にしない場合は、ビジネス要件に基づいて [スケーリング設定] タブで有効にすることができます。 詳細については、「スケーリング設定の適用」をご参照ください。

方法2: [YAMLファイルによる作成] タブでスケーリング設定を作成する

Auto Scalingコンソールの使用

  1. [スケーリング設定の作成] ページに移動します。

    1. Auto Scalingコンソールにログインします。

    2. 左側のナビゲーションウィンドウで、スケーリンググループをクリックします。

    3. 上部のナビゲーションバーで、リージョンを選択します。

    4. [スケーリンググループ] ページで、管理するスケーリンググループを見つけ、[操作] 列の [詳細] をクリックします。

    5. [インスタンス設定ソース] タブ、[スケーリング設定] タブをクリックします。 次に、[スケーリング設定の作成] をクリックして、[スケーリング設定の作成] ページに移動します。

  2. [スケーリング設定の作成] ページで、[YAMLファイルによる作成] タブをクリックします。 YAMLファイルをコンパイルします。

    サンプルコード:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-demo
      annotations:
        # The name of the scaling configuration.
        k8s.aliyun.com/ess-eci-scaling-configuration-name: create-ess-config-by-yaml
    spec:
      # The expected number of instances in the scaling group.
      template:
        metadata:
          labels:
              app: nginx-demo
          annotations:
            # The ID of the vSwitch. You can specify up to eight vSwitches in the same VPC. Separate multiple vSwitches with commas (,).
            k8s.aliyun.com/eci-vswitch: vsw-bp******1,vsw-bp******2,vsw-bp******3,vsw-bp******4
            # The ID of the security group. You can specify up to five security groups in the same VPC. Separate multiple security groups with commas (,).
            k8s.aliyun.com/eci-security-group: sg-bp******1,sg-bp******2
            # Specifies whether to automatically create and bind elastic IP addresses (EIPs).
            k8s.aliyun.com/eci-with-eip: 'true'
            # The instance type of elastic container instances.
            k8s.aliyun.com/eci-use-specs: 1.0-2.0Gi
            # The EIP bandwidth.
            k8s.aliyun.com/eip-bandwidth: '5'
        spec:
          containers:
            - name: nginx
              # The image.
              image: nginx:latest
              ports:
                - containerPort: 80
                  name: http
                - containerPort: 443
                  name: https
              resources:
                requests:
                  memory: 0.05Gi
                  cpu: 50m
                limits:
                  memory: 2Gi
                  cpu: '2'

    次の表に、上記のYAMLファイルで使用されるパラメーターを示します。 サポートされているすべてのパラメーターについては、「YAMLフィールド」をご参照ください。

    Parameters

    パラメーター

    説明

    Cron式

    k8s.aliyun.com/ess-eci-scaling-configuration-name

    スケーリング設定の名前。

    create-ess-config-by-yaml

    k8s.aliyun.com/eci-vswitch

    VSwitch の ID です。 同じVPCに最大8つのvSwitchを指定できます。 複数のvSwitchはコンマ (,) で区切ります。

    重要

    VPCとvSwitchを指定しない場合、Auto ScalingはデフォルトのVPCとvSwitchを作成します。 詳細については、「デフォルトVPCおよびデフォルトvSwitch」をご参照ください。

    vsw-bp ****** 1、vsw-bp ****** 2、vsw-bp ****** 3

    k8s.aliyun.com/eci-security-group: sg-bp ******

    セキュリティグループの ID です。 同じVPCに最大5つのセキュリティグループを指定できます。

    重要

    セキュリティグループとvSwitchは同じVPCにある必要があります。

    sg-bp ****** 1、sg-bp ****** 2

    k8s.aliyun.com/eci-with-eip

    EIPを自動的に割り当てるかどうかを指定します。 このパラメーターをtrueに設定すると、EIPは自動的にエラスティックコンテナインスタンスに割り当てられます。

    true

    k8s.aliyun.com/eci-use-specs

    elasticコンテナインスタンスのインスタンスタイプ。 インスタンスタイプは、vCPUとメモリサイズの組み合わせ、またはElastic Compute Service (ECS) インスタンスタイプです。 複数のインスタンスタイプを指定できます。

    1.0-1.0Gi

    k8s.aliyun.com/eip-bandwidth

    EIP帯域幅。 単位は、Mbit/s です。 既定値:5

    5

  3. [作成] をクリックします。 [情報の確認] メッセージで、設定を確認し、[確認] をクリックします。

  4. (オプション) スケーリング設定を有効にします。

    [確認] をクリックした後、[スケーリング設定の有効化] メッセージで [OK] をクリックしてスケーリング設定を有効にします。

    説明

    スケーリング設定を作成した直後にスケーリング設定を有効にしない場合は、ビジネス要件に基づいて [スケーリング設定] タブで有効にすることができます。 詳細については、「スケーリング設定の適用」をご参照ください。

Alibaba Cloud CLIの使用

Alibaba Cloud CLIを使用して、スケーリング設定を管理できます。 次のセクションでは、Alibaba Cloud CLIを使用してYAMLファイルを実行し、Elastic Container Instanceタイプのスケーリング設定を作成する方法について説明します。 Nginx:latestイメージを例として使用します。

重要

次の手順に進む前に、Alibaba Cloud CLIがインストールされ、必要な資格情報と環境変数が設定されていることを確認してください。 詳細については、「Alibaba Cloud CLI の概要」をご参照ください。

  1. create-ess-config.yamlという名前のファイルを作成します。

    サンプルコード:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-demo
      annotations:
        # The name of the scaling configuration.
        k8s.aliyun.com/ess-eci-scaling-configuration-name: create-ess-config-by-yaml
    spec:
      # The expected number of instances in the scaling group.
      template:
        metadata:
          labels:
              app: nginx-demo
          annotations:
            # The ID of the vSwitch. You can specify up to eight vSwitches in the same VPC. Separate multiple vSwitches with commas (,).
            k8s.aliyun.com/eci-vswitch: vsw-bp******1,vsw-bp******2,vsw-bp******3,vsw-bp******4
            # The ID of the security group. You can specify up to five security groups in the same VPC. Separate multiple security groups with commas (,).
            k8s.aliyun.com/eci-security-group: sg-bp******1,sg-bp******2
            # Specifies whether to automatically create and bind elastic IP addresses (EIPs).
            k8s.aliyun.com/eci-with-eip: 'true'
            # The instance type of elastic container instances.
            k8s.aliyun.com/eci-use-specs: 1.0-2.0Gi
            # The EIP bandwidth.
            k8s.aliyun.com/eip-bandwidth: '5'
        spec:
          containers:
            - name: nginx
              # The image.
              image: nginx:latest
              ports:
                - containerPort: 80
                  name: http
                - containerPort: 443
                  name: https
              resources:
                requests:
                  memory: 0.05Gi
                  cpu: 50m
                limits:
                  memory: 2Gi
                  cpu: '2'

    次の表に、上記のYAMLファイルで使用されるパラメーターを示します。 サポートされているすべてのパラメーターについては、「YAMLフィールド」をご参照ください。

    Parameters

    パラメーター

    説明

    Cron式

    k8s.aliyun.com/ess-eci-scaling-configuration-name

    スケーリング設定の名前。

    create-ess-config-by-yaml

    k8s.aliyun.com/eci-vswitch

    VSwitch の ID です。 同じVPCに最大8つのvSwitchを指定できます。 複数のvSwitchはコンマ (,) で区切ります。

    重要

    VPCとvSwitchを指定しない場合、Auto ScalingはデフォルトのVPCとvSwitchを作成します。 詳細については、「デフォルトVPCおよびデフォルトvSwitch」をご参照ください。

    vsw-bp ****** 1、vsw-bp ****** 2、vsw-bp ****** 3

    k8s.aliyun.com/eci-security-group: sg-bp ******

    セキュリティグループの ID です。 同じVPCに最大5つのセキュリティグループを指定できます。

    重要

    セキュリティグループとvSwitchは同じVPCにある必要があります。

    sg-bp ****** 1、sg-bp ****** 2

    k8s.aliyun.com/eci-with-eip

    EIPを自動的に割り当てるかどうかを指定します。 このパラメーターをtrueに設定すると、EIPは自動的にエラスティックコンテナインスタンスに割り当てられます。

    true

    k8s.aliyun.com/eci-use-specs

    elasticコンテナインスタンスのインスタンスタイプ。 インスタンスタイプは、vCPUとメモリサイズの組み合わせ、またはElastic Compute Service (ECS) インスタンスタイプです。 複数のインスタンスタイプを指定できます。

    1.0-1.0Gi

    k8s.aliyun.com/eip-bandwidth

    EIP帯域幅。 単位は、Mbit/s です。 既定値:5

    5

  2. create-ess-config.yamlファイルのディレクトリで次のコマンドを実行して、スケーリング設定を作成します。

    重要

    ビジネス要件に基づいて、コマンドの次のパラメーターを変更します。

    • -- RegionId: スケーリンググループのリージョンID。 この例では、cn-hangzhouが使用されます。

    • -- ScalingGroupId: スケーリンググループのID。 この例では、asg-bp ****** を使用します。

    aliyun ess ApplyEciScalingConfiguration --RegionId cn-hangzhou --ScalingGroupId asg-bp******v --Content "$(cat create-ess-config.yaml)" --version 2022-02-22 --method POST --force

Parameters

基本設定ステップ

パラメーター

説明

関連ドキュメント

課金方法

スケーリング設定から作成されたエラスティックコンテナインスタンスの課金方法。 有効な値:

  • 従量課金: Auto Scalingは、リソースをオンデマンドで割り当て、リリースします。 リソースは使った分だけ課金されます。 事前にリソースを購入する必要はありません。

  • プリエンプティブルインスタンス: プリエンプティブルインスタンスの市場価格は、インスタンスタイプの供給と需要によって異なります。 プリエンプティブルインスタンスは、従量課金インスタンスよりも費用対効果が高くなります。 ただし、プリエンプティブルインスタンスは自動的に再要求される場合があります。 プリエンプティブルインスタンスを使用して、特定のビジネスシナリオのコストを削減できます。

課金の概要

設定情報

スケーリング設定から作成されたエラスティックコンテナインスタンスのリージョン、VPC、およびvSwitch。 設定情報は自動的に入力されます。 エラスティックコンテナインスタンスとインスタンスが属するスケーリンググループは、同じリージョンとVPCにあり、同じvSwitchを使用している必要があります。

非該当

[セキュリティグループ]

スケーリング設定から作成されたエラスティックコンテナインスタンスのセキュリティグループ。

セキュリティグループの作成

コンテナーグループの設定

スケーリング設定でインスタンスタイプを指定するモード。 値の値:

  • 基本モード

    このモードでは、vCPUの数やメモリサイズなどのリソースや、イメージキャッシュやコスト最適化などの機能を有効にするかどうかを直接指定して、エラスティックコンテナインスタンスを作成できます。

  • インスタンスタイプの指定

    このモードでは、ECSインスタンスタイプを指定してエラスティックコンテナインスタンスを作成できます。 特定のGPUモデルなど、ビジネスに特定の要件がある場合は、このモードを使用できます。 詳細については、「ECSインスタンスタイプの指定によるelastic containerインスタンスの作成」をご参照ください。

エラスティックコンテナインスタンスにストレージボリュームを追加する場合は、[詳細設定] 折りたたみパネルの [ストレージ] セクションでパラメーターを設定できます。 詳細については、「ボリュームの概要」をご参照ください。

コンテナー設定

このセクションでは、コンテナの追加、コンテナイメージとイメージタグの選択、イメージプルポリシーの指定、およびコンテナ起動コマンドのコンパイルを行うことができます。

[詳細設定] 折りたたみパネルで、vCPUの数とメモリサイズを指定したり、環境変数を設定したり、各コンテナのストレージスペースを追加したりすることもできます。

ステップその他の設定 (オプション)

パラメーター

説明

関連ドキュメント

EIP

エラスティックコンテナインスタンスのインターネットアクセスを有効にする場合は、[自動作成] をクリックし、[最大帯域幅] パラメーターを設定します。

elasticコンテナインスタンスのインターネットアクセスの有効化

資格情報

コンテナーに指定するイメージがプライベートイメージリポジトリからのものである場合、このパラメーターを設定して、Auto Scalingがプライベートイメージリポジトリからイメージをプルできるようにする必要があります。

非該当

RAMロール

スケーリンググループ内のエラスティックコンテナインスタンスが他のクラウドリソースにアクセスする必要がある場合、必要な権限をResource access Management (RAM) ロールに割り当ててから、そのRAMロールをエラスティックコンテナインスタンスに割り当てる必要があります。

ポッドへのRAMロールの割り当て

タグ

スケーリング設定にタグを追加すると、スケーリング設定から作成されたすべてのエラスティックコンテナインスタンスがタグにバインドされます。 タグを使用して、エラスティックコンテナのインスタンスをより細かく管理できます。

タグを使用したelasticコンテナインスタンスの管理

リソースグループ

リソースグループを設定すると、スケーリング設定から作成されたすべてのエラスティックコンテナインスタンスがリソースグループに属します。 リソースグループごとにRAMユーザーの権限を管理できます。

リソースグループを使用してRAMユーザーの権限を制御する

スケーリング設定名

スケーリング設定の名前。 このパラメーターを設定しない場合、スケーリング設定IDが使用されます。

非該当

関連ドキュメント