@awboost/cfn-resource-types 0.1.62 → 0.1.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -5,29 +5,11 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
5
5
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html}
|
|
6
6
|
*/
|
|
7
7
|
export type LambdaAliasProperties = {
|
|
8
|
-
/**
|
|
9
|
-
* A description of the alias.
|
|
10
|
-
*/
|
|
11
8
|
Description?: string;
|
|
12
|
-
/**
|
|
13
|
-
* The name of the Lambda function.
|
|
14
|
-
*/
|
|
15
9
|
FunctionName: string;
|
|
16
|
-
/**
|
|
17
|
-
* The function version that the alias invokes.
|
|
18
|
-
*/
|
|
19
10
|
FunctionVersion: string;
|
|
20
|
-
/**
|
|
21
|
-
* The name of the alias.
|
|
22
|
-
*/
|
|
23
11
|
Name: string;
|
|
24
|
-
/**
|
|
25
|
-
* Specifies a provisioned concurrency configuration for a function's alias.
|
|
26
|
-
*/
|
|
27
12
|
ProvisionedConcurrencyConfig?: ProvisionedConcurrencyConfiguration;
|
|
28
|
-
/**
|
|
29
|
-
* The routing configuration of the alias.
|
|
30
|
-
*/
|
|
31
13
|
RoutingConfig?: AliasRoutingConfiguration;
|
|
32
14
|
};
|
|
33
15
|
/**
|
|
@@ -35,46 +17,29 @@ export type LambdaAliasProperties = {
|
|
|
35
17
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#aws-resource-lambda-alias-return-values}
|
|
36
18
|
*/
|
|
37
19
|
export type LambdaAliasAttributes = {
|
|
38
|
-
/**
|
|
39
|
-
* Lambda Alias ARN generated by the service.
|
|
40
|
-
*/
|
|
41
20
|
AliasArn: string;
|
|
21
|
+
Id: string;
|
|
42
22
|
};
|
|
43
23
|
/**
|
|
44
24
|
* Type definition for `AWS::Lambda::Alias.AliasRoutingConfiguration`.
|
|
45
|
-
* The traffic-shifting configuration of a Lambda function alias.
|
|
46
25
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html}
|
|
47
26
|
*/
|
|
48
27
|
export type AliasRoutingConfiguration = {
|
|
49
|
-
/**
|
|
50
|
-
* The second version, and the percentage of traffic that's routed to it.
|
|
51
|
-
*/
|
|
52
28
|
AdditionalVersionWeights: VersionWeight[];
|
|
53
29
|
};
|
|
54
30
|
/**
|
|
55
31
|
* Type definition for `AWS::Lambda::Alias.ProvisionedConcurrencyConfiguration`.
|
|
56
|
-
* A provisioned concurrency configuration for a function's alias.
|
|
57
32
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-provisionedconcurrencyconfiguration.html}
|
|
58
33
|
*/
|
|
59
34
|
export type ProvisionedConcurrencyConfiguration = {
|
|
60
|
-
/**
|
|
61
|
-
* The amount of provisioned concurrency to allocate for the alias.
|
|
62
|
-
*/
|
|
63
35
|
ProvisionedConcurrentExecutions: number;
|
|
64
36
|
};
|
|
65
37
|
/**
|
|
66
38
|
* Type definition for `AWS::Lambda::Alias.VersionWeight`.
|
|
67
|
-
* The traffic-shifting configuration of a Lambda function alias.
|
|
68
39
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-versionweight.html}
|
|
69
40
|
*/
|
|
70
41
|
export type VersionWeight = {
|
|
71
|
-
/**
|
|
72
|
-
* The qualifier of the second version.
|
|
73
|
-
*/
|
|
74
42
|
FunctionVersion: string;
|
|
75
|
-
/**
|
|
76
|
-
* The percentage of traffic that the alias routes to the second version.
|
|
77
|
-
*/
|
|
78
43
|
FunctionWeight: number;
|
|
79
44
|
};
|
|
80
45
|
/**
|
|
@@ -5,7 +5,23 @@ import type { ResourceOptions as $ResourceOptions } from "@awboost/cfn-template-
|
|
|
5
5
|
For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.
|
|
6
6
|
For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.
|
|
7
7
|
If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.
|
|
8
|
-
If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an
|
|
8
|
+
If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).
|
|
9
|
+
*Updating DB instances*
|
|
10
|
+
When properties labeled "*Update requires:* [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.
|
|
11
|
+
We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:
|
|
12
|
+
1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.
|
|
13
|
+
1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).
|
|
14
|
+
1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.
|
|
15
|
+
After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.
|
|
16
|
+
1. Update the stack.
|
|
17
|
+
|
|
18
|
+
For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).
|
|
19
|
+
*Deleting DB instances*
|
|
20
|
+
For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:
|
|
21
|
+
1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.
|
|
22
|
+
1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.
|
|
23
|
+
|
|
24
|
+
For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).
|
|
9
25
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html}
|
|
10
26
|
*/
|
|
11
27
|
export type RDSDBInstanceProperties = {
|
|
@@ -16,12 +32,46 @@ export type RDSDBInstanceProperties = {
|
|
|
16
32
|
Not applicable. Aurora cluster volumes automatically grow as the amount of data in your database increases, though you are only charged for the space that you use in an Aurora cluster volume.
|
|
17
33
|
*Db2*
|
|
18
34
|
Constraints to the amount of storage for each storage type are the following:
|
|
19
|
-
+
|
|
20
|
-
|
|
21
|
-
|
|
35
|
+
+ General Purpose (SSD) storage (gp3): Must be an integer from 20 to 64000.
|
|
36
|
+
+ Provisioned IOPS storage (io1): Must be an integer from 100 to 64000.
|
|
37
|
+
|
|
22
38
|
*MySQL*
|
|
23
39
|
Constraints to the amount of storage for each storage type are the following:
|
|
24
|
-
+
|
|
40
|
+
+ General Purpose (SSD) storage (gp2): Must be an integer from 20 to 65536.
|
|
41
|
+
+ Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.
|
|
42
|
+
+ Magnetic storage (standard): Must be an integer from 5 to 3072.
|
|
43
|
+
|
|
44
|
+
*MariaDB*
|
|
45
|
+
Constraints to the amount of storage for each storage type are the following:
|
|
46
|
+
+ General Purpose (SSD) storage (gp2): Must be an integer from 20 to 65536.
|
|
47
|
+
+ Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.
|
|
48
|
+
+ Magnetic storage (standard): Must be an integer from 5 to 3072.
|
|
49
|
+
|
|
50
|
+
*PostgreSQL*
|
|
51
|
+
Constraints to the amount of storage for each storage type are the following:
|
|
52
|
+
+ General Purpose (SSD) storage (gp2): Must be an integer from 20 to 65536.
|
|
53
|
+
+ Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.
|
|
54
|
+
+ Magnetic storage (standard): Must be an integer from 5 to 3072.
|
|
55
|
+
|
|
56
|
+
*Oracle*
|
|
57
|
+
Constraints to the amount of storage for each storage type are the following:
|
|
58
|
+
+ General Purpose (SSD) storage (gp2): Must be an integer from 20 to 65536.
|
|
59
|
+
+ Provisioned IOPS storage (io1): Must be an integer from 100 to 65536.
|
|
60
|
+
+ Magnetic storage (standard): Must be an integer from 10 to 3072.
|
|
61
|
+
|
|
62
|
+
*SQL Server*
|
|
63
|
+
Constraints to the amount of storage for each storage type are the following:
|
|
64
|
+
+ General Purpose (SSD) storage (gp2):
|
|
65
|
+
+ Enterprise and Standard editions: Must be an integer from 20 to 16384.
|
|
66
|
+
+ Web and Express editions: Must be an integer from 20 to 16384.
|
|
67
|
+
|
|
68
|
+
+ Provisioned IOPS storage (io1):
|
|
69
|
+
+ Enterprise and Standard editions: Must be an integer from 20 to 16384.
|
|
70
|
+
+ Web and Express editions: Must be an integer from 20 to 16384.
|
|
71
|
+
|
|
72
|
+
+ Magnetic storage (standard):
|
|
73
|
+
+ Enterprise and Standard editions: Must be an integer from 20 to 1024.
|
|
74
|
+
+ Web and Express editions: Must be an integer from 20 to 1024.
|
|
25
75
|
* @pattern `^[0-9]*$`
|
|
26
76
|
*/
|
|
27
77
|
AllocatedStorage?: string;
|
|
@@ -57,7 +107,7 @@ export type RDSDBInstanceProperties = {
|
|
|
57
107
|
AvailabilityZone?: string;
|
|
58
108
|
/**
|
|
59
109
|
* The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.
|
|
60
|
-
|
|
110
|
+
*Amazon Aurora*
|
|
61
111
|
Not applicable. The retention period for automated backups is managed by the DB cluster.
|
|
62
112
|
Default: 1
|
|
63
113
|
Constraints:
|
|
@@ -77,7 +127,9 @@ export type RDSDBInstanceProperties = {
|
|
|
77
127
|
Set this parameter only if you are *not* using SSL/TLS to connect to the DB instance.
|
|
78
128
|
If you are using SSL/TLS to connect to the DB instance, follow the appropriate instructions for your DB engine to rotate your SSL/TLS certificate:
|
|
79
129
|
+ For more information about rotating your SSL/TLS certificate for RDS DB engines, see [Rotating Your SSL/TLS Certificate.](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL-certificate-rotation.html) in the *Amazon RDS User Guide.*
|
|
80
|
-
+ For more information about rotating your SSL/TLS certificate for Aurora DB engines, see [Rotating Your SSL/TLS Certificate](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL-certificate-rotation.html) in the *Amazon Aurora User
|
|
130
|
+
+ For more information about rotating your SSL/TLS certificate for Aurora DB engines, see [Rotating Your SSL/TLS Certificate](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL-certificate-rotation.html) in the *Amazon Aurora User Guide*.
|
|
131
|
+
|
|
132
|
+
This setting doesn't apply to RDS Custom DB instances.
|
|
81
133
|
*/
|
|
82
134
|
CertificateRotationRestart?: boolean;
|
|
83
135
|
/**
|
|
@@ -107,7 +159,7 @@ export type RDSDBInstanceProperties = {
|
|
|
107
159
|
*/
|
|
108
160
|
DBClusterIdentifier?: string;
|
|
109
161
|
/**
|
|
110
|
-
* The identifier for the
|
|
162
|
+
* The identifier for the Multi-AZ DB cluster snapshot to restore from.
|
|
111
163
|
For more information on Multi-AZ DB clusters, see [Multi-AZ DB cluster deployments](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html) in the *Amazon RDS User Guide*.
|
|
112
164
|
Constraints:
|
|
113
165
|
+ Must match the identifier of an existing Multi-AZ DB cluster snapshot.
|
|
@@ -115,13 +167,11 @@ export type RDSDBInstanceProperties = {
|
|
|
115
167
|
+ Must be specified when ``DBSnapshotIdentifier`` isn't specified.
|
|
116
168
|
+ If you are restoring from a shared manual Multi-AZ DB cluster snapshot, the ``DBClusterSnapshotIdentifier`` must be the ARN of the shared snapshot.
|
|
117
169
|
+ Can't be the identifier of an Aurora DB cluster snapshot.
|
|
118
|
-
+ Can't be the identifier of an RDS for PostgreSQL Multi-AZ DB cluster snapshot.
|
|
119
170
|
*/
|
|
120
171
|
DBClusterSnapshotIdentifier?: string;
|
|
121
172
|
/**
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
*/
|
|
173
|
+
* The compute and memory capacity of the DB instance, for example ``db.m5.large``. Not all DB instance classes are available in all AWS-Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see [DB instance classes](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) in the *Amazon RDS User Guide* or [Aurora DB instance classes](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.DBInstanceClass.html) in the *Amazon Aurora User Guide*.
|
|
174
|
+
*/
|
|
125
175
|
DBInstanceClass?: string;
|
|
126
176
|
/**
|
|
127
177
|
* A name for the DB instance. If you specify a name, AWS CloudFormation converts it to lowercase. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the DB instance. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).
|
|
@@ -140,10 +190,10 @@ export type RDSDBInstanceProperties = {
|
|
|
140
190
|
*Db2*
|
|
141
191
|
The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.
|
|
142
192
|
Constraints:
|
|
143
|
-
+
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
193
|
+
+ Must contain 1 to 64 letters or numbers.
|
|
194
|
+
+ Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).
|
|
195
|
+
+ Can't be a word reserved by the specified database engine.
|
|
196
|
+
|
|
147
197
|
*MySQL*
|
|
148
198
|
The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.
|
|
149
199
|
Constraints:
|
|
@@ -151,13 +201,32 @@ export type RDSDBInstanceProperties = {
|
|
|
151
201
|
+ Can't be a word reserved by the specified database engine
|
|
152
202
|
|
|
153
203
|
*MariaDB*
|
|
154
|
-
The name of the database to create when the DB instance is
|
|
204
|
+
The name of the database to create when the DB instance is created. If this parameter is not specified, no database is created in the DB instance.
|
|
205
|
+
Constraints:
|
|
206
|
+
+ Must contain 1 to 64 letters or numbers.
|
|
207
|
+
+ Can't be a word reserved by the specified database engine
|
|
208
|
+
|
|
209
|
+
*PostgreSQL*
|
|
210
|
+
The name of the database to create when the DB instance is created. If this parameter is not specified, the default ``postgres`` database is created in the DB instance.
|
|
211
|
+
Constraints:
|
|
212
|
+
+ Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0-9).
|
|
213
|
+
+ Must contain 1 to 63 characters.
|
|
214
|
+
+ Can't be a word reserved by the specified database engine
|
|
215
|
+
|
|
216
|
+
*Oracle*
|
|
217
|
+
The Oracle System ID (SID) of the created DB instance. If you specify ``null``, the default value ``ORCL`` is used. You can't specify the string NULL, or any other reserved word, for ``DBName``.
|
|
218
|
+
Default: ``ORCL``
|
|
219
|
+
Constraints:
|
|
220
|
+
+ Can't be longer than 8 characters
|
|
221
|
+
|
|
222
|
+
*SQL Server*
|
|
223
|
+
Not applicable. Must be null.
|
|
155
224
|
*/
|
|
156
225
|
DBName?: string;
|
|
157
226
|
/**
|
|
158
227
|
* The name of an existing DB parameter group or a reference to an [AWS::RDS::DBParameterGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html) resource created in the template.
|
|
159
228
|
To list all of the available DB parameter group names, use the following command:
|
|
160
|
-
|
|
229
|
+
``aws rds describe-db-parameter-groups --query "DBParameterGroups[].DBParameterGroupName" --output text``
|
|
161
230
|
If any of the data members of the referenced parameter group are changed during an update, the DB instance might need to be restarted, which causes some interruption. If the parameter group contains static parameters, whether they were changed or not, an update triggers a reboot.
|
|
162
231
|
If you don't specify a value for ``DBParameterGroupName`` property, the default DB parameter group for the specified engine and engine version is used.
|
|
163
232
|
*/
|
|
@@ -166,34 +235,61 @@ export type RDSDBInstanceProperties = {
|
|
|
166
235
|
* A list of the DB security groups to assign to the DB instance. The list can include both the name of existing DB security groups or references to AWS::RDS::DBSecurityGroup resources created in the template.
|
|
167
236
|
If you set DBSecurityGroups, you must not set VPCSecurityGroups, and vice versa. Also, note that the DBSecurityGroups property exists only for backwards compatibility with older regions and is no longer recommended for providing security information to an RDS DB instance. Instead, use VPCSecurityGroups.
|
|
168
237
|
If you specify this property, AWS CloudFormation sends only the following properties (if specified) to Amazon RDS during create operations:
|
|
169
|
-
+
|
|
170
|
-
+
|
|
171
|
-
+
|
|
172
|
-
+
|
|
173
|
-
+
|
|
174
|
-
+
|
|
175
|
-
+
|
|
176
|
-
+
|
|
177
|
-
+
|
|
178
|
-
+
|
|
179
|
-
+
|
|
180
|
-
+
|
|
181
|
-
+
|
|
182
|
-
+
|
|
183
|
-
+
|
|
238
|
+
+ ``AllocatedStorage``
|
|
239
|
+
+ ``AutoMinorVersionUpgrade``
|
|
240
|
+
+ ``AvailabilityZone``
|
|
241
|
+
+ ``BackupRetentionPeriod``
|
|
242
|
+
+ ``CharacterSetName``
|
|
243
|
+
+ ``DBInstanceClass``
|
|
244
|
+
+ ``DBName``
|
|
245
|
+
+ ``DBParameterGroupName``
|
|
246
|
+
+ ``DBSecurityGroups``
|
|
247
|
+
+ ``DBSubnetGroupName``
|
|
248
|
+
+ ``Engine``
|
|
249
|
+
+ ``EngineVersion``
|
|
250
|
+
+ ``Iops``
|
|
251
|
+
+ ``LicenseModel``
|
|
252
|
+
+ ``MasterUsername``
|
|
253
|
+
+ ``MasterUserPassword``
|
|
254
|
+
+ ``MultiAZ``
|
|
255
|
+
+ ``OptionGroupName``
|
|
256
|
+
+ ``PreferredBackupWindow``
|
|
257
|
+
+ ``PreferredMaintenanceWindow``
|
|
258
|
+
|
|
259
|
+
All other properties are ignored. Specify a virtual private cloud (VPC) security group if you want to submit other properties, such as ``StorageType``, ``StorageEncrypted``, or ``KmsKeyId``. If you're already using the ``DBSecurityGroups`` property, you can't use these other properties by updating your DB instance to use a VPC security group. You must recreate the DB instance.
|
|
184
260
|
*/
|
|
185
261
|
DBSecurityGroups?: string[];
|
|
186
262
|
/**
|
|
187
263
|
* The name or Amazon Resource Name (ARN) of the DB snapshot that's used to restore the DB instance. If you're restoring from a shared manual DB snapshot, you must specify the ARN of the snapshot.
|
|
188
264
|
By specifying this property, you can create a DB instance from the specified DB snapshot. If the ``DBSnapshotIdentifier`` property is an empty string or the ``AWS::RDS::DBInstance`` declaration has no ``DBSnapshotIdentifier`` property, AWS CloudFormation creates a new database. If the property contains a value (other than an empty string), AWS CloudFormation creates a database from the specified snapshot. If a snapshot with the specified name doesn't exist, AWS CloudFormation can't create the database and it rolls back the stack.
|
|
189
|
-
Some DB instance properties aren't valid when you restore from a snapshot, such as the ``MasterUsername`` and ``MasterUserPassword`` properties. For information about the properties that you can specify, see the ``RestoreDBInstanceFromDBSnapshot`` action in the *
|
|
265
|
+
Some DB instance properties aren't valid when you restore from a snapshot, such as the ``MasterUsername`` and ``MasterUserPassword`` properties. For information about the properties that you can specify, see the ``RestoreDBInstanceFromDBSnapshot`` action in the *Amazon RDS API Reference*.
|
|
266
|
+
After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you must specify the same ``DBSnapshotIdentifier`` property for any future updates to the DB instance. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.
|
|
267
|
+
If you specify the ``DBSnapshotIdentifier`` property to restore a DB instance (as opposed to specifying it for DB instance updates), then don't specify the following properties:
|
|
268
|
+
+ ``CharacterSetName``
|
|
269
|
+
+ ``DBClusterIdentifier``
|
|
270
|
+
+ ``DBName``
|
|
271
|
+
+ ``DeleteAutomatedBackups``
|
|
272
|
+
+ ``EnablePerformanceInsights``
|
|
273
|
+
+ ``KmsKeyId``
|
|
274
|
+
+ ``MasterUsername``
|
|
275
|
+
+ ``MasterUserPassword``
|
|
276
|
+
+ ``PerformanceInsightsKMSKeyId``
|
|
277
|
+
+ ``PerformanceInsightsRetentionPeriod``
|
|
278
|
+
+ ``PromotionTier``
|
|
279
|
+
+ ``SourceDBInstanceIdentifier``
|
|
280
|
+
+ ``SourceRegion``
|
|
281
|
+
+ ``StorageEncrypted`` (for an encrypted snapshot)
|
|
282
|
+
+ ``Timezone``
|
|
283
|
+
|
|
284
|
+
*Amazon Aurora*
|
|
285
|
+
Not applicable. Snapshot restore is managed by the DB cluster.
|
|
190
286
|
*/
|
|
191
287
|
DBSnapshotIdentifier?: string;
|
|
192
288
|
/**
|
|
193
289
|
* A DB subnet group to associate with the DB instance. If you update this value, the new subnet group must be a subnet group in a new VPC.
|
|
194
290
|
If there's no DB subnet group, then the DB instance isn't a VPC DB instance.
|
|
195
291
|
For more information about using Amazon RDS in a VPC, see [Using Amazon RDS with Amazon Virtual Private Cloud (VPC)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html) in the *Amazon RDS User Guide*.
|
|
196
|
-
|
|
292
|
+
*Amazon Aurora*
|
|
197
293
|
Not applicable. The DB subnet group is managed by the DB cluster. If specified, the setting must match the DB cluster setting.
|
|
198
294
|
*/
|
|
199
295
|
DBSubnetGroupName?: string;
|
|
@@ -203,7 +299,7 @@ export type RDSDBInstanceProperties = {
|
|
|
203
299
|
DedicatedLogVolume?: boolean;
|
|
204
300
|
/**
|
|
205
301
|
* A value that indicates whether to remove automated backups immediately after the DB instance is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB instance is deleted.
|
|
206
|
-
|
|
302
|
+
*Amazon Aurora*
|
|
207
303
|
Not applicable. When you delete a DB cluster, all automated backups for that DB cluster are deleted and can't be recovered. Manual DB cluster snapshots of the DB cluster are not deleted.
|
|
208
304
|
*/
|
|
209
305
|
DeleteAutomatedBackups?: boolean;
|
|
@@ -265,7 +361,7 @@ export type RDSDBInstanceProperties = {
|
|
|
265
361
|
Valid values: ``audit``, ``error``, ``general``, ``slowquery``
|
|
266
362
|
*Microsoft SQL Server*
|
|
267
363
|
Valid values: ``agent``, ``error``
|
|
268
|
-
|
|
364
|
+
*MySQL*
|
|
269
365
|
Valid values: ``audit``, ``error``, ``general``, ``slowquery``
|
|
270
366
|
*Oracle*
|
|
271
367
|
Valid values: ``alert``, ``audit``, ``listener``, ``trace``, ``oemagent``
|
|
@@ -286,30 +382,30 @@ export type RDSDBInstanceProperties = {
|
|
|
286
382
|
*/
|
|
287
383
|
EnablePerformanceInsights?: boolean;
|
|
288
384
|
/**
|
|
289
|
-
* The name of the database engine
|
|
290
|
-
|
|
291
|
-
|
|
385
|
+
* The name of the database engine to use for this DB instance. Not every database engine is available in every AWS Region.
|
|
386
|
+
This property is required when creating a DB instance.
|
|
387
|
+
You can change the architecture of an Oracle database from the non-container database (CDB) architecture to the CDB architecture by updating the ``Engine`` value in your templates from ``oracle-ee`` or ``oracle-ee-cdb`` to ``oracle-se2-cdb``. Converting to the CDB architecture requires an interruption.
|
|
292
388
|
Valid Values:
|
|
293
|
-
+
|
|
294
|
-
+
|
|
389
|
+
+ ``aurora-mysql`` (for Aurora MySQL DB instances)
|
|
390
|
+
+ ``aurora-postgresql`` (for Aurora PostgreSQL DB instances)
|
|
295
391
|
+ ``custom-oracle-ee`` (for RDS Custom for Oracle DB instances)
|
|
296
|
-
+
|
|
297
|
-
+
|
|
298
|
-
+
|
|
299
|
-
+
|
|
300
|
-
+
|
|
301
|
-
+
|
|
302
|
-
+
|
|
303
|
-
+
|
|
304
|
-
+
|
|
305
|
-
+
|
|
306
|
-
+
|
|
307
|
-
+
|
|
308
|
-
+
|
|
309
|
-
+
|
|
310
|
-
+
|
|
311
|
-
+
|
|
312
|
-
+
|
|
392
|
+
+ ``custom-oracle-ee-cdb`` (for RDS Custom for Oracle DB instances)
|
|
393
|
+
+ ``custom-sqlserver-ee`` (for RDS Custom for SQL Server DB instances)
|
|
394
|
+
+ ``custom-sqlserver-se`` (for RDS Custom for SQL Server DB instances)
|
|
395
|
+
+ ``custom-sqlserver-web`` (for RDS Custom for SQL Server DB instances)
|
|
396
|
+
+ ``db2-ae``
|
|
397
|
+
+ ``db2-se``
|
|
398
|
+
+ ``mariadb``
|
|
399
|
+
+ ``mysql``
|
|
400
|
+
+ ``oracle-ee``
|
|
401
|
+
+ ``oracle-ee-cdb``
|
|
402
|
+
+ ``oracle-se2``
|
|
403
|
+
+ ``oracle-se2-cdb``
|
|
404
|
+
+ ``postgres``
|
|
405
|
+
+ ``sqlserver-ee``
|
|
406
|
+
+ ``sqlserver-se``
|
|
407
|
+
+ ``sqlserver-ex``
|
|
408
|
+
+ ``sqlserver-web``
|
|
313
409
|
*/
|
|
314
410
|
Engine?: string;
|
|
315
411
|
/**
|
|
@@ -320,10 +416,16 @@ export type RDSDBInstanceProperties = {
|
|
|
320
416
|
Not applicable. The version number of the database engine to be used by the DB instance is managed by the DB cluster.
|
|
321
417
|
*Db2*
|
|
322
418
|
See [Amazon RDS for Db2](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Db2.html#Db2.Concepts.VersionMgmt) in the *Amazon RDS User Guide.*
|
|
323
|
-
|
|
419
|
+
*MariaDB*
|
|
324
420
|
See [MariaDB on Amazon RDS Versions](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html#MariaDB.Concepts.VersionMgmt) in the *Amazon RDS User Guide.*
|
|
325
|
-
|
|
326
|
-
See [Microsoft SQL Server Versions on Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.
|
|
421
|
+
*Microsoft SQL Server*
|
|
422
|
+
See [Microsoft SQL Server Versions on Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.VersionSupport) in the *Amazon RDS User Guide.*
|
|
423
|
+
*MySQL*
|
|
424
|
+
See [MySQL on Amazon RDS Versions](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MySQL.html#MySQL.Concepts.VersionMgmt) in the *Amazon RDS User Guide.*
|
|
425
|
+
*Oracle*
|
|
426
|
+
See [Oracle Database Engine Release Notes](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.Oracle.PatchComposition.html) in the *Amazon RDS User Guide.*
|
|
427
|
+
*PostgreSQL*
|
|
428
|
+
See [Supported PostgreSQL Database Versions](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions) in the *Amazon RDS User Guide.*
|
|
327
429
|
*/
|
|
328
430
|
EngineVersion?: string;
|
|
329
431
|
/**
|
|
@@ -331,15 +433,18 @@ export type RDSDBInstanceProperties = {
|
|
|
331
433
|
If you specify this property, you must follow the range of allowed ratios of your requested IOPS rate to the amount of storage that you allocate (IOPS to allocated storage). For example, you can provision an Oracle database instance with 1000 IOPS and 200 GiB of storage (a ratio of 5:1), or specify 2000 IOPS with 200 GiB of storage (a ratio of 10:1). For more information, see [Amazon RDS Provisioned IOPS Storage to Improve Performance](https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/CHAP_Storage.html#USER_PIOPS) in the *Amazon RDS User Guide*.
|
|
332
434
|
If you specify ``io1`` for the ``StorageType`` property, then you must also specify the ``Iops`` property.
|
|
333
435
|
Constraints:
|
|
334
|
-
+
|
|
335
|
-
|
|
436
|
+
+ For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance.
|
|
437
|
+
+ For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.
|
|
336
438
|
*/
|
|
337
439
|
Iops?: number;
|
|
338
440
|
/**
|
|
339
441
|
* The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef``. If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true.
|
|
340
442
|
If you specify the ``SourceDBInstanceIdentifier`` property, the value is inherited from the source DB instance if the read replica is created in the same region.
|
|
341
443
|
If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region.
|
|
342
|
-
If you specify the ``SnapshotIdentifier`` property, the ``StorageEncrypted`` property value is inherited from the snapshot, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is
|
|
444
|
+
If you specify the ``SnapshotIdentifier`` property, the ``StorageEncrypted`` property value is inherited from the snapshot, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used.
|
|
445
|
+
If you specify ``DBSecurityGroups``, AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see [Using Amazon RDS with Amazon VPC](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html) in the *Amazon RDS User Guide*.
|
|
446
|
+
*Amazon Aurora*
|
|
447
|
+
Not applicable. The KMS key identifier is managed by the DB cluster.
|
|
343
448
|
*/
|
|
344
449
|
KmsKeyId?: string;
|
|
345
450
|
/**
|
|
@@ -411,7 +516,22 @@ export type RDSDBInstanceProperties = {
|
|
|
411
516
|
+ Can't be a reserved word for the chosen database engine.
|
|
412
517
|
|
|
413
518
|
*RDS for MySQL*
|
|
414
|
-
|
|
519
|
+
Constraints:
|
|
520
|
+
+ Must be 1 to 16 letters or numbers.
|
|
521
|
+
+ First character must be a letter.
|
|
522
|
+
+ Can't be a reserved word for the chosen database engine.
|
|
523
|
+
|
|
524
|
+
*RDS for Oracle*
|
|
525
|
+
Constraints:
|
|
526
|
+
+ Must be 1 to 30 letters or numbers.
|
|
527
|
+
+ First character must be a letter.
|
|
528
|
+
+ Can't be a reserved word for the chosen database engine.
|
|
529
|
+
|
|
530
|
+
*RDS for PostgreSQL*
|
|
531
|
+
Constraints:
|
|
532
|
+
+ Must be 1 to 63 letters or numbers.
|
|
533
|
+
+ First character must be a letter.
|
|
534
|
+
+ Can't be a reserved word for the chosen database engine.
|
|
415
535
|
* @minLength `1`
|
|
416
536
|
* @maxLength `128`
|
|
417
537
|
* @pattern `^[a-zA-Z][a-zA-Z0-9_]{0,127}$`
|
|
@@ -496,10 +616,10 @@ export type RDSDBInstanceProperties = {
|
|
|
496
616
|
/**
|
|
497
617
|
* The daily time range during which automated backups are created if automated backups are enabled, using the ``BackupRetentionPeriod`` parameter. For more information, see [Backup Window](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html#USER_WorkingWithAutomatedBackups.BackupWindow) in the *Amazon RDS User Guide.*
|
|
498
618
|
Constraints:
|
|
499
|
-
+
|
|
500
|
-
+
|
|
501
|
-
+
|
|
502
|
-
+
|
|
619
|
+
+ Must be in the format ``hh24:mi-hh24:mi``.
|
|
620
|
+
+ Must be in Universal Coordinated Time (UTC).
|
|
621
|
+
+ Must not conflict with the preferred maintenance window.
|
|
622
|
+
+ Must be at least 30 minutes.
|
|
503
623
|
|
|
504
624
|
*Amazon Aurora*
|
|
505
625
|
Not applicable. The daily time range for creating automated backups is managed by the DB cluster.
|
|
@@ -566,7 +686,12 @@ export type RDSDBInstanceProperties = {
|
|
|
566
686
|
* If you want to create a read replica DB instance, specify the ID of the source DB instance. Each DB instance can have a limited number of read replicas. For more information, see [Working with Read Replicas](https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/USER_ReadRepl.html) in the *Amazon RDS User Guide*.
|
|
567
687
|
For information about constraints that apply to DB instance identifiers, see [Naming constraints in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints) in the *Amazon RDS User Guide*.
|
|
568
688
|
The ``SourceDBInstanceIdentifier`` property determines whether a DB instance is a read replica. If you remove the ``SourceDBInstanceIdentifier`` property from your template and then update your stack, AWS CloudFormation promotes the Read Replica to a standalone DB instance.
|
|
569
|
-
+ If you specify a source DB instance that uses VPC security groups, we recommend that you specify the ``VPCSecurityGroups`` property. If you don't specify the
|
|
689
|
+
+ If you specify a source DB instance that uses VPC security groups, we recommend that you specify the ``VPCSecurityGroups`` property. If you don't specify the property, the read replica inherits the value of the ``VPCSecurityGroups`` property from the source DB when you create the replica. However, if you update the stack, AWS CloudFormation reverts the replica's ``VPCSecurityGroups`` property to the default value because it's not defined in the stack's template. This change might cause unexpected issues.
|
|
690
|
+
+ Read replicas don't support deletion policies. AWS CloudFormation ignores any deletion policy that's associated with a read replica.
|
|
691
|
+
+ If you specify ``SourceDBInstanceIdentifier``, don't specify the ``DBSnapshotIdentifier`` property. You can't create a read replica from a snapshot.
|
|
692
|
+
+ Don't set the ``BackupRetentionPeriod``, ``DBName``, ``MasterUsername``, ``MasterUserPassword``, and ``PreferredBackupWindow`` properties. The database attributes are inherited from the source DB instance, and backups are disabled for read replicas.
|
|
693
|
+
+ If the source DB instance is in a different region than the read replica, specify the source region in ``SourceRegion``, and specify an ARN for a valid DB instance in ``SourceDBInstanceIdentifier``. For more information, see [Constructing a Amazon RDS Amazon Resource Name (ARN)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Tagging.html#USER_Tagging.ARN) in the *Amazon RDS User Guide*.
|
|
694
|
+
+ For DB instances in Amazon Aurora clusters, don't specify this property. Amazon RDS automatically assigns writer and reader DB instances.
|
|
570
695
|
*/
|
|
571
696
|
SourceDBInstanceIdentifier?: string;
|
|
572
697
|
/**
|
|
@@ -583,8 +708,8 @@ export type RDSDBInstanceProperties = {
|
|
|
583
708
|
If you specify the ``SourceDBInstanceIdentifier`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used.
|
|
584
709
|
If you specify the ``DBSnapshotIdentifier`` and the specified snapshot is encrypted, don't specify this property. The value is inherited from the snapshot, and the specified ``KmsKeyId`` property is used.
|
|
585
710
|
If you specify the ``DBSnapshotIdentifier`` and the specified snapshot isn't encrypted, you can use this property to specify that the restored DB instance is encrypted. Specify the ``KmsKeyId`` property for the KMS key to use for encryption. If you don't want the restored DB instance to be encrypted, then don't set this property or set it to ``false``.
|
|
586
|
-
|
|
587
|
-
Not applicable. The
|
|
711
|
+
*Amazon Aurora*
|
|
712
|
+
Not applicable. The encryption for DB instances is managed by the DB cluster.
|
|
588
713
|
*/
|
|
589
714
|
StorageEncrypted?: boolean;
|
|
590
715
|
/**
|
|
@@ -593,14 +718,11 @@ export type RDSDBInstanceProperties = {
|
|
|
593
718
|
*/
|
|
594
719
|
StorageThroughput?: number;
|
|
595
720
|
/**
|
|
596
|
-
*
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
For more information, see [Amazon RDS DB Instance Storage](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html) in the *Amazon RDS User Guide*.
|
|
602
|
-
*Amazon Aurora*
|
|
603
|
-
Not applicable. Aurora data is stored in the cluster volume, which is a single, virtual volume that uses solid state drives (SSDs).
|
|
721
|
+
* The storage type to associate with the DB instance.
|
|
722
|
+
If you specify ``io1``, ``io2``, or ``gp3``, you must also include a value for the ``Iops`` parameter.
|
|
723
|
+
This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.
|
|
724
|
+
Valid Values: ``gp2 | gp3 | io1 | io2 | standard``
|
|
725
|
+
Default: ``io1``, if the ``Iops`` parameter is specified. Otherwise, ``gp2``.
|
|
604
726
|
*/
|
|
605
727
|
StorageType?: string;
|
|
606
728
|
/**
|
|
@@ -630,7 +752,12 @@ export type RDSDBInstanceProperties = {
|
|
|
630
752
|
If you set ``VPCSecurityGroups``, you must not set [DBSecurityGroups](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsecuritygroups), and vice versa.
|
|
631
753
|
You can migrate a DB instance in your stack from an RDS DB security group to a VPC security group, but keep the following in mind:
|
|
632
754
|
+ You can't revert to using an RDS security group after you establish a VPC security group membership.
|
|
633
|
-
+ When you migrate your DB instance to VPC security groups, if your stack update rolls back because the DB
|
|
755
|
+
+ When you migrate your DB instance to VPC security groups, if your stack update rolls back because the DB instance update fails or because an update fails in another AWS CloudFormation resource, the rollback fails because it can't revert to an RDS security group.
|
|
756
|
+
+ To use the properties that are available when you use a VPC security group, you must recreate the DB instance. If you don't, AWS CloudFormation submits only the property values that are listed in the [DBSecurityGroups](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsecuritygroups) property.
|
|
757
|
+
|
|
758
|
+
To avoid this situation, migrate your DB instance to using VPC security groups only when that is the only change in your stack template.
|
|
759
|
+
*Amazon Aurora*
|
|
760
|
+
Not applicable. The associated list of EC2 VPC security groups is managed by the DB cluster. If specified, the setting must match the DB cluster setting.
|
|
634
761
|
*/
|
|
635
762
|
VPCSecurityGroups?: string[];
|
|
636
763
|
};
|
|
@@ -754,7 +881,23 @@ export type Tag = {
|
|
|
754
881
|
For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.
|
|
755
882
|
For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.
|
|
756
883
|
If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.
|
|
757
|
-
If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an
|
|
884
|
+
If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).
|
|
885
|
+
*Updating DB instances*
|
|
886
|
+
When properties labeled "*Update requires:* [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.
|
|
887
|
+
We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:
|
|
888
|
+
1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.
|
|
889
|
+
1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).
|
|
890
|
+
1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.
|
|
891
|
+
After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.
|
|
892
|
+
1. Update the stack.
|
|
893
|
+
|
|
894
|
+
For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).
|
|
895
|
+
*Deleting DB instances*
|
|
896
|
+
For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:
|
|
897
|
+
1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.
|
|
898
|
+
1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.
|
|
899
|
+
|
|
900
|
+
For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).
|
|
758
901
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html}
|
|
759
902
|
*/
|
|
760
903
|
export declare class RDSDBInstance extends $Resource<"AWS::RDS::DBInstance", RDSDBInstanceProperties, RDSDBInstanceAttributes> {
|
|
@@ -4,7 +4,23 @@ import { Resource as $Resource } from "@awboost/cfn-template-builder/template/re
|
|
|
4
4
|
For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.
|
|
5
5
|
For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.
|
|
6
6
|
If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.
|
|
7
|
-
If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an
|
|
7
|
+
If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).
|
|
8
|
+
*Updating DB instances*
|
|
9
|
+
When properties labeled "*Update requires:* [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.
|
|
10
|
+
We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:
|
|
11
|
+
1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.
|
|
12
|
+
1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).
|
|
13
|
+
1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.
|
|
14
|
+
After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.
|
|
15
|
+
1. Update the stack.
|
|
16
|
+
|
|
17
|
+
For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).
|
|
18
|
+
*Deleting DB instances*
|
|
19
|
+
For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:
|
|
20
|
+
1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.
|
|
21
|
+
1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.
|
|
22
|
+
|
|
23
|
+
For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).
|
|
8
24
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html}
|
|
9
25
|
*/
|
|
10
26
|
export class RDSDBInstance extends $Resource {
|
|
@@ -29,7 +29,7 @@ export type RDSDBParameterGroupProperties = {
|
|
|
29
29
|
* The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a DB engine and engine version compatible with that DB parameter group family.
|
|
30
30
|
The DB parameter group family can't be changed when updating a DB parameter group.
|
|
31
31
|
To list all of the available parameter group families, use the following command:
|
|
32
|
-
|
|
32
|
+
``aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily"``
|
|
33
33
|
The output contains duplicates.
|
|
34
34
|
For more information, see ``CreateDBParameterGroup``.
|
|
35
35
|
*/
|
|
@@ -39,12 +39,12 @@ export type RDSDBParameterGroupProperties = {
|
|
|
39
39
|
RDS for Db2 requires you to bring your own Db2 license. You must enter your IBM customer ID (``rds.ibm_customer_id``) and site number (``rds.ibm_site_id``) before starting a Db2 instance.
|
|
40
40
|
For more information about DB parameters and DB parameter groups for Amazon RDS DB engines, see [Working with DB Parameter Groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html) in the *Amazon RDS User Guide*.
|
|
41
41
|
For more information about DB cluster and DB instance parameters and parameter groups for Amazon Aurora DB engines, see [Working with DB Parameter Groups and DB Cluster Parameter Groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.
|
|
42
|
-
|
|
42
|
+
AWS CloudFormation doesn't support specifying an apply method for each individual parameter. The default apply method for each parameter is used.
|
|
43
43
|
*/
|
|
44
44
|
Parameters?: Record<string, any>;
|
|
45
45
|
/**
|
|
46
46
|
* An optional array of key-value pairs to apply to this DB parameter group.
|
|
47
|
-
|
|
47
|
+
Currently, this is the only property that supports drift detection.
|
|
48
48
|
* @maxLength `50`
|
|
49
49
|
*/
|
|
50
50
|
Tags?: Tag[];
|
|
@@ -25,12 +25,18 @@ export type WorkSpacesWebPortalProperties = {
|
|
|
25
25
|
* @pattern `^.+$`
|
|
26
26
|
*/
|
|
27
27
|
DisplayName?: string;
|
|
28
|
+
InstanceType?: InstanceType;
|
|
28
29
|
/**
|
|
29
30
|
* @minLength `20`
|
|
30
31
|
* @maxLength `2048`
|
|
31
32
|
* @pattern `^arn:[\w+=\/,.@-]+:[a-zA-Z0-9\-]+:[a-zA-Z0-9\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\/[a-fA-F0-9\-]{36})+$`
|
|
32
33
|
*/
|
|
33
34
|
IpAccessSettingsArn?: string;
|
|
35
|
+
/**
|
|
36
|
+
* @min `1`
|
|
37
|
+
* @max `5000`
|
|
38
|
+
*/
|
|
39
|
+
MaxConcurrentSessions?: number;
|
|
34
40
|
/**
|
|
35
41
|
* @minLength `20`
|
|
36
42
|
* @maxLength `2048`
|
|
@@ -110,6 +116,11 @@ export type BrowserType = "Chrome";
|
|
|
110
116
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-portal-encryptioncontextmap.html}
|
|
111
117
|
*/
|
|
112
118
|
export type EncryptionContextMap = Record<string, string>;
|
|
119
|
+
/**
|
|
120
|
+
* Type definition for `AWS::WorkSpacesWeb::Portal.InstanceType`.
|
|
121
|
+
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-portal-instancetype.html}
|
|
122
|
+
*/
|
|
123
|
+
export type InstanceType = "standard.regular" | "standard.large" | "standard.xlarge";
|
|
113
124
|
/**
|
|
114
125
|
* Type definition for `AWS::WorkSpacesWeb::Portal.PortalStatus`.
|
|
115
126
|
* @see {@link https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspacesweb-portal-portalstatus.html}
|