AWS Fargate利用のススメ

アプリケーションを自社開発されている企業は多数おられると思います。
アプリケーション開発のスピードを上げたいと思われていても以下のような課題があり、なかなか改善できない場合があります。

  • アプリケーションの肥大化による、テスト工程の複雑化
    改修機能以外に影響がでていないかの確認
  • 機能追加による実行基盤リソース影響がないか
  • 開発環境が複数あり、デプロイ可能なタイミングが限られる
    ローカル開発環境を同じアプリケーションでテスト可能

こうした課題は既存アプリケーションをコンテナ化することで解決できる場合があります。

  • 実行基盤の分離
    コンテナにはOSイメージが存在しないため、アプリケーションに必要なリソースのみを利用
  • 環境を選ばない
    アプリケーションに必要な内容をイメージ化することにより、異なるOSやHWに簡単に導入が可能
  • 開発性の向上
    開発、テスト、本番反映のサイクルを短縮するためにDevOpsの取り組みを選択できる

AWS環境でのコンテナ実装

AWSを利用してコンテナ化したアプリケーションを稼働させる場合、AWS Fargateが選択肢にあがります。

AWS Fargateは、Amazon Elastic Container Service (ECS) と Amazon Elastic Kubernetes Service (EKS) の両方で動作する、コンテナ向けサーバーレスコンピューティングエンジンです。

Fargateではアプリケーションが実行するリソースを自由に割り当てることが可能であり、スケーリングも容易に変更が可能です。
料金は実行に必要なリソース分のみに支払い、アプリケーション実行環境以外の追加費用は発生しません。
また、AWSマネージドサービスとなるため煩わしいOSシステムのアップデートやセキュリティパッチはAWS側で管理されたVerを適用するのみで対応可能です。

実行環境の運用についてはFargate利用により、考慮すべきことが大幅に削減できます。
そのため、アプリケーションの開発者はアプリケーション設計、開発に集中することが可能となります。

以上のようにAWS上でコンテナアプリケーションを動作させることにより、アプリケーション開発スピードを向上させることが可能です。
導入にあたり基盤の刷新が必要となったり、開発フローの見直しが必要などの問題を解決していくことが重要になります。
一度ご検討してみてはいかがでしょうか。

AWSから提供されているチュートリアルを利用して試してみる場合

AWS公式チュートリアルからFargateセットアップとコンテナアプリケーションデプロイ
AWS公式チュートリアルはこちらから

ドキュメントにて確認を行いたい場合

AWS公式ドキュメントから作成~デプロイまでの簡単なご説明

  • Fargateクラスタの作成
    実際にアプリケーションを動かすタスクと呼ばれる単位を管理するクラスタの設定
    AWS公式ドキュメントはこちらから
  • Fargateタスクの設定
    実行CPU,メモリの設定、ネットワーク設定、AWS環境上の権限設定など環境設定の根幹となる部分
    AWS公式ドキュメントはこちらから
  • サービスの設定
    タスク定義の呼び出し、デプロイ方法、LBとの紐づけなどタスク定義と同様に重要な設定
    AWS公式ドキュメントはこちらから


執筆者:
ソリューション事業本部 インフラ事業部
クラウドソリューション部
安倍 大平
2021年3月31日

関連リンク

AWSに関するお問い合わせはこちら

AWSの導入や運用の委託をご検討の方は、お気軽にお問い合わせください。

メールで問い合わせる
0120-593-111(平日9:00~17:00まで)

導入支援サービス

AWS環境を充実させるサービスをご用意。

詳しく見る