8
3

More than 3 years have passed since last update.

【AWS ECS】タスク実行時のキャパシティープロバイダーを設定する【2019/01】

Last updated at Posted at 2020-01-28

困ったこと

ECSのタスクを実行しようとしたらこんなエラーが出た。
スクリーンショット 2020-01-26 18.08.13.png

選択したクラスターのキャパシティープロバイダー戦略に、クラスターキャパシティープロバイダーが含まれていません。

なんのこっちゃ。。。

今回はいろいろ試行錯誤して発見した解決法をご紹介します。

解決法

Auto Scaling でインスタンスを保護する

クラスターの設定にキャパシティープロバイダーというタグがあるので作成ボタンを押します。
スクリーンショット 2020-01-26 18.09.07.png

ただしいきなり作成しようとすると、下記のように怒られます。
エラーメッセージを読むとこんなことが書かれています。

キャパシティプロバイダーの終了保護設定が無効です。キャパシティプロバイダーの終了保護を有効にするには、Auto Scaling グループに有効なスケールからのインスタンス保護が必要です。

スクリーンショット 2020-01-26 18.09.42.png

Auto Scaling グループというものの設定を変えれば良さそうですね。
上の矢印のリンクからAuto Scaling グループのページに飛べるので移動しましょう。

スクリーンショット 2020-01-26 18.11.04.png
上記のページに行くとクラスター作成時に自動作成されたAuto Scaling グループがあるので、操作編集を押して下記のようにインスタンスの保護を設定して保存します。
スクリーンショット 2020-01-26 18.10.40.png

ただし、なぜかこれだけだとダメみたいで、追加で設定が必要です。
矢印のところから新しいコンソール画面に飛びます。
スクリーンショット 2020-01-26 18.11.04.png

下の画面に飛びますのでInstance managementタグから先程と同じAuto Scaling グループを選択肢、アクションからスケールイン保護を設定を選択します。
(画像では文字がグレーアウトされていますが、これはすでに設定されている状態だからです。まだこの設定をしていなければ黒くなっているはずです。)
スクリーンショット 2020-01-26 18.13.29.png

クラスターからキャパシティープロバイダーを作成する

先程のキャパシティープロバイダー作成画面に行きましょう。今度は以下のエラーは表示されないはずです。
スクリーンショット 2020-01-26 18.09.42.png
次にクラスター最初の画面に戻って右上のクラスターの更新ボタンから、今作成したキャパシティープロバイダーを選択して更新します。
スクリーンショット 2020-01-26 18.15.12.png
↓↓↓↓↓
スクリーンショット 2020-01-26 18.15.25.png

タスクを実行する

一番最初のところに戻ってタスクを実行しましょう!
今度は正常に作成されるはずです。
スクリーンショット 2020-01-26 18.16.10.png

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3