Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

汎用インスタンス

汎用インスタンスは、コンピューティング、メモリ、およびネットワーキングリソースをバランスよく備えており、さまざまなワークロードに使用できます。

A1 インスタンス

A1 インスタンスは、Arm エコシステムがサポートするスケールアウト型ワークロードに最適です。これらのインスタンスは、以下の用途に適しています。

  • ウェブサーバー

  • コンテナ化されたマイクロサービス

  • キャッシュフリート

  • 分散型データストア

  • Arm の命令セットが必要なアプリケーション

詳細については、「Amazon EC2 A1 インスタンス」を参照してください。

M5、M5a、および M5d インスタンス

これらのインスタンスは、クラウドインフラストラクチャの実現に最適で、コンピューティング、メモリ、およびネットワーキングリソースをバランスよく備えており、クラウドにデプロイされる広範なアプリケーションに使用されます。M5 インスタンスは、以下の用途に適しています。

  • ウェブサーバーとアプリケーションサーバー

  • 中小規模のデータベース

  • ゲームサーバー

  • キャッシュフリート

  • SAP、Microsoft SharePoint、クラスターコンピューティング、その他のエンタープライズアプリケーションを実行するバックエンドサーバー

m5.metal および m5d.metal インスタンスでは、プロセッサやメモリなどのホストサーバーの物理リソースにアプリケーションから直接アクセスすることができます。これらのインスタンスは、次の用途に適しています。

  • 仮想環境で利用できない、または完全にサポートされていない低レベルのハードウェア機能 (例: Intel VT) へのアクセスを必要とするワークロード

  • ライセンスやサポートを目的として非仮想化環境で実行する必要があるアプリケーション

詳細については、「Amazon EC2 M5 インスタンス」を参照してください。

T2 および T3 インスタンス

これらのインスタンスは、ベースラインレベルの CPU パフォーマンスを維持し、ワークロードの必要に応じてより高いレベルまでバーストすることもできます。無制限インスタンスは、必要なときに、任意の期間にわたって高い CPU パフォーマンスを保持できます。詳細については、「バースト可能パフォーマンスインスタンス」を参照してください。これらのインスタンスは、以下の用途に適しています。

  • ウェブサイトとウェブアプリケーション

  • コードリポジトリ

  • 開発、ビルド、テスト、およびステージング環境

  • マイクロサービス

詳細については、「Amazon EC2 T2 インスタンス」および「Amazon EC2 T3 インスタンス」を参照してください。

ハードウェア仕様

以下に示しているのは、汎用インスタンスのハードウェア仕様の要約です。

インスタンスタイプ デフォルト vCPU メモリ (GiB)
a1.medium 1 2
a1.large 2 4
a1.xlarge 4 8
a1.2xlarge 8 16
a1.4xlarge 16 32
m4.large 2 8
m4.xlarge 4 16
m4.2xlarge 8 32
m4.4xlarge 16 64
m4.10xlarge 40 160
m4.16xlarge 64 256
m5.large 2 8
m5.xlarge 4 16
m5.2xlarge 8 32
m5.4xlarge 16 64
m5.12xlarge 48 192
m5.24xlarge 96 384
m5.metal 96 384
m5a.large 2 8
m5a.xlarge 4 16
m5a.2xlarge 8 32
m5a.4xlarge 16 64
m5a.12xlarge 48 192
m5a.24xlarge 96 384
m5d.large 2 8
m5d.xlarge 4 16
m5d.2xlarge 8 32
m5d.4xlarge 16 64
m5d.12xlarge 48 192
m5d.24xlarge 96 384
m5d.metal 96 384
t2.nano 1 0.5
t2.micro 1 1
t2.small 1 2
t2.medium 2 4
t2.large 2 8
t2.xlarge 4 16
t2.2xlarge 8 32
t3.nano 2 0.5
t3.micro 2 1
t3.small 2 2
t3.medium 2 4
t3.large 2 8
t3.xlarge 4 16
t3.2xlarge 8 32

各 Amazon EC2 インスタンスタイプのハードウェア仕様については、「Amazon EC2 インスタンスタイプ」を参照してください。

CPU オプションの指定についての詳細は、「CPU オプションの最適化」を参照してください。

インスタンスのパフォーマンス

EBS 最適化インスタンスは、インスタンスからの Amazon EBS I/O とその他のネットワークトラフィックとの競合を排除することによって、EBS ボリュームの安定した高パフォーマンスを実現できます。一部の汎用インスタンスは、追加料金なしでデフォルトで EBS 最適化されています。詳細については、「Amazon EBS – 最適化インスタンス」を参照してください。

一部の汎用インスタンスタイプでは、Linux でプロセッサの C ステートと P ステートを制御できます。C ステートは非アクティブ時のコアのスリープレベルを制御し、P ステートは希望するコアからのパフォーマンス (CPU 周波数) を制御します。詳細については、「EC2 インスタンスタイプのプロセッサのステート制御」を参照してください。

ネットワークパフォーマンス

