AWS EC2 Container Serviceにクラスターがあります。それをセットアップしたとき、t2.microインスタンスを使用しました。それらは開発に十分だったからです。次に、m4.largeなどのより強力なインスタンスを使用したいと思います。
インスタンスタイプのみを変更できるかどうかを知りたいので、クラスター全体を再作成する必要はありません。これを行う方法が見つかりませんでした。
はい、これは可能です。
クラスター内のインスタンスタイプは、起動設定内の「インスタンスタイプ」設定によって決定されます。クラスターを再作成せずにインスタンスタイプを更新するには:
また、異なる起動設定にリンクされた複数のAuto Scalingグループを作成することにより、複数インスタンスタイプを単一クラスターに追加できます。ただし、コンソール内でAuto Scalingグループを簡単にコピーすることはできません。
はい、CloudFormationでこれを実現できます。
Update Stack
をクリックしますcurrent template
、Next
を使用しますNext
、Next
、Update
2*n
インスタンスにアップスケールしますn
新しいインスタンスを待ちますn
にダウンスケールしますこれは、ダウンタイムなしで実行する方法です。
これは、ECSインスタンスのCloudFormationスタックでEcsInstanceTypeを変更することで実現できます。自動スケーリンググループへの手動での変更は、次の「ECSインスタンスのスケーリング」操作によって上書きされます。
クラスターのインスタンスタイプを更新するために行った正確な手順は次のとおりです。
クラスターサービスに移動し、タスク数を0に更新します
EC2->起動構成->アクションドロップダウン-> 起動構成のコピーに移動し、新しいインスタンスタイプを設定します
EC2-> Auto Scaling Groups-> Edit-> set Launch Configurationに新しく作成された起動設定に移動します
EC2-> Auto Scaling Groups-> Instances-> Detach instanceに移動します
EC2に移動->起動構成->古い起動構成を削除
クラスターサービスに移動し、タスク数を必要な数に更新します。
これで、タスクが開始されると、更新されたEC2インスタンスタイプで実行されます。
確かに、起動構成の使用について提案されているように、インスタンスタイプを変更する方法は複数あります。
ただし、複数の起動構成を使用して、コンテナインスタンススケーリングポリシーを持つECSクラスターにアタッチすることは困難です。
たとえば、起動構成を使用してt2.mediumタイプのインスタンスでクラスターを実行しており、ECSクラスターに自動スケーリングポリシーがアタッチされている場合、自動スケーリンググループのみで1以下しかシグナルを送信できません。
はい、ECSクラスターのインスタンスタイプを変更できます。 AWS GUIからECSクラスターを手動で作成したと思います。舞台裏では、VPC、インスタンスタイプ、サイズなどのAWSコンソール(ECS)からの入力に従って、awsクラウド形成テンプレートを作成します。同じ手順については、以下の手順に従ってください。
Amazon ECSでコンテナインスタンスタイプを変更するにはどうすればよいですか
コンテナインスタンスタイプを変更するには、次のいずれかのセクションの手順を完了します。
解像度
重要:次の手順は、基礎となる内部的に作成するリソースで作成されたECSクラスターにのみ適用されますAWS CloudFormationスタック。スタックの名前は、EC2ContainerService-yourClusterNameの形式です。これらの手順は、空のECSクラスターや、コンテナインスタンスをプロビジョニングするためのカスタマイズされたアプローチには適用されません。
AWS CloudFormationスタックのEcsInstanceTypeパラメーターの値を更新します。
1. AWS CloudFormationコンソールを開きます。
注:クラスター名はスタック名の最後に追加されます(たとえば、EC2ContainerService-yourClusterName)。
[アクション]を選択し、[スタックの更新]を選択します。
[現在のテンプレートを使用]を選択し、[次へ]を選択します。
EcsInstanceTypeには、コンテナインスタンスのインスタンスタイプに適した値を設定し、[次へ]を選択します。
[オプション]セクションをスキップし、[次へ]を選択して、[更新]を選択します。
クラスタ内の古いコンテナインスタンスを置き換えます:
AWS CloudFormationスタックを更新するには、前のセクションのステップ1〜4を完了します。
AsgMaxSizeには、現在のサイズの2倍のパラメーター値を入力します。注:たとえば、現在の値が2の場合、新しい値を4に設定します。これにより、インスタンスタイプを変更する際のダウンタイムを防ぐことができます。