パパエンジニアのアウトプット帳

30歳に突入した1児のパパエンジニアのブログ

TerraformでAurora2を立てる時のengine、engine_versionの指定

TerraformでAurora2のRDSを立てようと思ったらengine_versionになに指定したらいいか分からなかったのでメモ。


create-db-cluster — AWS CLI 1.16.103 Command Reference

--engine (string)

The name of the database engine to be used for this DB cluster. Valid Values: aurora (for MySQL 5.6-compatible Aurora), aurora-mysql (for MySQL 5.7-compatible Aurora), and aurora-postgresql

--engine-version (string)

The version number of the database engine to use.

Aurora MySQL

Example: 5.6.10a , 5.7.12

Aurora PostgreSQL

Example: 9.6.3

Aurora MySQL データベースエンジンの更新 (2018-02-06) - Amazon Aurora

・Aurora MySQL 2.x のエンジン名は aurora-mysql で、Aurora MySQL 1.x のエンジン名は引き続き aurora です。

・Aurora MySQL 2.x のエンジンのバージョンは 5.7.12 で、Aurora MySQL 1.x のエンジンのバージョンは引き続き 5.6.10ann です。

このドキュメントをみた感じだと、engine = "aurora-mysql"、engine_version = "7.5.12"だとなるが、これだとAurora 2.xではなくAurora MySQL 5.7.12が作成される。
engine_version = "2.03.3"とかにしてもダメで、結局一度5.7.12で作成後2.03.3にコンソールで変更してTerraformで見てみるとengine_version = "5.7.mysql_aurora.2.03.3"という。(分かるわけがない…)


なので、Terraformでのtfファイルは下記のように設定するとAurora MySQL 2.x系を作ることができます。

resource "aws_rds_cluster" "aurora57" {
  ・・・
  engine                              = "aurora-mysql"
  engine_version                      = "5.7.mysql_aurora.2.03.3"
  ・・・
}