サポート対象のインスタンスタイプで、拡張されたネットワーキング機能を有効にすることができます。拡張ネットワーキングでは、パケット毎秒 (PPS) が非常に大きく、ネットワークのストレスが少なく、レイテンシーが低くなります。詳細については、「Linux の拡張ネットワーキング」を参照してください。

拡張されたネットワーキングのための Elastic Network Adapter (ENA) を使用するインスタンスタイプは、高いパケット/秒パフォーマンスと一貫して低いレイテンシーを同時に実現します。ほとんどのアプリケーションでは、高いレベルのネットワークパフォーマンスが一貫して必要なわけではありませんが、データの送受信時にアクセスする帯域幅を増やすことでメリットを得られます。ENA を使用し、「最大 10 Gbps」または「最大 25 Gbps」のネットワークパフォーマンスをサポートするインスタンスサイズでは、ネットワーク I/O クレジットメカニズムを使用して、平均帯域幅使用率に基づいてインスタンスにネットワーク帯域幅を割り当てます。これらのインスタンスでは、ネットワーク帯域幅がベースライン制限を下回るとクレジットを獲得し、これらのクレジットをネットワークデータ転送を実行するときに使用できます。

以下に示しているのは、拡張ネットワークをサポートする汎用インスタンスのネットワークパフォーマンスの要約です。

インスタンスタイプ ネットワークパフォーマンス 拡張ネットワーキング
t2.nanot2.microt2.smallt2.mediumt2.larget2.xlarget2.2xlarge 最大 1 Gbps
t3.nanot3.microt3.smallt3.mediumt3.larget3.xlarget3.2xlarge 最大 5 Gbps ENA

m4.large

Intel 82599 VF

m4.xlargem4.2xlargem4.4xlarge

Intel 82599 VF

a1.mediuma1.largea1.xlargea1.2xlargea1.4xlarge m5.largem5.xlargem5.2xlargem5.4xlargem5a.largem5a.xlargem5a.2xlargem5a.4xlargem5d.largem5d.xlargem5d.2xlargem5d.4xlarge

最大 10 Gbps

ENA

m4.10xlarge

10 Gbps

Intel 82599 VF

m5.12xlargem5a.12xlargem5d.12xlarge

10 Gbps

ENA

m5a.24xlarge

20 Gbps

ENA

m4.16xlargem5.24xlargem5.metalm5d.24xlargem5d.metal

25 Gbps

ENA

SSD I/O パフォーマンス

カーネルバージョン 4.4 以降の Linux AMI を使用し、インスタンスで利用可能なすべての SSD ベースのインスタンスストアボリュームを使用する場合は、以下の表に示されている IOPS (4,096 バイトブロックサイズ) のパフォーマンスを得ることができます (キューの深さの飽和度において)。それ以外の場合、IOPS パフォーマンスは低下します。

インスタンスサイズ 100% のランダム読み取り時 IOPS 書き込み IOPS

m5d.large *

30,000

15,000

m5d.xlarge *

59,000

29,000

m5d.2xlarge *

117,000

57,000

m5d.4xlarge *

234,000

114,000

m5d.12xlarge

700,000

340,000

m5d.24xlarge

1,400,000

680,000

m5d.metal

1,400,000

680,000

* これらのインスタンスの場合、最大で指定されたパフォーマンスを得ることができます。

インスタンスに SSD ベースのインスタンスストアボリュームを使用するほど、アーカイブできる書き込み IOPS の数は減少します。これは、SSD コントローラーが実行する必要がある追加の作業が原因です。SSD コントローラーは、利用可能な領域を見つけ、既存のデータを再書き込みし、未使用の領域を消去して、再書き込みができるようにします。このガベージコレクションというプロセスにより、SSD への内部的な書き込み増幅が発生し、ユーザーの書き込み操作に対する SSD 書き込み操作の割合として表示されます。書き込み操作が 4,096 バイトの倍数でないか、4,096 バイトの境界に整合していない場合、パフォーマンスの低下はさらに大きくなります。少量のバイト数または整合していないバイト数で書き込む場合、SSD コントローラーは周辺のデータを読み取り、その結果を新しい場所に保存する必要があります。このパターンにより、書き込み増幅が大幅に増え、レイテンシーが増加し、I/O パフォーマンスが大きく低下します。

SSD コントローラーは、複数の方法を利用すると、書き込み増幅の影響を減らすことができます。このような方法の 1 つには、SSD インスタンスストレージに領域を予約し、コントローラーが書き込み操作に利用できる領域をより効率的に管理できるようにすることです。これをオーバープロビジョニングと呼びます。インスタンスに提供された SSD ベースのインスタンスストアボリュームには、オーバープロビジョニングに対して予約された領域がありません。書き込み増幅を減らすには、ボリュームの 10% を未使用の状態のままにし、SSD コントローラーがこれをオーバープロビジョニングに使用できるようにすることをお勧めしますこれにより、使用できるストレージは減りますが、ディスクが総容量に近づいた場合でもパフォーマンスを向上させることができます。

