RDS
A managed relational database service that makes it easy to set up, operate, and scale a relational database in the cloud.
Example yaml file:
apiVersion: aws.boundless.software/v1alpha1
kind: Rds
metadata:
name: example-rds
spec:
provider:
region: us-east-1
globalCluster:
engine: aurora-mysql
engineVersion: "8.0"
clusters:
cluster1:
provider:
region: us-east-2
engine: aurora-mysql
username: username
password: password
backupRetentionPeriod: 5
availabilityZones:
- us-east-2a
- us-east-2b
- us-east-2c
engineVersion: "8.0"
port: 3306
storageType: gp2
autoMinorVersionUpgrade: true
deletionProtection: true
instances:
instance1:
class: db.r5.xlarge
allocatedStorage: 100
storageType: gp2
autoMinorVersionUpgrade: true
parameterGroup:
family: aurora-mysql8.0
parameters:
parameter1: "value1"
subnetGroup:
subnets:
- subnet-123456
- subnet-789012
- subnet-345678
tags:
Environment: production
Inputs
Name | Type | Description |
---|---|---|
provider* | AwsProviderSpec | Provider specifies the AWS provider settings. Required |
globalCluster | GlobalClusterSpec | GlobalCluster specifies the global cluster settings. Optional |
clusters* | map[string]*RdsClusterSpec | Clusters specifies the cluster settings. Required |
RdsClusterSpec
Name | Type | Description |
---|---|---|
provider* | AwsProviderSpec | Provider specifies the AWS provider settings for the cluster. Required |
engine* | string | Engine specifies the database engine (aurora, aurora-mysql, aurora-postgresql, mysql, postgres). Required |
username* | string | Username specifies the database username. Required |
password* | string | Password specifies the database password. Required |
backupRetentionPeriod* | int32 | BackupRetentionPeriod specifies the number of days to retain backups (1-35). Required |
availabilityZones* | []string | AvailabilityZones specifies the availability zones to deploy the cluster. Required |
engineVersion | string | EngineVersion specifies the database engine version. Optional |
port | int32 | Port specifies the database port. Optional |
storageType | string | StorageType specifies the database storage type (standard, gp2, io1, io2, sc1, st1). Optional |
allocatedStorage | int32 | AllocatedStorage specifies the database allocated storage. Optional |
autoMinorVersionUpgrade | bool | AutoMinorVersionUpgrade specifies whether the database auto minor version upgrade. Optional |
deletionProtection | bool | DeletionProtection specifies whether the database is protected from deletion. Optional |
domainIAMRoleName | string | DomainIAMRoleName specifies the database domain iam role name. Optional |
publiclyAccessible | bool | PublicallyAccessible specifies whether the database is publically accessible. Optional |
preferredBackupWindow | string | PreferredBackupWindow specifies the database preferred backup window. Optional |
preferredMaintenanceWindow | string | PreferredMaintenanceWindow specifies the database preferred maintenance window. Optional |
vpcSecurityGroupIds | []string | VpcSecurityGroupIds specifies the database vpc security group ids. Optional |
instances | map[string]*RdsInstanceSpec | Instances specifies the database instances. Optional |
parameterGroup* | ParameterGroupSpec | ParameterGroup specifies the database parameter group. Required |
subnetGroup* | SubnetGroupSpec | SubnetGroup specifies the database subnet group. Required |
tags | map[string]string | Tags specifies the database tags. Optional |
RdsInstanceSpec
Name | Type | Description |
---|---|---|
class* | string | Class specifies the database instance class. Required |
allocatedStorage* | int32 | AllocatedStorage specifies the database instance allocated storage. Required |
autoMinorVersionUpgrade | bool | AutoMinorVersionUpgrade specifies whether the database instance auto minor version upgrade. Optional |
storageType | string | StorageType specifies the database instance storage type. Optional |
iops | int32 | Iops specifies the database instance iops. Optional |
deletionProtection | bool | DeletionProtection specifies whether the database instance is protected from deletion. Optional |
storageEncrypted | bool | StorageEncrypted specifies whether the database instance storage is encrypted. Optional |
vpcSecurityGroupIds | []string | VpcSecurityGroupIds specifies the database instance vpc security group ids. Optional |
publiclyAccessible | bool | PublicallyAccessible specifies whether the database instance is publically accessible. Optional |
kmsKeyId | string | KmsKeyId specifies the database instance kms key id. Optional |
preferredBackupWindow | string | PreferredBackupWindow specifies the database instance preferred backup window. Optional |
preferredMaintenanceWindow | string | PreferredMaintenanceWindow specifies the database instance preferred maintenance window. Optional |
tags | map[string]string | Tags specifies the database instance tags. Optional |
GlobalClusterSpec
Name | Type | Description |
---|---|---|
engine* | string | Engine specifies the database engine (aurora, aurora-mysql, aurora-postgresql). Required |
engineVersion | string | EngineVersion specifies the database engine version. Optional |
ParameterGroupSpec
Name | Type | Description |
---|---|---|
parameters | map[string]string | Parameters specifies the database parameter group parameters. Optional |
family* | string | Family specifies the database parameter group family. Required |
SubnetGroupSpec
Name | Type | Description |
---|---|---|
subnets* | []string | Subnets specifies the database subnet group subnets (minimum 3). Required |
Outputs
Name | Type | Description |
---|---|---|
globalCluster | GlobalClusterStatus | Status provides current condition of global cluster if it exists |
clusters | map[string]*RdsClusterStatus | Status provides current condition of clusters if they exist |
RdsClusterStatus
Name | Type | Description |
---|---|---|
condition | metav1.Condition | Condition provides current condition of cluster |
identifier | string | Identifier provides the cluster identifier |
endpoint | string | Endpoint provides the cluster endpoint |
readerEndpoint | string | ReaderEndpoint provides the cluster reader endpoint |
instances | map[string]*RdsInstanceStatus | Instances provides the current condition of instances if they exist |
GlobalClusterStatus
Name | Type | Description |
---|---|---|
condition | metav1.Condition | Condition provides current condition of global cluster |
identifier | string | Identifier provides the global cluster identifier |
arn | string | Arn provides the global cluster ARN |
engineVersion | string | EngineVersion provides the global cluster engine version |
engine | string | Engine provides the global cluster engine |
EndpointStatus
Name | Type | Description |
---|---|---|
address | string | Address provides the endpoint address |
port | int32 | Port provides the endpoint port |
hostedZoneId | string | HostedZoneId provides the endpoint hosted zone id |
ParameterGroupStatus
Name | Type | Description |
---|---|---|
condition | metav1.Condition | Condition provides current condition of parameter group |
arn | string | Arn provides the parameter group ARN |
family | string | Family provides the parameter group family |
name | string | Name provides the parameter group name |
parameters | map[string]string | Parameters provides the parameter group parameters |
SubnetGroupStatus
Name | Type | Description |
---|---|---|
condition | metav1.Condition | Condition provides current condition of subnet group |
arn | string | Arn provides the subnet group ARN |
name | string | Name provides the subnet group name |
subnets | []string | Subnets provides the subnet group subnets |
RdsInstanceStatus
Name | Type | Description |
---|---|---|
condition | metav1.Condition | Condition provides current condition of instance |
arn | string | Arn provides the instance ARN |
endpoint | EndpointStatus | Endpoint provides the instance endpoint |
class | string | Class provides the instance class |
engine | string | Engine provides the instance engine |
engineVersion | string | EngineVersion provides the instance engine version |
storageEncrypted | bool | StorageEncrypted specifies whether the database storage is encrypted |
deletionProtection | bool | DeletionProtection specifies whether the database instance is protected from deletion |
publiclyAccessible | bool | PublicallyAccessible specifies whether the database instance is publically accessible |
preferredBackupWindow | string | PreferredBackupWindow specifies the database instance preferred backup window |
autoMinorVersionUpgrade | bool | AutoMinorVersionUpgrade specifies whether the database instance auto minor version upgrade |
vpcSecurityGroupIds | []string | VpcSecurityGroupIds specifies the database instance vpc security group ids |
allocatedStorage | int32 | AllocatedStorage specifies the database instance allocated storage |
storageType | string | StorageType specifies the database instance storage type |
kmsKeyId | string | KmsKeyId specifies the database instance kms key id |