説明
CDBのバックアップポリシーを明示的に管理しないと、保持期間や実行時間帯が復旧要件に合わない場合があります。Terraformの個別ポリシーリソースがないだけで、サービスの自動バックアップが無効になるわけではありません。
想定される影響
必要な復旧時点が保持されず、障害や操作ミスで失ったデータの復元が難しくなるおそれがあります。
対処方法
インスタンスにtencentcloud_mysql_backup_policyを関連付け、必要な復旧期間に合わせてretention_period、backup_time、binlog_periodを設定してください。実際のバックアップと復元可否も確認してください。
例
以下はバックアップポリシーをコードで管理し、データとbinlogをいずれも32日保持する抜粋です。ネットワークなど、他のインスタンス設定は省略しています。
変更前
hcl
resource "tencentcloud_mysql_instance" "db" {
engine_version = "5.7"
charge_type = "POSTPAID"
instance_name = "tf-example-mysql"
mem_size = 4000
volume_size = 200
intranet_port = 3306
}
変更後
hcl
resource "tencentcloud_mysql_instance" "db" {
engine_version = "5.7"
charge_type = "POSTPAID"
instance_name = "tf-example-mysql"
mem_size = 4000
volume_size = 200
intranet_port = 3306
}
resource "tencentcloud_mysql_backup_policy" "example" {
mysql_id = tencentcloud_mysql_instance.db.id
retention_period = 32
backup_model = "physical"
backup_time = "22:00-02:00"
binlog_period = 32
enable_binlog_standby = "off"
binlog_standby_days = 31
}