こんばんは。Renです。今日はFargateの続きのお話としてEC2からFargateに移行してみました。
EC2からFargateに移行するとどう変わる?
移行するメリット
・OSやミドルウェアの構築が必要ない
・オートスケーリング→コスト最適化
・インスタンスタイプ、クラスター管理が不要である
・障害時の自動復旧
・デプロイ時間の短縮
上記のようなメリットがあげられます。EC2を利用していたら手動で設定しなければならなかった部分も、Fargateを使うことにより自動化でき、コスト削減やパフォーマンス向上につながります。
移行のデメリット
・CPCの選択が不可能
・sshやdocker execが使えない
・設計や運用が異なることから技術のキャッチアップが必要
・パブリックIP の固定割り当てが出来ない
・カーネルパラメータ制限
移行を試してみた
①タスク定義の変更
・現在EC2で実行されているタスクをFargateにします。

②「タスク定義」→「新しいタスク定義の作成」をクリックします。

※主な変更点は以下です。
・ネットワークモード
AWS VPCを選ぶ
・EC2→Fargate
・タスクサイズ
タスクメモリ 0.5〜30GB
vCPU 0.25〜4
・コンテナの定義
③環境をAWS Fargateに設定して作成します。

④「スケジュールされたタスク」→「更新」→起動タイプを「Fargate」に変更します。


まとめ
今回は、EC2からFargateへの移行を行ってみました。EC2との違いは、スペック定義、ネットワークモード、タスクからのデータボリュームが主な違いであると思います。違いを理解しながら移行を進めていくことが大切であると感じたので、移行の際は参考にしてみてください。
