-
Notifications
You must be signed in to change notification settings - Fork 271
Description
Summary
When trying to create a DBInstance inside an existing Aurora MySQL DBCluster using the ACK RDS controller, the instance creation fails with the following terminal condition:
api error InvalidParameterCombination: You can't modify the Database Insights mode for DB instances within a DB cluster. To modify the Database Insights mode, you must modify the DB cluster.
The DBCluster itself is created successfully via a Kubernetes manifest.
Steps to Reproduce
- Create a
DBClustermanifest:
apiVersion: rds.services.k8s.aws/v1alpha1
kind: DBCluster
metadata:
name: postdeal-uat-2025-11-11
spec:
dbClusterIdentifier: postdeal-uat-2025-11-11
databaseName: postdeal
engine: aurora-mysql
engineMode: provisioned
engineVersion: "8.0.mysql_aurora.3.08.2"
masterUsername: "root"
masterUserPassword:
namespace: infra-uat
name: password
key: password
dbSubnetGroupName: "rds-subnet"
backupRetentionPeriod: 30
copyTagsToSnapshot: true
enableCloudwatchLogsExports:
- audit
- error
- general
- slowquery
deletionProtection: true- Then create a
DBInstancemanifest referring to the cluster:
apiVersion: rds.services.k8s.aws/v1alpha1
kind: DBInstance
metadata:
name: postdeal-uat-2025-11-11
spec:
databaseInsightsMode: standard
dbInstanceClass: db.r5.large
dbClusterIdentifier: postdeal-uat-2025-11-11
dbInstanceIdentifier: postdeal-uat-2025-11-11
engine: aurora-mysql
engineVersion: "8.0.mysql_aurora.3.08.2"
dbSubnetGroupName: "rds-subnet"- Observe that the DB instance fails to create. Running:
kubectl describe DBInstance postdeal-uat-2025-11-11
shows:
status:
conditions:
- message: 'api error InvalidParameterCombination: You can''t modify the Database
Insights mode for DB instances within a DB cluster. To modify the Database Insights
mode, you must modify the DB cluster.'
status: "True"
type: ACK.Terminal
Expected Behavior
The DBInstance should be successfully created inside the existing Aurora MySQL cluster.
Actual Behavior
The resource enters a terminal error state and is never created.
The controller seems to apply databaseInsightsMode to a clustered instance, which RDS does not allow.
Possible Cause / Suggestion
The controller likely includes the DatabaseInsightsMode parameter in the CreateDBInstance API request even when dbClusterIdentifier is specified.
This field should probably be omitted when creating instances that belong to a cluster.
Environment
- Region:
eu-west-2 - Engine:
aurora-mysql - Engine version:
8.0.mysql_aurora.3.08.2
Workaround
Remove the line
databaseInsightsMode: standardfrom the DBInstance spec.
After removing it, the instance is created successfully.