【速報】低コストでプロビジョニング可能!新しいEBSボリュームのgp3が発表されました!#reinvent

新しいEBSボリュームのgp3は、低価格でベースラインパフォーマンスが大きく上がってます!
2020.12.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

2020/12/4更新
ブートボリュームでgp3が使用可能になりましたので記事を更新しました。 詳細は以下のブログを参照ください。
【アップデート】「GP3」EC2のブートボリュームとして利用可能になりました!#reinvent

オンライン開催となりました2020年のre:Inventが遂に始まりました!

初日のKey Noteにて新しいEBSボリューム gp3 が発表されましたしたので、紹介します。

Introducing new Amazon EBS general purpose volumes, gp3

gp2との比較

従来のgp2ボリュームとの比較です。

項目 gp2 gp3
耐久性 99.9% 99.9%
IOPS 100 IOPS ~ 16,000 IOPS 3,000 IOPS ~ 16,000 IOPS
スループット 〜 250 MiB/秒 125 MiB/秒 〜 1,000 MiB/秒
ストレージ料金 (月あたり、1GBあたり、東京リージョン) $0.12 $0.096
IOPS料金(月あたり、1GBあたり、東京リージョン) - 3,000 IOPSまで無料$0.006/IOPS(3,000IOPS超える場合)
スループット料金(月あたり、1GBあたり、東京リージョン) - 125 MB/秒まで無料MB/秒あたり$0.048(125 MB/秒を超える場合)

耐久性

耐久性はgp2と同じ 99.9% になります。

IOPS、スループット

gp2はボリュームサイズによってIOPSが割り当てられ、ベースラインパフォーマンスで100IOPSが保証されておりました。
gp3は3,000IOPSがベースラインとして保証され、さらにそれ以上のIOPSが求められる場合は追加料金を払うことで最大16,000IOPSまで拡張できます。 また、スループットは125MB/秒がベースラインとして保証され、追加料金で1,000MB/秒までスケールアップできます。 従来ようにパフォーマンスを上げるためにストレージ容量を増やすことが不要になり、個別にパフォーマンスを上げられます。

料金

gp3のストレージ料金は、gp2に比べて20%安くなっています。 ベースライン以上のスループットとIOPSが求められる場合、追加で支払います。

対応リージョン

すべてのリージョンで利用することができます。

注意事項

現時点(2020/12/2)で、ブートボリュームでgp3はサポートされておりません。 そのため、ブートボリュームにgp2、追加ボリュームにgp3のように使うことになります。

2020/12/4更新
ブートボリュームでgp3を使用できるようになっております。 ただし、ブートボリュームがgp3の場合、AMIの作成に失敗しますため、注意ください。

2020/12/7更新 ブートボリュームがgp3のAMIを取得できるようになり、注意点なくご利用いただけます。

やってみた

gp3ボリュームをアタッチしたEC2を起動し、マウントして使えるようにするところまでやってみます。
EC2の作成画面でgp3ボリュームを追加します。IOPSとスループットを指定できます。ここでは無料枠で最大パフォーマンスとなる3,000IOPSと125MiB/秒を設定しています。

作成したEC2に接続し、gp3ボリュームを使えるようにします。
gp3がマッピングされておりますが、フォーマットとマウントがされておりません。

$ lsblk
NAME          MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme1n1       259:0    0  20G  0 disk
nvme0n1       259:1    0   8G  0 disk
├─nvme0n1p1   259:2    0   8G  0 part /
└─nvme0n1p128 259:3    0   1M  0 part

$ df -hT
ファイルシス   タイプ   サイズ  使用  残り 使用% マウント位置
devtmpfs       devtmpfs   968M     0  968M    0% /dev
tmpfs          tmpfs      978M     0  978M    0% /dev/shm
tmpfs          tmpfs      978M  392K  978M    1% /run
tmpfs          tmpfs      978M     0  978M    0% /sys/fs/cgroup
/dev/nvme0n1p1 xfs        8.0G  1.4G  6.7G   17% /
tmpfs          tmpfs      196M     0  196M    0% /run/user/1000

ファイルシステムを作成し、ディレクトリにマウントします。

$ sudo mkfs -t xfs /dev/nvme1n1
meta-data=/dev/nvme1n1           isize=512    agcount=4, agsize=1310720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=0
data     =                       bsize=4096   blocks=5242880, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

$ sudo mkdir /data

$ sudo mount /dev/nvme1n1 /data

gp3ボリュームを使えるようになりました!

$ df -Th
ファイルシス   タイプ   サイズ  使用  残り 使用% マウント位置
devtmpfs       devtmpfs   968M     0  968M    0% /dev
tmpfs          tmpfs      978M     0  978M    0% /dev/shm
tmpfs          tmpfs      978M  392K  978M    1% /run
tmpfs          tmpfs      978M     0  978M    0% /sys/fs/cgroup
/dev/nvme0n1p1 xfs        8.0G  1.4G  6.7G   17% /
tmpfs          tmpfs      196M     0  196M    0% /run/user/1000
/dev/nvme1n1   xfs         20G   53M   20G    1% /data

gp2からの移行

通常のEBSボリュームタイプの変更と同じように変更できます。

さいごに

さっそくre:Invent初日から多くのAWSユーザーにとって嬉しいアップデートがきました!
新しいgp3ボリュームは、従来のgp2ボリュームに比べて、低価格でベースパフォーマンスが上がっております。 また、追加料金を支払うことで個別にスループットとIOPSを拡張できますので、アプリケーション要件に合わせて使用することができます。 ベースラインパフォーマンスは大幅に上がっているので、これまでのように不要なボリューム追加やプロビジョンドIOPSを使わなくて済むケースが増えると思います。

参考