262-AWS SAP AWS 「理論・実践・一問道場」リソースの効率化コンテナ技術

 

理論


アプリをコンテナ単位でデプロイするとは?

  1. コンテナとは
    1. 各アプリケーションを独立したコンテナ(Dockerなど)にパッケージ化します。このコンテナにはアプリケーションのコード、ライブラリ、依存関係が含まれます。
  1. Amazon ECSの役割
    1. Amazon ECS (Elastic Container Service) は、これらのコンテナを管理し、必要な数だけデプロイしたり、スケーリングを行ったりするサービスです。
  1. ECSタスク単位でアプリをデプロイ
    1. 各アプリケーションを「ECSタスク」という単位でデプロイします。
      • 1つのアプリケーション = 1つのECSタスク
      • 各タスクはメモリやCPUの使用量に応じてスケール可能。

この方法のメリット

  • リソースの効率化
    • アプリの利用状況に応じてスケールするため、無駄なリソース消費を抑えられます。
  • 独立性
    • 各アプリケーションが独立して動作するため、障害が他のアプリに影響を及ぼしません。
  • 柔軟性
    • アプリごとに異なる依存関係を持つ場合でも、コンテナ単位で管理可能。

まとめ

選択肢Bの「アプリをコンテナ単位でデプロイ」は、20個のアプリケーションを効率的に管理し、コストを最小限に抑えるための最適な方法です。Amazon ECSを利用することで、必要に応じたスケーリングやリソースの最適化が容易になります。

実践

一問道場

質問 #262
トピック 1
ある企業が、AWSに移行して、頻繁には使用されないがビジネスにとって重要な20のアプリケーションに関連するコストを管理したいと考えています。これらのアプリケーションは、JavaとNode.jsが混在しており、異なるインスタンスクラスターに分散しています。企業はコストを最小限に抑えながら、単一の展開方法を使用して標準化を図りたいと考えています。
ほとんどのアプリケーションは月末処理の一部であり、並行ユーザーは少ないものの、時々他のタイミングでも実行されます。アプリケーションの平均メモリ使用量は1GB未満ですが、ピーク時には2.5GBを使用するものもあります。
最も重要なアプリケーションは、複数のデータソースにアクセスし、数時間にわたって実行されるJavaで書かれた請求書レポートです。
最もコスト効果の高い解決策はどれでしょうか?
A. 各アプリケーションごとにAWS Lambda関数を個別にデプロイし、AWS CloudTrailログAmazon CloudWatchアラームを使用して重要なジョブの完了を確認します。
B. メモリ使用率が75%に設定されたAmazon EC2Amazon ECSコンテナをデプロイし、ECSタスクスケーリングを使用して各アプリケーションを移行します。サービスとホストをAmazon CloudWatchで監視します。
C. 各アプリケーションにAWS Elastic Beanstalkをデプロイし、Auto Scalingを使用してリクエストに必要なリソースを確保します。各Elastic Beanstalkの展開をCloudWatchアラームで監視します。
D. 新しいAmazon EC2インスタンスクラスターをデプロイし、すべてのアプリケーションを共存させ、EC2 Auto Scalingとアプリケーションロードバランサーを使用して、インスタンスメモリ使用率に基づいてクラスターサイズをスケールします。Auto ScalingグループのGroupMaxSizeパラメーターに相当する3年のReserved Instance予約を購入します。

解説

この問題のポイントは、コスト効率とアプリケーションの特性(低頻度の利用、変動するメモリ使用量)を考慮して、最適なAWSのソリューションを選ぶことです。

選択肢の評価

  1. A. AWS Lambda
      • サーバーレスでコストは低いが、長時間実行メモリが多く必要なアプリケーションには適さない。
      • Javaで書かれた請求書レポートがあるため、非適切
  1. B. Amazon ECS on EC2
      • ECSコンテナを使用し、Auto Scalingで動的にリソースを割り当てられる
      • メモリ使用量に基づくスケーリングが可能で、コスト効率が高い
      • 最適な選択肢
  1. C. AWS Elastic Beanstalk
      • 各アプリケーションに個別にElastic Beanstalkを使うと、運用が複雑になり、コストが高くなる可能性がある。
  1. D. EC2インスタンスクラスター
      • 全アプリケーションをインスタンスで共存させる方法。
      • 固定リソースの購入(Reserved Instances)によりコストを抑えられるが、使用頻度が低いためリソースが無駄になりやすい。

解答

B. Amazon ECS on EC2
ECSのコンテナ化による柔軟性とリソース最適化が、コスト効率を最も高める方法です。
263-AWS SAP AWS 「理論・実践・一問道場」EMRクラスター260-AWS SAP AWS 「理論・実践・一問道場」CORSエラー
Loading...
minami
minami
みなみの成長 🐝
Announcement

🎉 ブログへようこそ 🎉

名前: みなみ一人会社
性別:
国籍: China 🇨🇳
政治スタンス: 民主主義支持者
完全独学で基本情報技術者をはじめ、32個の資格を仕事をしながら取得。
現在はIT会社で技術担当として働きながら、ブログ執筆や学習支援にも取り組んでいます。
独学で合格できる学習法や勉強法、試験対策を発信中!

📚 発信内容

  • 💻 IT・システム開発
  • 🏠 不動産 × 宅建士
  • 🎓 MBA 学習記録