Auto Scaling は、均衡分散ポリシーを使用して複数のアベイラビリティーゾーンに ECS インスタンスを分散させることで、コンピューティングクラスターを迅速にプロビジョニングし、インスタンスのヘルス状態をリアルタイムで監視して高可用性を確保します。このチュートリアルでは、高可用性コンピューティングクラスターをデプロイし、スポットインスタンスを使用してリソースコストを削減する方法について説明します。
ユースケース
シナリオ
分散型ビッグデータコンピューティングや AI トレーニングのワークロードでは、ピーク時にコンピューティングリソースが急増することが多く、高可用性コンピューティングクラスターを迅速に作成することが不可欠です。
たとえば、広告ターゲティングに機械学習を使用するオンライン広告プロバイダーは、ピークトラフィック時にコンピューティングリソースをスケールアップする必要があります。手動で ECS インスタンスのクラスターを作成すると、時間がかかり、エラーが発生しやすくなります。単一のアベイラビリティーゾーンの在庫が不足しているためにインスタンスの作成に失敗したり、そのゾーンで障害が発生した場合にサービスが中断したりする可能性があります。
ソリューション
Auto Scaling を使用して、ECS インスタンスを自動的に一括作成します。均衡分散ポリシーにより、これらのインスタンスは複数のアベイラビリティーゾーンに均等に分散され、スポットインスタンスによってコストを削減できます。
利点
このアプローチには、次の利点があります。
-
運用オーバーヘッドゼロ
Auto Scaling は、手動介入なしで ECS インスタンスを自動的にスケールインまたはスケールアウトします。
-
組み込みの高可用性
均衡分散ポリシーは ECS インスタンスを複数のアベイラビリティーゾーンに分散させ、単一ゾーンの在庫不足によるスケールアウトの失敗を防ぎます。デフォルトで有効になっているインスタンスのヘルスチェック機能により、スケーリンググループ内のすべての ECS インスタンスが利用可能な状態に保たれます。
-
優れたコスト効率
コンピュートノードにスポットインスタンスを使用することで、リソースコストを大幅に削減できます。
操作手順
-
ビジネスアーキテクチャを評価し、高可用性クラスターを必要とするビジネスモジュール用のスケーリンググループを作成してください。
-
ビジネスアプリケーションがデプロイ済みのカスタムイメージを準備してください。スケーリング設定を作成する際にこのカスタムイメージを選択すると、自動的に作成される ECS インスタンスが要件を満たすようになります。詳細については、「インスタンスからのカスタムイメージの作成」をご参照ください。
Auto Scalingコンソールにログインします。
-
スケーリンググループを作成します。
-
ナビゲーションペインで、スケーリンググループ をクリックします。
-
上部メニューで、リージョンを選択します。
-
ページの左上隅で、作成 をクリックします。
-
フォームから作成する タブで、スケーリンググループのパラメーターを設定し、作成する をクリックします。
次の表は、このチュートリアルで設定するパラメーターの一覧です。記載されていないパラメーターについては、デフォルト設定を使用してください。スケーリンググループの設定方法の詳細については、「スケーリンググループの作成」をご参照ください。
パラメーター
例
説明
[スケーリンググループ名]
test
スケーリンググループの名前を入力します。形式の要件については、画面の指示をご参照ください。
[タイプ]
ECS
[ECS] を選択して、スケーリンググループ内の ECS インスタンスを管理します。
[インスタンス設定ソース]
ゼロから作成
インスタンスの自動作成用のテンプレートは指定しません。スケーリンググループの作成後、スケーリング設定を作成する必要があります。
[最小インスタンス数]
100
スケーリンググループ内のインスタンスの最小数です。インスタンス数がこの値を下回った場合、Auto Scaling はこの最小数を満たすようにインスタンスを追加します。
[最大インスタンス数]
120
スケーリンググループ内のインスタンスの最大数です。インスタンス数がこの値を超えた場合、Auto Scaling はこの最大数を満たすようにインスタンスを削除します。
均衡分散ポリシー
均衡分散ポリシー を選択します。このポリシーは、複数の vSwitch を選択した後にのみ有効になります。
[VPC]
vpc-2zeghwzptn5zii0w7****
スケーリンググループ内の ECS インスタンスが属する VPC を選択します。
[VSwitch の選択]
vsw-2ze23nqzig8inprou****
vsw-2zeet2ksvw7f14ryz****
vsw-2ze94pjtfuj9vaymf****
スケーリンググループ内の ECS インスタンスが属する vSwitch を選択します。
複数の vSwitch を選択して、均衡分散ポリシーを有効にします。これにより、ECS インスタンスが複数のアベイラビリティーゾーンに分散され、スケールアウトイベントの成功率が向上します。
-
-
スケーリング設定を作成します。
-
スケーリンググループ ページで、作成したスケーリンググループを見つけ、スケーリンググループの ID をクリックします。
-
インスタンスの設定ソース タブをクリックします。
-
スケーリング設定 タブで、スケーリング設定の作成 をクリックします。
-
スケーリング設定の作成 ページで、パラメーターを設定し、作成する をクリックします。
次の表は、このチュートリアルで設定するパラメーターの一覧です。記載されていないパラメーターについては、デフォルト設定を使用してください。スケーリング設定の構成方法の詳細については、「ECS インスタンスのスケーリング設定の作成」をご参照ください。
セクション
パラメーター
例
説明
[基本情報]
[スケーリング設定名]
test
スケーリング設定の名前を入力します。形式の要件については、画面の指示をご参照ください。
[課金方法]
スポットインスタンス
Auto Scaling は無料のサービスですが、追加される ECS インスタンスには料金が発生します。このチュートリアルでは、スポットインスタンスが使用されます。詳細については、「課金の概要」をご参照ください。
[イメージとインスタンス]
[インスタンス構成モード]
インスタンスパターンを指定
[インスタンスパターンを指定] を選択して、ECS インスタンスの仕様を設定します。
[インスタンス属性組み合わせの指定]
2 vCPU、4 GiB メモリ、エンタープライズレベル
ECS インスタンスの vCPU とメモリの要件を設定します。
[イメージの選択]
test
ECS インスタンスをデプロイするためのイメージを選択します。
本番環境では、アプリケーションを含むカスタムイメージを使用してください。
[ストレージ]
[システムディスク]
ESSD、40 GiB、PL0
ECS インスタンスのシステムディスクを選択します。
[ネットワークとセキュリティグループ]
[セキュリティグループ]
sg-bp18kz60mefsicfg****
作成済みのセキュリティグループを選択します。セキュリティグループを作成するには、「セキュリティグループの作成」をご参照ください。
[管理設定]
[ログイン資格情報]
後で設定
インスタンス作成後に手動でパスワードを設定します。
-
-
スケーリング設定を作成したら、画面の指示に従ってスケーリング設定とスケーリンググループを有効にします。
結果
インスタンスの最小数を 100 に設定すると、スケーリンググループが有効になった後、自動的に 100 個の ECS インスタンスがデプロイされ、選択されたアベイラビリティーゾーン間でインスタンスが分散されてコンピューティングクラスターが形成されます。高可用性とコスト削減は、次のように実現されます:
-
あるアベイラビリティーゾーンの在庫が不足している場合、Auto Scaling は自動的に他の選択されたゾーンに ECS インスタンスをデプロイしようとし、アプリケーションへの影響を最小限に抑えます。
-
スポットインスタンスが回収されると、スケーリンググループは自動的に代替インスタンスを作成します。また、異常なインスタンスを削除し、それらを置き換えます。
次のステップ
在庫不足により ECS インスタンスの均等な分散が妨げられる場合は、スケーリンググループをリバランスして、アベイラビリティーゾーン間の分散を修正できます。詳細については、「ECS インスタンスのリバランス」をご参照ください。