DB-AURORA¶
Amazon Aurora のクラスタ、インスタンスの設定及び、データベース、ユーザの初期設定を行います。
Aurora 内に格納されたデータの所有権はユーザーに帰属するため、デフォルトではパッケージ削除時にクラスタ、インスタンス、データベースの削除は行いません。
設定値 |
|
---|---|
Chart |
db-aurora |
対応データベースエンジン¶
Aurora MySQL
Aurora PostgreSQL
パッケージの機能¶
本パッケージでは、 Amazon Aurora のインスタンスに関する以下の機能を提供します。
- Aurora クラスタの作成・設定。
クラスタのロケーション設定
クラスタのデーターベースエンジンのバージョン設定。
クラスタに割り当てるストレージ種別の設定。
クラスタのスケーリングに関する設定(サーバレスの場合のみ)
クラスタのバックアップに関する設定。
クラスタに接続する subnet の設定。
クラスタのセキュリティグループ設定。
Performance Insights
CloudWatch Logs にエクスポートするログの種類
ストレージ暗号化
タグ
- 各クラスタにおける Aurora インスタンスの作成・設定。
インスタンスの個数設定
インスタンスのマシンタイプ(インスタンスクラス)の設定
拡張モニタリング
- Aurora インスタンス作成時の初期データベースの作成。
単一のデータベースを作成可能。
- 初期データベースユーザーの作成。
マスターユーザーを作成可能。
Database 接続¶
AWS マネジメントコンソールから作成した Aurora インスタンスのエンドポイントを確認し、接続先ホストとして設定します。
インスタンスクラスの変更¶
Values の instance.machineType
を変更することで本パッケージで管理している Aurora クラスタ内のインスタンスクラスを変更することができます。
Values の applyImmediately
が true
の場合は変更が即時反映されます。
Values の applyImmediately
が false
の場合は変更は即時には反映されず、メンテナンスウィンドウの範囲で変更が反映されます。
メンテナンスウィンドウを指定する場合は Values の maintenance.startMaintenanceWindow
および maintenance.endMaintenanceWindow
を指定してください。
クラスタのデーターベースエンジンのバージョン設定¶
Values の engineVersion
を変更することで本パッケージで管理している Aurora クラスタのデーターベースエンジンのバージョンを変更することができます。
PostgreSQLでは、バージョンを固定する場合、 15.4
のように指定します。下位のバージョンは省略して 15
や 14
のように指定した場合、マイナーバージョンは自動でアップグレードされます。
MySQL の場合は、バージョンを固定する場合、 8.0.mysql_aurora.3.04.1
のように指定します。 8.0
や 5.7
のように指定した場合、パッチバージョンは自動でアップグレードされます( 8
のようにメジャーバージョンのみ指定することはできません。)。
ユーザパスワードの指定方法¶
values の
user
リストにユーザの名前、パスワードの登録された SecretManager の情報を指定します。values の
user.secret.name
,user.secret.key
には マスタユーザのパスワードが登録されている Secret Manager のシークレット名、およびデータベースパスワード情報のキー名を指定します。パスワードを事前にキーマネージメントサービスに登録します。
サーバレスインスタンスの設定方法¶
サーバレスインスタンスを用いて Aurora クラスタを構築する場合は Values の machineType
で db.serverless
を指定してください。
また、その場合 Values の engineMode
には provisioned
を指定してください。
Values¶
Default values¶
# Default values for MASTER-CONTAINER-HELM-DB-AURORA.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
########## リソース保持に関する設定 ##########
# パッケージアンインストール時にデータベースインスタンスを残す設定。
# 誤操作によるインスタンスの削除を防ぐため、本パッケージでは true がデフォルトの値となっています。
# true の状態でパッケージをアンインストールしてもデータベースクラスターおよびインスタンスは残るため、
# 実際に削除する際は、false に更新した後でアンインストールを行う必要があります。
keepOnDelete: true
# 設定変更を即時に反映するかを指定します。
# false の場合、次のメンテナンスウィンドウで適用されます。
applyImmediately: false
# globalCluster:
# create: true
# id: global
########## DBクラスタ・インスタンス設定 ##########
# DB クラスター識別子を指定します。
# AWS アカウントが現在の AWS リージョンで一意である必要があります。
# DBインスタンスは name-1 という名前になります。
name:
########## データベースの種別設定 ##########
# database の種別を指定する。以下を指定可能。
# mysql, postgresql
databaseType: mysql
# データベースエンジンのバージョンを指定する
# PostgreSQLでは、バージョンを固定する場合、 "15.4"のように指定します。
# 下位のバージョンは省略して "15" や "14" のように指定した場合、マイナーバージョンは自動でアップグレードされます。
# MySQL の場合は、バージョンを固定する場合、 "8.0.mysql_aurora.3.04.1"のように指定します。
# "8.0" や "5.7" のように指定した場合、パッチバージョンは自動でアップグレードされます( "8" のようにメジャーバージョンのみ指定することはできません。)。
engineVersion: ""
# 配置先のリージョンを指定する。
location: ""
# 配置先のAZを指定する。指定しない場合は、locationで指定したリージョンのAZが指定されます。
availabilityZones: []
# availabilityZones:
# - "ap-northeast-1a"
# - "ap-northeast-1c"
# - "ap-northeast-1d"
# multimaster, parallelquery, provisioned. Defaults to: provisioned
# provisioned: 通常、サーバーレス(Aurora Serverless v2)
# Serverless v1 は非サポートです。
engineMode: "provisioned"
instance:
# 作成するインスタンスの個数
count: 1
# マシンタイプ(インスタンスクラス)を指定する。
# 指定可能な値は以下参照。https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html
# engine versionとサポートするマシンタイプの組合せ https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/Concepts.DBInstanceClass.html#Concepts.DBInstanceClass.SupportAurora
# AWS リージョンごとに組み合わせが異なるため、aws rds describe-orderable-db-instance-options での確認を推奨します。
# サーバレスDBインスタンス(Aurora Serverless v2)を利用する場合、"db.serverless" を指定してください。
machineType: ""
# Aurora サーバレスの場合の容量範囲の設定です。
# https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.setting-capacity.html#aurora-serverless-v2-examples-setting-capacity-range-for-cluster
# 各値は0.5から128.0まで0.5刻みで設定可能です。
serverlessScalingConfiguration:
maxCapacity: 1.0
minCapacity: 0.5
# DBに割り当てるストレージについて設定する。
storage:
encrypt:
# ストレージ暗号化の有効化設定
enabled: false
# 暗号化に使用する KMS キーの ARN(事前にカスタマー管理型のキーを作成する必要があります)。指定しない場合は、AWS マネージド型キーの aws/rdsが使用されます。(注意)データベース作成後に変更するとデータベースの再作成が行われます。
kmsKeyId: ""
logging:
# CloudWatch Logs にエクスポートするログの種類(配列)
cloudwatchLogsExports: []
monitoring:
performanceInsights:
# Performance Insights の有効化設定
enabled: false
# Performance Insights データの保持期間
retentionPeriod: 7
# Performance Insights の暗号化に使用する KMS キーの ARN(事前にカスタマー管理型のキーを作成する必要があります)。指定しない場合は、AWS マネージド型キーの aws/rdsが使用されます。
kmsKeyId: ""
enhancedMonitoring:
# 拡張モニタリングの有効化設定
enabled: false
# 拡張モニタリングの収集間隔
interval: 60
# リソースに割り当てるタグ(キーと値のペア)
# tags:
# key: "value"
########## ネットワーク設定 ##########
# インスタンスに接続するネットワークに関する設定を行う。
network:
# インスタンスに接続する subnet を指定する。必須。
# subnets:
# - subnet-12345678
# - subnet-23456789
# # インスタンスに設定するセキュリティグループを指定する。
# # 指定がない場合、default VPC の default セキュリティグループ が設定されます。
# securityGroups:
# - sg-12345678
# - sg-23456789
# バックアップについて設定する。
backup:
# バックアップの保持期間を日数で設定する。各クラウドごとに以下の値を設定できます。
# * AWS : 0〜35
# 0を指定した場合バックアップ自体が無効になります。
retentionPeriod: 7
# 以下に指定している時間(UTC)の範囲でバックアップ処理を開始する。
# startBackupWindow: "17:00"
# endBackupWindow: "17:30"
# メンテナンスについて設定する。
maintenance:
# メンテナンスウィンドウの開始・終了時刻(UTC)を設定します。
# 形式:"ddd:hh24:mi". Eg: "Mon:00:00".
# DBエンジンのアップグレード、インサンスクラスの変更などのメンテナンスは、メンテナンスウィンドウ中にスタートされます。
# startMaintenanceWindow: "Mon:00:00"
# endMaintenanceWindow: "Mon:00:30"
########## データベース設定 ##########
# 1つのデータベースが自動的に作成されます。
database:
# データベースの名前を指定します。
name: default
########## ユーザー設定 ##########
# インスタンスに作成するユーザーの指定を行います。
# マスタユーザとして一つのユーザーを作成可能です。
user:
# 作成するユーザー名を指定します。
name:
# 以下に設定した kms の値でユーザーのパスワードを設定します。
secret:
# シークレット名を指定する。
key: aurora-admin
# AWS SecretManagerではシークレット内に json 形式でキーを設定して値を保存するため、シークレット名の他にキー名の指定を行う。
property: password
Schema reference¶
type |
object |
|||
properties |
||||
|
true の場合パッケージアンインストール時に Aurora クラスタを保持する。 |
|||
type |
boolean |
|||
default |
True |
|||
|
true の場合は設定変更が即時に反映されます。 |
|||
type |
boolean |
|||
default |
False |
|||
|
クラスター識別子 |
|||
type |
string |
|||
|
データベース種別 |
|||
type |
string |
|||
enum |
mysql, postgresql |
|||
default |
mysql |
|||
|
PostgreSQLでは、バージョンを固定する場合、 |
|||
type |
string |
|||
|
配置先のリージョン |
|||
type |
string |
|||
|
配置先のAZを指定する。指定しない場合は、locationで指定したリージョンのAZが指定される。 |
|||
type |
array |
|||
items |
AZ 名 |
|||
type |
string |
|||
|
インスタンス種別 |
|||
type |
string |
|||
enum |
multimaster, parallelquery, provisioned |
|||
default |
provisioned |
|||
|
インスタンス設定 |
|||
type |
object |
|||
properties |
||||
|
作成するインスタンスの個数 |
|||
type |
number |
|||
|
インスタンスのマシンタイプ(インスタンスクラス) |
|||
type |
string |
|||
|
Aurora サーバレスの場合の容量範囲 |
|||
type |
object |
|||
properties |
||||
|
最大容量設定 |
|||
type |
number |
|||
|
最小容量設定 |
|||
type |
number |
|||
|
データベースに割り当てるストレージの設定 |
|||
type |
object |
|||
properties |
||||
|
ディスクタイプ。指定なし(Aurora スタンダード) または、aurora-iopt1(Aurora I/O 最適化) |
|||
type |
string |
|||
enum |
, aurora-iopt1 |
|||
default |
||||
|
ストレージ暗号化の設定。 |
|||
type |
object |
|||
properties |
||||
|
ストレージ暗号化を有効にするかどうか。 |
|||
type |
boolean |
|||
default |
False |
|||
|
暗号化に使用する KMS キーの ARN。 |
|||
type |
string |
|||
default |
||||
|
ロギングの設定。 |
|||
type |
object |
|||
properties |
||||
|
CloudWatch Logs にエクスポートするログの種類。設定可能な値は、audit, error, general, slowquery, iam-db-auth-error, postgresql |
|||
type |
array |
|||
default |
||||
items |
type |
string |
||
|
拡張モニタリングの設定。 |
|||
type |
object |
|||
properties |
||||
|
Performance Insights の設定。 |
|||
type |
object |
|||
properties |
||||
|
Performance Insights を有効にするかどうか。 |
|||
type |
boolean |
|||
default |
False |
|||
|
Performance Insights データを保持する日数。有効は値は、7 または、 month * 31 (31, 62, 93 など) です。 |
|||
type |
integer |
|||
default |
7 |
|||
|
Performance Insights の暗号化に使用する KMS キーの ARN。指定しなければ aws/rds が使用される |
|||
type |
string |
|||
|
Enhanced Monitoring の設定。 |
|||
type |
object |
|||
properties |
||||
|
拡張モニタリングを有効にするかどうか。 |
|||
type |
boolean |
|||
default |
False |
|||
|
DB インスタンスの拡張モニタリングメトリクスを収集する間隔(秒単位)。デフォルトは 60 です。有効な値: 0, 1, 5, 10, 15, 30, 60。 |
|||
type |
integer |
|||
enum |
0, 1, 5, 10, 15, 30, 60 |
|||
default |
60 |
|||
|
リソースに割り当てるタグのマップ。 |
|||
type |
object |
|||
default |
||||
additionalProperties |
type |
string |
||
|
ネットワーク設定 |
|||
properties |
||||
|
Aurora クラスタをデプロイするサブネット ID のリスト。 |
|||
type |
array |
|||
items |
サブネット ID |
|||
type |
string |
|||
|
Aurora クラスタに設定するセキュリティグループのリスト。 |
|||
type |
array |
|||
items |
セキュリティグループ ID |
|||
type |
string |
|||
|
Aurora クラスタのバックアップ設定 |
|||
type |
object |
|||
properties |
||||
|
バックアップの保持期間(0〜35の間の日数を設定) |
|||
type |
number |
|||
|
バックアップウィンドウの開始時刻 |
|||
type |
string |
|||
|
バックアップウィンドウの終了時刻 |
|||
type |
string |
|||
|
メンテナンスの設定 |
|||
type |
object |
|||
properties |
||||
|
メンテナンスウィンドウの開始時刻 |
|||
type |
string |
|||
|
メンテナンスウィンドウの終了時刻 |
|||
type |
string |
|||
|
データベース設定 |
|||
type |
object |
|||
properties |
||||
|
データベース名 |
|||
type |
string |
|||
default |
default |
|||
|
type |
object |
||
properties |
||||
|
ユーザー名 |
|||
type |
string |
|||
|
マスタユーザーのパスワードを格納した KMS の情報 |
|||
type |
object |
|||
properties |
||||
|
ユーザーのパスワードを格納した KMS のシークレット内のプロパティ名 |
|||
type |
string |
|||
|
ユーザーのパスワードを格納した KMS のシークレット名 |
|||
type |
string |
Example¶
Example1. MySQL (Serverless)¶
apiVersion: managed.msp.sbopsv/v1alpha1
kind: Application
metadata:
name: aurora-mysql
namespace: staging
spec:
chart:
name: db-aurora
version: <latest>
settings:
name: aurora-mysql
databaseType: mysql
engineVersion: "8.0.mysql_aurora.3.04.1"
location: "ap-northeast-1"
engineMode: "provisioned"
instance:
count: 1
machineType: "db.serverless"
serverlessScalingConfiguration:
maxCapacity: 2.0
minCapacity: 0.5
network:
subnets:
- "subnet-XXXXXXXXXXXXXXXXX"
- "subnet-YYYYYYYYYYYYYYYYY"
securityGroups:
- "sg-ZZZZZZZZZZZZZZZZZ"
backup:
retentionPeriod: 7
startBackupWindow: "17:00"
endBackupWindow: "17:30"
maintenance:
startMaintenanceWindow: "Mon:00:00"
endMaintenanceWindow: "Mon:00:30"
database:
name: db1
storage:
encrypt:
enabled: true
logging:
cloudwatchLogsExports:
- "error"
- "general"
- "slowquery"
monitoring:
performanceInsights:
enabled: true
retentionPeriod: 31
enhancedMonitoring:
enabled: true
interval: 60
user:
name: admin
secret:
key: aurora-admin
property: password
tags:
Environment: "staging"
Project: "test-project"
Owner: "test-team"
Example2. PostgreSQL¶
apiVersion: managed.msp.sbopsv/v1alpha1
kind: Application
metadata:
name: aurora-pg
namespace: staging
spec:
chart:
name: db-aurora
version: <latest>
settings:
name: aurora-postgresql
databaseType: postgresql
engineVersion: "15"
location: "ap-northeast-1"
engineMode: "provisioned"
instance:
count: 1
machineType: "db.r6g.xlarge"
network:
subnets:
- "subnet-XXXXXXXXXXXXXXXXX"
- "subnet-YYYYYYYYYYYYYYYYY"
securityGroups:
- "sg-ZZZZZZZZZZZZZZZZZ"
backup:
retentionPeriod: 7
startBackupWindow: "17:00"
endBackupWindow: "17:30"
maintenance:
startMaintenanceWindow: "Mon:00:00"
endMaintenanceWindow: "Mon:00:30"
database:
name: db1
user:
name: adminuser
secret:
key: aurora-admin
property: password
Change Log¶
0.1.18¶
Released on 2025-09-09
What's Changed
エンジンバージョンの指定方法により、マイナー/パッチバージョン自動アップグレード機能の有効/無効を切り替えるように変更になりました。
PostgreSQLでは、バージョンを固定する場合、 15.4
のように指定します。
下位のバージョンは省略して 15
や 14
のように指定した場合、マイナーバージョンは自動でアップグレードされます。
MySQL の場合は、バージョンを固定する場合、 8.0.mysql_aurora.3.04.1
のように指定します。
8.0
や 5.7
のように指定した場合、パッチバージョンは自動でアップグレードされます( 8
のようにメジャーバージョンのみ指定することはできません。)。
0.1.17¶
Released on 2025-08-07
What's Changed
パッケージ内で利用しているライブラリの更新を行いました。