TRIM をサポートするインスタンスストアボリュームの場合、TRIM コマンドを使用して、書き込んだデータが不要になったときはいつでも SSD コントローラーに通知することができます。これにより、より多くの空き領域がコントローラーに与えられ、その結果書き込み増幅が減り、パフォーマンスが向上します。詳細については、「インスタンスストアボリュームの TRIM のサポート」を参照してください。

インスタンスの機能

以下に示しているのは、汎用インスタンスの機能の要約です。

EBS のみ NVMe EBS インスタンスストア 配置グループ

A1

あり

あり

なし

あり

M4

あり

なし

なし

あり

M5

あり

あり

なし

あり

M5a

あり

あり

なし

あり

M5d

なし

あり

NVMe *

あり

T2

あり

なし

なし

なし

T3

あり

あり

なし

なし

* ルートデバイスボリュームは、Amazon EBS ボリュームにする必要があります。

詳細については、以下を参照してください。

リリースノート

  • M5、M5d、および T3 インスタンスは、3.1 GHz Intel Xeon Platinum 8000 シリーズプロセッサを搭載しています。

  • M5a インスタンスは、2.5 GHz AMD EPYC 7000 シリーズプロセッサを搭載しています。

  • A1 インスタンスは、64 ビット Arm アーキテクチャーベースの 2.3 GHz AWS Graviton プロセッサを搭載しています。

  • インスタンスタイプが M4、M5、M5a、M5d、t2.large 以上の場合、および t3.large 以上 の場合は、64 ビットの HVM AMI が必要です。これらのインスタンスはハイメモリであるため、そのキャパシティーを活用するには 64 ビットのオペレーティングシステムが必要です。HVM AMI は、ハイメモリインスタンスタイプの準仮想化 (PV) AMI よりも優れたパフォーマンスを提供します。さらに、拡張ネットワーキングを利用するには、HVM AMI を使用する必要があります。

  • A1 インスタンスには、次の要件があります。

    • NVMe ドライバーをインストールする必要があります。EBS ボリュームは NVMe ブロックデバイスとして公開されます。

    • Elastic Network Adapter (ENA) ドライバーをインストールしている必要があります。

    • 64 ビット Arm アーキテクチャー用の AMI を使用する必要があります。

    • ACPI テーブルのある UEFI によるブートをサポートし、PCI デバイスの ACPI ホットプラグをサポートする必要があります。

    以下の AMI はこれらの要件を満たしています。

    • Amazon Linux 2 (64 ビット Arm)

    • Ubuntu 16.04 以降 (64 ビット Arm)

    • Red Hat Enterprise Linux 7.6 以降 (64 ビット Arm)

  • M5、M5a、M5d、 および T3 インスタンスには、次の要件があります。

    以下の AMI はこれらの要件を満たしています。

  • A1、M5、M5a、M5d、 および T3 インスタンスは、ネットワークインターフェイス、EBS ボリューム、および NVMe インスタンスストアボリュームを含め、最大 28 のアタッチをサポートしています。インスタンスごとに 1 つ以上のネットワークインターフェイスのアタッチメントがあります。たとえば、EBS のみのインスタンスに追加のネットワークインターフェイスのアタッチがない場合は、そのインスタンスに 27 個の EBS ボリュームをアタッチできます。

  • ベアメタルインスタンスを起動すると、基盤となるサーバーが起動します。これには、すべてのハードウェアやファームウェアコンポーネントの確認が含まれます。つまり、インスタンスが実行状態になってからネットワーク経由で使用できるようになるまでに 20 分かかることがあります。

  • ベアメタルインスタンスから EBS ボリュームまたはセカンダリネットワークインターフェイスをアタッチまたはデタッチするには、PCIe のネイティブホットプラグサポートが必要です。Amazon Linux 2 および最新バージョンの Amazon Linux AMI は PCIe ネイティブホットプラグをサポートしていますが、以前のバージョンではサポートされていません。次の Linux カーネル設定オプションを有効にする必要があります。

    CONFIG_HOTPLUG_PCI_PCIE=y CONFIG_PCIEASPM=y
  • ベアメタルインスタンスでは、I/O ポートベースのシリアルデバイスではなく、PCI ベースのシリアルデバイスを使用しています。アップストリームの Linux カーネルと最新の Amazon Linux AMI は、このデバイスをサポートしています。また、ベアメタルインスタンスでは、システムが PCI ベースのシリアルデバイスを自動的に使用できるようにする ACPI SPCR テーブルも使用できます。最新の Windows AMI では、自動的に PCI ベースのシリアルデバイスが使用されます。

  • A1、M5、M5a、M5d、および T3 インスタンスには API リクエストによるクリーンシャットダウンをサポートするための system-logind または acpid がインストールされている必要があります。

  • リージョンで起動できるインスタンスの合計数には制限があります。また、一部のインスタンスタイプにはその他の制限もあります。詳細については、「Amazon EC2 で実行できるインスタンスの数はいくつですか?」を参照してください。制限の引き上げをリクエストするには、「Amazon EC2 インスタンス申請フォーム」を使用します。