スケーリンググループが ECI タイプの場合、スケールアウト時に作成される Elastic Container Instance (ECI) インスタンスのテンプレートとして機能するスケーリング設定を作成できます。スケールアウトイベントがトリガーされると、Auto Scaling はこのスケーリング設定に基づいて ECI インスタンスを自動的に作成します。ECI スケーリング設定は、フォームまたは YAML ファイルを使用して作成できます。
操作手順
ECI スケーリンググループのスケーリング設定は、複数の方法で作成できます。要件に最も適した方法を選択してください。
方法1:フォームの使用
スケーリング設定の作成 ページに移動します。
Auto Scalingコンソールにログインします。
左側のナビゲーションウィンドウで、スケーリンググループをクリックします。
上部のナビゲーションバーで、リージョンを選択します。
スケーリンググループ ページで、管理するスケーリンググループを見つけ、操作 列の 詳細の表示 をクリックします。
インスタンスの設定ソース タブをクリックし、スケーリング設定 タブで、スケーリング設定の作成 をクリックして スケーリング設定の作成 ページを開きます。
スケーリング設定の作成 ページで、フォームから作成する タブをクリックして基本設定を入力します。次に、次: その他の設定 をクリックします。
パラメータの詳細については、「基本設定」をご参照ください。
(オプション) その他の設定を行います。
パラメータの詳細については、「その他の設定」をご参照ください。
構成の確認 をクリックします。設定を確認し、注文の作成 をクリックします。
(オプション) スケーリング設定を有効にします。
注文の作成 をクリックすると、スケーリング設定が作成されます。 ダイアログボックスが表示されます。有効化 をクリックして、スケーリング設定をすぐに有効化できます。
説明 設定をすぐに有効にしたくない場合は、スケーリング設定のリストから後で有効にすることができます。詳細については、「スケーリング設定の選択と有効化」をご参照ください。
方法2:Kubernetes YAML ファイルの使用
コンソール
スケーリング設定の作成 ページに移動します。
Auto Scalingコンソールにログインします。
左側のナビゲーションウィンドウで、スケーリンググループをクリックします。
上部のナビゲーションバーで、リージョンを選択します。
スケーリンググループ ページで、管理するスケーリンググループを見つけ、操作 列の 詳細の表示 をクリックします。
インスタンスの設定ソース タブをクリックし、スケーリング設定 タブで、スケーリング設定の作成 をクリックして スケーリング設定の作成 ページを開きます。
スケーリング設定の作成 ページで、YAML から作成する タブをクリックし、YAML ファイルを記述します。
次の例を参考にして、YAML ファイルを記述できます。
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-demo
annotations:
# スケーリング設定の名前。
k8s.aliyun.com/ess-eci-scaling-configuration-name: create-ess-config-by-yaml
spec:
# このテンプレートは、作成する ECI インスタンスを定義します。
template:
metadata:
labels:
app: nginx-demo
annotations:
# vSwitch ID。同じ VPC 内で最大 8 つの vSwitch を指定できます。複数の vSwitch ID はカンマ (,) で区切ります。
k8s.aliyun.com/eci-vswitch: vsw-bp******1,vsw-bp******2,vsw-bp******3,vsw-bp******4
# セキュリティグループ ID。同じ VPC 内で最大 5 つのセキュリティグループを指定できます。複数のセキュリティグループ ID はカンマ (,) で区切ります。
k8s.aliyun.com/eci-security-group: sg-bp******1,sg-bp******2
# EIP を自動的に作成して関連付けるかどうかを指定します。
k8s.aliyun.com/eci-with-eip: 'true'
# ECI インスタンスタイプ。
k8s.aliyun.com/eci-use-specs: 1.0-2.0Gi
# EIP の帯域幅。
k8s.aliyun.com/eip-bandwidth: '5'
spec:
containers:
- name: nginx
# イメージ。
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 パラメータ」をご参照ください。
インスタンスの YAML パラメータ
パラメータ | 説明 | 例 |
k8s.aliyun.com/ess-eci-scaling-configuration-name | スケーリング設定の名前。 | create-ess-config-by-yaml |
k8s.aliyun.com/eci-vswitch | vSwitch の ID。同じ VPC 内で最大 8 つの vSwitch を指定できます。複数の vSwitch ID はカンマ (,) で区切ります。
重要 VPC と vSwitch を指定しない場合、Auto Scaling はデフォルトの VPC と vSwitch を使用または作成します。詳細については、「デフォルトのVPCとvSwitch」をご参照ください。 | vsw-bp******1,vsw-bp******2,vsw-bp******3 |
k8s.aliyun.com/eci-security-group | セキュリティグループ の ID。同じ VPC 内で最大 5 つのセキュリティグループを指定できます。複数のセキュリティグループ ID はカンマ (,) で区切ります。
重要 セキュリティグループと vSwitch は同じ VPC 内にある必要があります。 | sg-bp******1,sg-bp******2 |
k8s.aliyun.com/eci-with-eip | EIP をインスタンスに自動的に関連付けるかどうかを指定します。この機能を有効にするには、値を true に設定します。 | true |
k8s.aliyun.com/eci-use-specs | ECI インスタンスタイプ。vCPU とメモリの仕様、または ECS インスタンスタイプを含む、複数のタイプを指定できます。 | 1.0-1.0Gi |
k8s.aliyun.com/eip-bandwidth | EIP の帯域幅。単位:Mbit/s。デフォルト値は 5 Mbit/s です。 | 5 |
作成する をクリックします。確認ダイアログボックスで、注文の作成 をクリックしてスケーリング設定を作成します。
(オプション) スケーリング設定を有効にします。
注文の作成 をクリックすると、スケーリング設定の使用 ダイアログボックスが表示されます。OK をクリックして、すぐにスケーリング構成を有効にできます。
説明 設定をすぐに有効にしたくない場合は、スケーリング設定のリストから後で有効にすることができます。詳細については、「スケーリング設定の選択と有効化」をご参照ください。
Alibaba Cloud CLI
Alibaba Cloud CLI を使用して、コマンドラインからスケーリング設定を管理できます。次の手順では、YAML ファイルを使用して ECI インスタンスのスケーリング設定を作成する方法について説明します。この例では、nginx:latest イメージを使用します。
重要 開始する前に、Alibaba Cloud CLI がインストールされ、Alibaba Cloud CLI の認証情報と環境変数が設定されていることを確認してください。詳細については、「Alibaba Cloud CLIとは」をご参照ください。
create-ess-config.yaml という名前のファイルを作成します。
次の例を参考にして、YAML ファイルを記述できます。
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-demo
annotations:
# スケーリング設定の名前。
k8s.aliyun.com/ess-eci-scaling-configuration-name: create-ess-config-by-yaml
spec:
# このテンプレートは、作成する ECI インスタンスを定義します。
template:
metadata:
labels:
app: nginx-demo
annotations:
# vSwitch ID。同じ VPC 内で最大 8 つの vSwitch を指定できます。複数の vSwitch ID はカンマ (,) で区切ります。
k8s.aliyun.com/eci-vswitch: vsw-bp******1,vsw-bp******2,vsw-bp******3,vsw-bp******4
# セキュリティグループ ID。同じ VPC 内で最大 5 つのセキュリティグループを指定できます。複数のセキュリティグループ ID はカンマ (,) で区切ります。
k8s.aliyun.com/eci-security-group: sg-bp******1,sg-bp******2
# EIP を自動的に作成して関連付けるかどうかを指定します。
k8s.aliyun.com/eci-with-eip: 'true'
# ECI インスタンスタイプ。
k8s.aliyun.com/eci-use-specs: 1.0-2.0Gi
# EIP の帯域幅。
k8s.aliyun.com/eip-bandwidth: '5'
spec:
containers:
- name: nginx
# イメージ。
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 パラメータ」をご参照ください。
インスタンスの YAML パラメータ
パラメータ | 説明 | 例 |
k8s.aliyun.com/ess-eci-scaling-configuration-name | スケーリング設定の名前。 | create-ess-config-by-yaml |
k8s.aliyun.com/eci-vswitch | vSwitch の ID。同じ VPC 内で最大 8 つの vSwitch を指定できます。複数の vSwitch ID はカンマ (,) で区切ります。
重要 VPC と vSwitch を指定しない場合、Auto Scaling はデフォルトの VPC と vSwitch を使用または作成します。詳細については、「デフォルトのVPCとvSwitch」をご参照ください。 | vsw-bp******1,vsw-bp******2,vsw-bp******3 |
k8s.aliyun.com/eci-security-group | セキュリティグループ の ID。同じ VPC 内で最大 5 つのセキュリティグループを指定できます。複数のセキュリティグループ ID はカンマ (,) で区切ります。
重要 セキュリティグループと vSwitch は同じ VPC 内にある必要があります。 | sg-bp******1,sg-bp******2 |
k8s.aliyun.com/eci-with-eip | EIP をインスタンスに自動的に関連付けるかどうかを指定します。この機能を有効にするには、値を true に設定します。 | true |
k8s.aliyun.com/eci-use-specs | ECI インスタンスタイプ。vCPU とメモリの仕様、または ECS インスタンスタイプを含む、複数のタイプを指定できます。 | 1.0-1.0Gi |
k8s.aliyun.com/eip-bandwidth | EIP の帯域幅。単位:Mbit/s。デフォルト値は 5 Mbit/s です。 | 5 |
create-ess-config.yaml ファイルと同じディレクトリで、次のコマンドを実行してスケーリング設定を作成します。
重要 必要に応じて次のパラメータを変更してください:
aliyun ess ApplyEciScalingConfiguration --RegionId cn-hangzhou --ScalingGroupId asg-bp******v --Content "$(cat create-ess-config.yaml)" --version 2022-02-22 --method POST --force
パラメータ
基本設定
パラメータ | 説明 | 関連トピック |
[課金方法] | スケーリンググループ内のインスタンスの課金方法を選択します。課金方法 を設定すると、新しく作成されたインスタンスは、この方法に基づいて課金されます。設定項目は次のとおりです。 | 課金の概要 |
[設定情報] | ECI インスタンスのリージョン、VPC、および vSwitch。これらの値は、スケーリンググループの設定に合わせて自動的に入力されます。 | N/A |
[セキュリティグループ] | スケールアウト時に作成されたインスタンスは、選択したセキュリティグループに自動的に追加されます。 | セキュリティグループの作成 |
[コンテナーグループの設定] | このセクションでは、ECI インスタンスのインスタンスタイプを設定できます。2 つのモードを利用できます: ECI インスタンスにストレージ ボリュームを追加する必要がある場合は、要件に基づいて詳細設定 セクションで設定できます。詳細については、「ボリュームの概要」をご参照ください。 | |
[コンテナーの設定] | このセクションでは、コンテナーグループ内のコンテナーを設定できます。設定項目には、複数のコンテナーの追加、コンテナーイメージの設定、バージョン、イメージプルポリシー、およびイメージ起動コマンドの選択などがあります。 また、コンテナーに必要なリソースを指定し、詳細設定で環境変数とストレージを設定することもできます。 | |
[その他の設定]
パラメータ | 説明 | 関連トピック |
[エラスティックパブリックネットワークip] | このオプションを有効にすると、新しく作成された ECI インスタンスは、インターネットアクセス用に Elastic IP Address (EIP) に自動的に関連付けられます。 | ECIインスタンスのインターネットアクセスを設定する |
[レジストリアクセス資格情報] | コンテナーがプライベートイメージリポジトリのイメージを使用する場合は、システムがイメージをプルできるように認証情報を設定する必要があります。 | N/A |
[インスタンスramロール] | スケーリンググループ内の ECI インスタンスが他の Alibaba Cloud サービスにアクセスする必要がある場合は、RAM ロールを割り当てる必要があります。このロールに権限を付与して、他のクラウドリソースへのインスタンスアクセスを制御します。 | ECI PodにRAMロールを関連付ける |
[タグ] | タグを設定すると、新しくスケールアウトされたすべての ECI インスタンスにこれらのタグが関連付けられます。タグを使用すると、インスタンスをより細かく管理およびフィルタリングできます。 | タグを使用してECIインスタンスを管理する |
[リソースグループ] | リソースグループを設定すると、新しくスケールアウトされたすべての ECI インスタンスがこのリソースグループ内に作成されます。リソースグループを使用して、RAM ユーザーの権限を制御できます。 | リソースグループを使用してRAMユーザー認証を実装する |
[スケーリング設定名] | スケーリング設定の名前。このパラメータを空のままにすると、デフォルトでスケーリング設定 ID が使用されます。 | N/A |
関連トピック
API を使用して ECI インスタンスのスケーリング設定を作成するには、「CreateEciScalingConfiguration」をご参照ください。
スケーリング設定を作成した後、設定のエクスポートやインポートなど、設定を管理できます。詳細については、「スケーリング設定の管理」をご参照ください。
Elastic Container Instance を使い始めるには、Nginx や CentOS などの一般的なイメージから ECI インスタンスを作成してみてください。詳細については、次のトピックをご参照ください: