この記事は、入社1年目の新人エンジニアが実務でわからないことを理解して、アウトプットするためのものです。
今回はAWSのFargateというサービスについて実務で触れる機会があったので、私なりにまとめてみたいと思います。
それではやっていきましょう!
Fargateとは
まず、初めにそもそもFargate(ファーゲート)とは何ぞやについて説明します。
Fargateとは、AWS(Amazon Web Services)というAmazonが提供しているサーバーやネットワークなどをインターネット経由で貸してくれる数百種類あるサービスの中の1つになります。
Fargateと調べると、「AWSが提供するDockerコンテナ向けサーバーレスコンピューティング・エンジンのこと」のようです。
はい。全く意味不ですね。
簡単に解説します。
AWS Fargateは、AWSでコンテナを実行するEC2を自動管理するための仕組みのことです。
Fargateを利用することで、サーバーやクラスタの管理が必要ないコンテナ向けのサーバーレスコンピューティングなので管理の効率化を図ることができます。
従来だと、Amazon EC2などの仮想マシンに仮想サーバーを構築する必要がありましたが、Fargateはサーバーレスのため、EC2インスタンスやインスタンスの集合体であるクラスタを管理する必要がなくなり、管理を効率化することができます。
クラスタ管理とは、システム規模に応じたリソースの見積やインスタンスタイプの選定、インスタンスの制御等のことを指します。
コンテナとEC2については以下で説明します。
コンテナとは
アプリの動作環境を仮想的に構築する技術の1つです。
開発に必要なランタイム(プログラムを動かす時に必要な部品)やライブラリなどの依存関係や整合性をサーバーごとに構築・管理することは大変です。これらを解決するために利用されるのがコンテナで、開発環境や本番環境などにコンテナを使えば、同じ環境をすぐに構築でき、 アプリケーションを動作させることができます。
コンテナ環境ではOS周辺の環境は共通で利用することができ、アプリが使用するCPU、メモリなどはそれぞれにまとまったコンテナという単位として管理しています。
EC2とは
Amazon EC2とは( Amazon Elastic Compute Cloud)のことで、AWS上に仮想サーバーを構築して自由に利用できるのが特徴で、クラウド環境において様々な役割を担います。
これまでデータセンターで物理的なサーバーの構築を行なっていたのが、Web上から簡単に仮想サーバーを構築することができるので業務を効率化することができます。
Fargateのユースケースについて
AWS Fargateが使われる場面としては、アプリケーション開発において発生するインフラの構築や運用・管理を解決したい時に使います。少人数の企業ではインフラ担当者がいないことが多くありますが、多少の知識があれば使うことができるのでアプリケーション開発に専念することができます。
最後に
最後まで読んでいただきありがとうございます。
いかがだったでしょうか?
今後もわからなかったことを記事にまとめていこうと思うので、暖かい目で読んでくださると嬉しいです。
また、間違い等ありましたらコメント等で教えていただければ幸いです。
それでは本日はこの辺りで。
- 無料・簡単・片手でホームページを作成できる自社サービス Rakwi
- Web制作とアプリ開発を学べるオンラインプログラミング講座 Upstairs
- 開発,DX推進支援サービス スタートアッププラン