質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

2回答

6272閲覧

AWS ECSのFargateとEC2の使い分けについて

pokerStars

総合スコア67

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2020/12/21 02:07

編集2020/12/21 03:47

ECSを使用する際、EC2ではなくFargateを使用することで、

1.インスタンスの管理が不要になる。
2.EC2の場合はリソースが余っていた場合も課金されていたが、本当に利用した分のみの課金となり、コスト削減へと繋がる。
3.スケールが容易

などの利点があげられるかと思うのですが、実際ECSを使用する際はFargateを使うのが主流なのでしょうか?

仮にFargateは使わずEC2を使用し、インスタンスを起動してECSのタスクを起動する方法を使う場合は、どのような条件の時にEC2 が選ばれるのでしょうか?

何卒よろしくお願い致します。

追記
・試験的な運用のように、コンテナ化されたアプリケーションを利用する時間が限定されている場合 Fargate
・コンテナ化されたアプリケーションを常時稼働させておく必要がある場合 EC2
とする料金体系が良いという情報は得ました。

参考記事
AWS FargateとECSの違いは?

AWS Fargate

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

少し実践的な話ですが、実行中のコンテナに対してウィルススキャンをかける場合は、EC2の方が適していると思います。
一応、ECRでイメージのスキャンは可能ですが、動作中のコンテナに対してスキャンをした場合はFargateよりもEC2を使用してそこにソフトをインストールすることが可能です。

後は、わけあって1コンテナ1アプリの原則が守れない場合、アプリケーションのログが取りにくいです。
Fargateの場合、コンテナ実行時に指定したコマンドの標準出力をログとして吐き出しますが、例えばWebServer + APServerが同コンテナで動いていた場合、何も工夫をしなければどちらか片方のログしか標準出力されないまたは両Serverを起動するシェルを起動するだけで何も標準出力がされないといった問題が起こります。(こちらは設計ミス感がありますが)
この場合、コンテナの中に吐き出されたログファイルを何らかの形で永続化する必要がありますが、EC2ならそのままホストOSにマウントができます。
Fargateの場合、EFSを立ち上げて連携させたり、CloudWatchにログを飛ばすようにサービスをコンテナに追加する必要があるので、このような場合だとEC2の方が使い勝手が良いと思います。

また、Fargateの場合、基本的にコンテナに直接アクセスができないので、問題発生時や何か検証をしたい場合には不便だと思います。
EC2の場合だと、EC2経由でコンテナにアクセスができたはずです。

投稿2022/02/08 04:15

YuuT

総合スコア673

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

この記事の下の方にFargateではできないことがまとめてあります。
ただし、EFSが使えるようになったり、Saving Plansによる料金削減などアップデートによって解消されたものもあるのでご注意を。
「それコンテナにする意味あんの?」迷える子羊に捧げるコンテナ環境徹底比較 #cmdevio2019

長期運用するならSaving Plansを使わないと少々高くつく可能性はあります。
Fargateが使えるならファーストチョイスはFargateでいいと自分も思います。

・試験的な運用のように、コンテナ化されたアプリケーションを利用する時間が限定されている場合 Fargate

・コンテナ化されたアプリケーションを常時稼働させておく必要がある場合 EC2

個人的にはどうせコンテナ使うなら後者もFargateでいいのでは、と思います。
ただ、前述の通りSaving Plansを使わない場合のコストが気になる場合はEC2を使うとかになりそうです。
ここはもう少しいろんな方の意見を聞きたいところでもありますね。

投稿2020/12/21 08:09

yu_1985

総合スコア7471

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pokerStars

2020/12/22 03:39

ご回答ありがとうございます。ご提供いただいた記事がとても参考になりました。 コンテナの理解も深まり、感謝いたします!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問