コンテナ管理サービス「Amazon ECS」とは?実際に使用してみた

NTT東日本では、AWS導入支援・設定代行を行っております。こちらよりお気軽にご相談ください。
Amazon ECS(以下ECSとします。)はDockerコンテナを簡単に実行、停止、管理できるサービスです。
ECSを利用することで、アプリケーションを簡単に実行することが可能となります。
当コラムではECSの簡単な説明と、実際の実践例を紹介します。
こちらのコラム「スケーラブルで高速なコンテナ管理サービス「Amazon ECS」の主な機能と使い方」ではECSの主な機能、メリット、料金等を紹介しています。是非ご確認ください。
ECSとは?
ECSとはDockerコンテナ(※)サービスです。
ECSを使用すると、クラスターインフラストラクチャのインストール、運用、スケールから解放されます。さらに、APIを使用することで、コンテナ対応アプリケーションの起動と終了、クラスターの完了状態のクエリ、セキュリティグループ、Elastic Load Balancing、Elastic Block Store、IAMロールなどへのアクセスを実行することができます。
Dockerコンテナとは?
コンテナ技術の一つでありデファクトスタンダードとなっています。
Docker社が開発しオープンソースソフトウェアとして公開されています。
アプリケーションの動作に必要な環境を1つのイメージにまとめ、そのイメージを使用し、さまざまな環境でアプリケーション実行環境を構築・運用できます。
NTT東日本では、AWS導入支援・設定代行を行っております。こちらよりお気軽にご相談ください。
コンテナの概要・メリット
アプリケーション本体・ライブラリ・設定ファイル等をまとめたコンテナという仮想環境を作成し、コンテナエンジン上で動作するコンテナ技術です。
コンテナの仕組みは以下の図の通りです。

ホストOS上にコンテナのDockerなどの管理ソフトウェアがあります。
管理ソフトウェアはコンテナエンジンと呼ばれます。
コンテナエンジン上で各コンテナが動作する形となっています。
ひとつのOS上にコンテナは複数稼働することが可能であり、コンテナ毎にアプリケーションを実行できることから利用するユーザやサービスの観点からコンテナは独立した個別のサーバーのように使用できます。
コンテナのメリット
コンテナのメリットは以下の通りです。
高速な動作かつ軽量
必要最小限のリソースのみ使用するため、負荷が少なく高速な処理が可能です。
またコマンドを使用し、コンテナ環境の作成や破棄を行えます。
アプリケーションのパッケージ化
コンテナはアプリケーションを実行するためのリソースをパッケージ化が可能であり、実行する場所はベアメタルサーバー、仮想サーバー、パブリッククラウドのインスタンス上などに簡単にコピー可能なため場所を問わず迅速にアプリケーションを起動できます。
実践例
今回はサーバーレスのFargate起動タイプモデルを利用しnginxのコンテナを作成します。
AWSマネジメントコンソールのすべてのサービスからコンテナ「Elastic Container Service」をクリックします。

左側のメニュー欄の「クラスター」をクリックします。

ECS クラスターの作成手順として「クラスターの作成」と「今すぐ始める」があります。
今回はnginxのコンテナイメージが用意されている「今すぐ始める」をクリックします。

ステップ1ではコンテナとタスクの設定を行えます。
コンテナ定義ではコンテナのイメージ「nginx」を選択します。

ステップ1コンテナとタスクのページ下部のタスクの定義では編集せずデフォルトで使用するため「次」のボタンをクリックします。

ステップ2ではセキュリティグループの設定やロードバランサーの設定等を行います。
今回はnginxの動作確認が目的のため、デフォルトのセキュリティグループは自動的に新規作成、ロードバランサーはなしとします。「次」へのボタンをクリックします。

ステップ3ではクラスターの設定を行います。今回は変更せずデフォルトのまま作成します。
「次」へのボタンをクリックします。

ステップ4では作成するクラスターの設定確認となります。
設定が正しいことを確認し、「作成」ボタンをクリックします。

以下の起動ステータス画面に切り替わります。
説明に「これには最大で10分かかる場合があります。」と記載されていますが今回は1~2分で完了しました。

作成したクラスター「default」でnginxコンテナを確認します。
「タスク」タブをクリックします。

タスク名をクリックします。

nginxへアクセスするため、「詳細」タブのネットワークに記載されているパブリックIPをコピーします。

ブラウザのURL欄にパブリックIPをペーストしアクセスします。

以下の画面の通り「Welcome to nginx!」と表示されnginxが正常に動作していることが確認できました。

おわりに
今回nginxを動作させたようにECSではコンテナを使用して、アプリケーションを簡単に実行することができます。コスト最適化の環境のもとでコンテナに関して幅広いスケーリングとインフラストラクチャー管理ができ、起動タイプモデルの選択によりサーバーレスで使用可能となりますので、構築や運用の負荷を削減できます。
RECOMMEND
その他のコラム
面倒でお困りのあなたへ
クラウドのご相談できます!
オンライン相談窓口
NTT東日本なら貴社のクラウド導入設計から
ネットワーク環境構築・セキュリティ・運用まで
”ワンストップ支援”が可能です!
NTT東日本が選ばれる5つの理由
- クラウド導入を
0からワンストップでサポート可能! - 全体最適におけるコスト効率・業務効率の改善を
中立的にご提案 - クラウド環境に問題がないか、
第3者目線でチェック
してもらいたい - 安心の24時間・365日の対応・保守
- NTT東日本が保有する豊富なサービスの組み合わせで
”課題解決”と”コスト軽減”を両立
特に以下に当てはまる方はお気軽に
ご相談ください。
- さまざまな種類やクラウド提供事業者があってどれが自社に適切かわからない
- オンプレミスのままがよいのか、クラウド移行すべきなのか、迷っている
- オンプレミスとクラウド移行した際のコスト比較を行いたい
- AWSとAzure、どちらのクラウドが自社に適切かわからない
- クラウド環境に問題がないか、第3者目線でチェックしてもらいたい
- クラウド利用中、ネットワークの速度が遅くて業務に支障がでている
クラウドを熟知するプロが、クラウド導入におけるお客さまのLAN 環境や接続ネットワーク、
クラウドサービスまでトータルにお客さまのお悩みや課題の解決をサポートします。
相談無料!プロが中立的にアドバイスいたします
クラウド・AWS・Azureでお困りの方はお気軽にご相談ください。





