【塩漬けダメ絶対】AWSのAurora＆RDSがDBエンジンの延長サポートを有償提供！

日本時間 2023/9/1(金)の深夜、AWSより以下のアップデートが発表されました！
土曜の朝からXで早速話題になっています。

ニュースリリース

https://aws.amazon.com/jp/about-aws/whats-new/2023/09/amazon-aurora-rds-extended-support-mysql-postgresql-databases/

ブログ

https://aws.amazon.com/jp/blogs/database/introducing-amazon-rds-extended-support-for-mysql-databases-on-amazon-aurora-and-amazon-rds/

※全体的にまだ日本語ドキュメントに反映されていない情報が多いので、リンク先にRDS Extended Supportに関する言及が見られない場合は言語設定をEnglishに切り替えて再確認することをお勧めします。


# 3行でまとめると？

- AWSはAuroraおよびRDSのDBエンジンの所定サポート終了後、最大3年の延長サポートを有償提供する
- 対象のDBエンジンはMySQL 5.7 & PostgreSQL 11および、それ以降の主要バージョン
- 2023年12月から延長サポートへのオプトインが可能。実際の課金開始はバージョン依存。最速でも2024年3月1日以降となる


# クラウドにおける「DBバージョンアップ」の扱い

AWSクラウドが提供するマネージドなデータベースサービス「Amazon RDS」および「Amazon Aurora」ではDBエンジン（MySQLやPostgreSQLなど）の定期的なバージョンアップが必要です。

例えばオンプレミスでDBサーバーを自前構築する際でも、これらのOSSは提供元コミュニティから各バージョンのサポート期限が定められていましたが、サポート終了後もユーザーが自己責任で無理やり利用継続しようと思えば「できてしまう」ものでした。

これがAWSのようなパブリッククラウドとなると、RDSやAuroraといったマネージドサービスでは利用者がOS以下の基盤部分を制御できないため、サポート終了前にクラウド事業者側から強制的にバージョンアップがかけられてしまったり、リソースが利用不可となる等が予想されます。つまり「塩漬け不可」なのが良くも悪くもマネージドDBの特徴でした。


# 安易な塩漬けはやめましょう！

企業においてITシステムがすでに稼働している場合、ソフトウェアの保守は「ビジネスに直接貢献しないランニングコスト」とみなされることも残念ながら少なくありません。さらにデータベースのメジャーバージョンアップとなると既存機能に対する影響リスクも大きくなるため、意識高く計画的なアップデートを続けられる現場でなければ、安易な「塩漬け」をしてしまいたいというニーズはあるでしょう。

幸か不幸か、今回のアップデートはそんな切羽詰まったシステム部門がついすがりたくなるソリューションに見えてしまうかも知れません。

前述のAWSブログでも言及されているように、今回のアップデートは各利用者がDBエンジンのメジャーアップデートを計画するなかでどうしても期限内に終わらない…という場合に向けて用意されるオプションとなるようです。無限に塩漬け出来るわけではないので、大前提としてDBエンジンはちゃんと計画的にアップデートし続けましょう。

https://twitter.com/con_mame/status/1697770629733482966?s=20



# 元々のメジャーバージョンサポート期限

詳細はリンク先参照ですが、例えばAurora バージョン2（MySQL 5.7互換）は2024年10月末、PostgreSQL 11互換は2024年1月が元々のサポート期限となっていました。

Aurora

https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/Aurora.VersionPolicy.html#Aurora.VersionPolicy.MajorVersionLifetime


RDS for MySQL

https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/MySQL.Concepts.VersionMgmt.html#MySQL.Concepts.VersionMgmt.ReleaseCalendar

RDS for PostgreSQL

https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/PostgreSQLReleaseNotes/postgresql-release-calendar.html



# アップデートの詳細

Amazon RDS Extended Support（延長サポート）の提供開始を予告するもの。


### 延長サポートの内容

MySQLとPostgreSQLのメジャーバージョンの標準サポート終了後も、重要なセキュリティとバグ修正を最大3年間提供する


### 延長サポート仕様の詳細

Aurora

https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html

RDS

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html


### 延長サポートの対象

MySQL系

- Aurora MySQL互換 バージョン2以上
- RDS for MySQL 5.7以上のメジャーバージョン

PostgreSQL系

- Aurora PostgreSQL互換 バージョン11以上
- RDS for PostgreSQL 11以上のメジャーバージョン


### 提供開始時期

- 2023年12月からAWSマネジメントコンソール、CLI、およびAPIを通じて延長サポートにオプトイン可能になる
- 実際の課金開始はエンジンバージョンによるが、最速でも2024年3月からの予定


### 料金

Aurora

https://aws.amazon.com/rds/aurora/pricing/

RDS for MySQL

https://aws.amazon.com/rds/mysql/pricing/?nc1=h_ls

RDS for PostgreSQL

https://aws.amazon.com/rds/postgresql/pricing/?nc1=h_ls

具体的なコストの例として、Amazon Aurora（非サーバーレス）の延長サポート費用は最初の2年間がvCPUあたり1時間0.12ドル、最後の3年目はその倍額となるため、例えば `db.t4g.large` インスタンス1台を3年延長した場合の平均コストは月額３万４千円程度となりそうです。

https://twitter.com/web_se/status/1697775425894928763?s=20


# おわりに

繰り返しとなりますが、ソフトウェアは安易に塩漬けせず継続的に計画アップデートを行う前提でシステム構築しましょう！

古いソフトウェアはリスクの温床となるほか、新しいバージョンのソフトウェアには便利な新機能が多数搭載されてきますので機会損失も大きくなります。

Amazon Aurora/RDSでも最近いくつもの魅力的な新機能が登場しており、これらも比較的新しいDBエンジンバージョンでなければ利用できないものも多いです。冒頭のAWSブログ内でも最新バージョンを利用するメリットが語られていますので、再掲しておきます。

https://aws.amazon.com/jp/blogs/database/introducing-amazon-rds-extended-support-for-mysql-databases-on-amazon-aurora-and-amazon-rds/