Amazon Aurora に Graviton 2 インスタンス t4g と x2g が追加されました

記事タイトルとURLをコピーする

営業部 佐竹です。
本日は Amazon Aurora の更新をお知らせする記事になります。

はじめに

以下の公式リリースの通り、 Amazon Aurora で新しいインスタンスが発表されました。しかも2つ同時にです。

aws.amazon.com

aws.amazon.com

これらは先行してリリースされた db.r6g に続くものとなります。db.r6g については以下のブログをご覧ください。

blog.serverworks.co.jp

以下でそれぞれの特徴をご説明します。

t4g インスタンス

f:id:swx-satake:20210916192632p:plain:w450
東京リージョンにおいて確認

t4g は ARM ベースの Graviton 2 プロセッサを搭載した最新世代のインスタンスで、バーストが可能となっている t3 の後継です。t4g は t3 インスタンスよりもコストパフォーマンスが高くなっています。

2020年9月頃に EC2 インスタンスでは t4g を提供開始していますが、EC2 では ARM アーキテクチャへの変更が必要であり、具体的にはAMI から再構築を行う必要があるなど、なかなか移行のハードルが高い状況です。

ですが、Aurora ではアーキテクチャの部分はマネージドサービスであるために AWS 側が吸収してくれるため、db.t3 から db.t4g に簡単に切り替えが可能となっているため、移行のハードルも低く、積極的に切り替えて行きたいですね。

利用料

以下の通り、東京リージョンにおけるバースト(t系)インスタンスの利用料の遷移をテーブルにまとめました。

DB.Instance Class vCPU Memory (GiB) 利用料/h コスト削減効果
db.t2.medium 1 4 0.125USD
db.t3.medium 2 4 0.125USD
db.t4g.medium 2 4 0.113USD -10.6%(-$0.012/h)

先にご紹介しました db.r6g と同様、オンデマンド利用料にて約10.6%のコスト削減が可能です。インスタンスクラスの変更だけでコストが下がるのは魅力的ですね。

注意事項

非本番ワークロード向け

バーストするインスタンスクラスは、開発環境やテスト用途等の「非本番ワークロード」を検証する目的での利用が推奨されており、「本番ワークロードには非推奨」とされている点に注意してください。

バージョン制限

db.t4g インスタンスクラスは利用の前提としてバージョンの制限があり、Aurora MySQL で 2.09.2以降もしくは 2.10.0以降、加えて Aurora PostgreSQL で 11.9以降もしくは 12.4以降、そして 13.3 のバージョンででサポートされています。ようは現時点で最新の Aurora バージョンをご利用頂く必要があります。インスタンスクラス変更時にはこの点にも注意してください。

db.t4g.small は未リリース

今回リリースされたインスタンスクラスは、「db.t4g.medium」及び「db.t4g.large」の2種類となっております。既存の db.t3 では「db.t3.small」が存在しますが「db.t4g.small」はリリースされておりません。このため「db.t3.small」をご利用中のお客様は t4g インスタンスでは切替先がまだない状況となります。

x2g インスタンス

f:id:swx-satake:20210916193731p:plain:w450
バージニアリージョンで確認

ARM ベースの Graviton 2 プロセッサを搭載した最新世代のインスタンスなのは同様です。 x2g は r6g よりもメモリを大量に消費する必要があるアプリケーション向けに最適化されています。

今まで Aurora には r ファミリーと t ファミリーのみが提供されていました。今回追加された x ファミリーは r ファミリーの「倍のメモリ比率」になります。

CPU に対するメモリ量の比率

現在 Aurora で選択可能なインスタンスクラスのそれぞれの CPU 対メモリ比率をまとめると以下の通りです。

代表的なインスタンスクラス vCPU Memory (GiB) CPU:メモリ
db.t4g.large 2 8 1:4
db.r6g.large 2 16 1:8
db.x2g.large 2 32 1:16

このように、最もメモリの比重が高いのが x2g になります。最大のサイズである db.x2g.16xlarge となると 1,024 GiB のメモリを保持するため、今まで 512 MBが最大であったことを考えることを大きな拡張になります。

余談ですが、EC2 インスタンスには現在「x2g」は存在しておらず、似たインスタンスとして「x2gd」が存在します。そのため、「x2g」というインスタンスクラスは現状 Aurora 専用として存在しています。

注意事項

東京リージョン未対応

残念ながら現時点では、東京リージョンで db.x2g はご利用頂けません。

関連して、EC2 インスタンスの x2gd も現在東京リージョンでご利用頂けません状態ですので、 db.x2g の東京リージョンへのリリースはもう少し先かもしれませんね。

バージョン制限

こちらも同様にバージョンに制限があります。Aurora MySQL では 2.09.2以降、2.10.0以降、そして Aurora PostgreSQL 11.9以降、12.4以降、および13.3 のバージョンでサポートされてるのは db.t4g と同様です。

本番環境のインスタンスクラスを変更する場合の注意事項

既存 Aurora DB インスタンスの変更にあたっては、本番アプリケーションのワークロードにどの程度影響があるのか、環境を複製するなどして予め十分にテストしてください。

インスタンスクラスの変更時に機能停止(再起動)が発生します。変更においては、再起動による本番環境への影響を加味する必要があります。

加えて購入済の Reserved DB インスタンス (RI) との兼ね合いにも留意が必要です。RDS の RI は「購入後の交換や変更」ができませんので、既存の RI が有効期限を迎えるタイミングで DB インスタンスクラスを変更することを推奨いたします。

Aurora のインスタンスクラスの変更において参考になるブログを以下にご紹介いたします。

blog.serverworks.co.jp

まとめ

f:id:swx-satake:20200922003617p:plain:w150

Amazon Aurora で Graviton2 インスタンスである t4g と x2g が同時に追加されました 。

db.t4g インスタンスでは「db.t4g.medium」及び「db.t4g.large」がリリースされており、 db.t3 からインスタンスクラスを変更することで 10.6% のコスト削減が可能です。東京リージョンでも既にご利用頂けます。ただし「db.t4g.small」が提供されていないため、「db.t3.small」をご利用されている場合は変更先がない状況となります。

db.x2g インスタンスはメモリが r ファミリーの倍のメモリを搭載しており、今まで以上にメモリに最適化されたインスタンスクラスとなりました。ただし、東京リージョンでは提供されていない状況です。

早く db.x2g インスタンスも東京リージョンで使える日が来て欲しいですね!

では、またお会いしましょう。

佐竹 陽一 (Yoichi Satake) エンジニアブログの記事一覧はコチラ

マネージドサービス部所属。AWS資格全冠。2010年1月からAWSを利用してきています。2021-2022 AWS Ambassadors/2023 Japan AWS Top Engineers/2020-2023 All Certifications Engineers。AWSのコスト削減、最適化を得意としています。