ビデオ: Amazon EC2 Container Service のご紹介(日本語字幕) 2024
数年前、アプリケーションに使用するインスタンスを選択するのは、簡単な事件。 Amazon Web Services(AWS)は、主に線形に変化するいくつかのインスタンスタイプを提供しました。つまり、より多くの処理能力が必要な場合は、より多くのECUを含むインスタンスの種類を選択し、大量のメモリとストレージ(クックウォーク)が提供されています。
Amazonが特定の種類の機能を最適化するために設計された複数のインスタンスのファミリを開始したため、使用するインスタンスの種類を決定するのがはるかに難しくなりました。
<! - 1 - >たとえば、アプリケーションがメモリ集約型である場合、特定の分析アプリケーションがある場合はどうなりますか?従来は、標準インスタンスタイプのファミリからインスタンスを使用する必要がありました。アプリケーションの処理能力があまり必要ない場合でも、多数のECUを搭載した大量のメモリインスタンスを使用する必要がありました。それはそうだった。
イメージタイプは、EC2コインの片側だけです。 AWSで実行できる仮想マシンのタイプであるインスタンスタイプも考慮する必要があります。
<! - 処理能力:各インスタンスには、特定の数の
-
EC2 計算ユニット があります。 (ECU)は、ベンチマークされた処理能力(1.0〜1.2GHzの2007年のOpteronまたは2007年のXeonプロセッサのCPU容量に相当)です。たとえば、AWSの小規模なインスタンスには、1 EC2計算ユニット、つまり1 ECUがあります。 <! - 3 - > メモリ:
すべてのインスタンスには、ギガバイト単位で指定された量のメモリが含まれています。小さなインスタンスには、1.7GBのメモリがあります。 -
ストレージ: すべてのインスタンスに一定量のディスクストレージがあります。小さなインスタンスには170GBのディスクストレージがあります。インスタンスに応じて、インスタンスに関連付けられたディスクストレージの一部は、フォーマットされていない形式で提供されることがあります。使用する前に、インスタンスのオペレーティングシステムで使用可能なファイルシステムでフォーマットする必要があります。
-
ネットワーク接続: 各インスタンスには、他のデバイスやサービスと通信するために使用する1つの仮想NIC(Network Interface Card)が付属しています。すべてのインスタンスには、AWS内でのみ使用される1つのプライベートアドレスと、インスタンスへのインターネットアクセスに使用される1つのパブリックアドレスという2つのIPアドレスが与えられます。
すべてのインスタンスタイプでNICが1つしか取得されません。 AWS仮想プライベートクラウド(VPC)内のインスタンスは、複数のNICを持つことができます。
-
明らかに、一方では、これは正のジレンマです。これは、アプリケーションの使用プロファイルに適した1つのファミリが見つかる可能性があるためです。一方で(他の手は 常に
あります)、あなたのアプリケーションに最も適しているインスタンスファミリを決定するにはデューデリジェンスを使用する必要があります(アプリケーションの動作特性を詳細に理解する必要があります)。
EC2のドキュメントでは、AmazonはEC2インスタンス(たとえばHigh-CPUなど)を ファミリ、 、およびインスタンスのサイズが異なる(M1、Mはメディアを表す) 、
種類として。 経験上、AWSのドキュメントから タイプの (「高CPUタイプのインスタンスです。たとえば、AWS従業員を含む)ほぼすべての人が
ファミリ を参照しています)と、 size (たとえば「それはM1 Large Sizeのインスタンスです」)としてAWSドキュメントから 型 に変換されます。このディスカッションでは、ほぼすべての人が議論しているように聞こえるため、より論理的な理由から、より一般的なアプローチを使用しています。 それで、インスタンスの種類の記述にジャンプします: Micro: 非常に小さく、 Microインスタンスタイプは短期間2 ECUにバーストすることができますが、CPUとメモリの両方に限られた量を提供します。スループットの低いアプリケーションやトラフィックの少ないWebサイトには、このタイプを使用します。 Microタイプは、AWSフリー・ユース・ティアの一部としても利用でき、学習や実験に役立ちます。
標準:
-
「平均」タイプであり、最も広く使用されています。主流のアプリケーションに適したCU、メモリ、ディスクのバランスを提供します。 高いCPU:
-
メモリではなくCUが高いため、処理量の多いアプリケーションに適しています。数値処理アプリケーションは、高CPUインスタンスの標準的な使用例です。 高メモリ:
-
CPUではなくメモリをバンプします。このタイプは、データベースアプリケーション、分析アプリケーション、およびメモリキャッシュに依存するアプリケーションに最適です。 memcachedのようなキャッシュ層製品を実行する場合、このインスタンスのタイプは良い選択です。 高I / O:
-
高スループット(入力+出力 - I / O)を提供し、多くのデータを移動するアプリケーションに適しています。これは、AWSのDynamoDBサービスを使用するのではなく、CassandraやMongoDBのような独自のKey-Valueストレージサービスを実行するのに適しています。高I / Oインスタンスは高スループット接続(10 Gbps)を持ち、ソリッドステートドライブを使用して高いディスク性能を提供します。 クラスタコンピューティング:
-
高性能ネットワーキング(10Gbps)とともに多数のECUを提供します。このインスタンスタイプは、高性能コンピューティングタスク(油田地震解析などの特殊なナンバークランチングのための非常に大規模なアプリケーション)に適しており、専用のハードウェア上で実行されます。より良いネットワークパフォーマンスのために密接に接続されたマシンとして。 クラスタGPU:
-
Cluster Computeインスタンスに似ていますが、特定のタイプのアプリケーションに適したグラフィカルな処理ユニット(ゲーマーならPCのグラフィックスカード内のプロセッサを考えてください)高性能コンピューティング(HPC)ネットワーク分析の特定の変種を含む。クラスタGPUインスタンスは、Cluster Computeインスタンスと同様に動作しますが、これらのインスタンスが実行されるサーバー内のCPUチップは異なります。