AWS::Neptune::DBCluster - AWS CloudFormation

AWS::Neptune::DBCluster

The AWS::Neptune::DBCluster resource creates an Amazon Neptune DB cluster. Neptune is a fully managed graph database.

Note

Currently, you can create this resource only in AWS Regions in which Amazon Neptune is supported.

If no DeletionPolicy is set for AWS::Neptune::DBCluster resources, the default deletion behavior is that the entire volume will be deleted without a snapshot. To retain a backup of the volume, the DeletionPolicy should be set to Snapshot. For more information about how AWS CloudFormation deletes resources, see DeletionPolicy Attribute.

You can use AWS::Neptune::DBCluster.DeletionProtection to help guard against unintended deletion of your DB cluster.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::Neptune::DBCluster", "Properties" : { "AvailabilityZones" : [ String, ... ], "BackupRetentionPeriod" : Integer, "DBClusterIdentifier" : String, "DBClusterParameterGroupName" : String, "DBSubnetGroupName" : String, "DeletionProtection" : Boolean, "EnableCloudwatchLogsExports" : [ String, ... ], "EngineVersion" : String, "IamAuthEnabled" : Boolean, "KmsKeyId" : String, "Port" : Integer, "PreferredBackupWindow" : String, "PreferredMaintenanceWindow" : String, "RestoreToTime" : String, "RestoreType" : String, "SnapshotIdentifier" : String, "SourceDBClusterIdentifier" : String, "StorageEncrypted" : Boolean, "Tags" : [ Tag, ... ], "UseLatestRestorableTime" : Boolean, "VpcSecurityGroupIds" : [ String, ... ] } }

YAML

Type: AWS::Neptune::DBCluster Properties: AvailabilityZones: - String BackupRetentionPeriod: Integer DBClusterIdentifier: String DBClusterParameterGroupName: String DBSubnetGroupName: String DeletionProtection: Boolean EnableCloudwatchLogsExports: - String EngineVersion: String IamAuthEnabled: Boolean KmsKeyId: String Port: Integer PreferredBackupWindow: String PreferredMaintenanceWindow: String RestoreToTime: String RestoreType: String SnapshotIdentifier: String SourceDBClusterIdentifier: String StorageEncrypted: Boolean Tags: - Tag UseLatestRestorableTime: Boolean VpcSecurityGroupIds: - String

Properties

AvailabilityZones

Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.

Required: No

Type: List of String

Update requires: Replacement

BackupRetentionPeriod

Specifies the number of days for which automatic DB snapshots are retained.

An update may require some interruption. See ModifyDBInstance in the Amazon Neptune User Guide for more information.

Required: No

Type: Integer

Update requires: No interruption

DBClusterIdentifier

Contains a user-supplied DB cluster identifier. This identifier is the unique key that identifies a DB cluster.

Required: No

Type: String

Update requires: Replacement

DBClusterParameterGroupName

Provides the name of the DB cluster parameter group.

An update may require some interruption. See ModifyDBInstance in the Amazon Neptune User Guide for more information.

Required: No

Type: String

Update requires: No interruption

DBSubnetGroupName

Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.

Required: No

Type: String

Update requires: Replacement

DeletionProtection

Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled.

Required: No

Type: Boolean

Update requires: No interruption

EnableCloudwatchLogsExports

Specifies a list of log types that are enabled for export to CloudWatch Logs.

Required: No

Type: List of String

Update requires: No interruption

EngineVersion

Indicates the database engine version.

Required: No

Type: String

Update requires: Replacement

IamAuthEnabled

True if mapping of AWS Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.

Required: No

Type: Boolean

Update requires: No interruption

KmsKeyId

If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB cluster.

Required: No

Type: String

Update requires: Replacement

Port

Specifies the port that the database engine is listening on.

Required: No

Type: Integer

Update requires: No interruption

PreferredBackupWindow

Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

An update may require some interruption.

Required: No

Type: String

Update requires: No interruption

PreferredMaintenanceWindow

Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Required: No

Type: String

Update requires: No interruption

RestoreToTime

Not currently supported by AWS CloudFormation.

Required: No

Type: String

Update requires: Replacement

RestoreType

Not currently supported by AWS CloudFormation.

Required: No

Type: String

Update requires: Replacement

SnapshotIdentifier

Specifies the identifier for a DB cluster snapshot. Must match the identifier of an existing snapshot.

After you restore a DB cluster using a SnapshotIdentifier, you must specify the same SnapshotIdentifier for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the snapshot again, and the data in the database is not changed.

However, if you don't specify the SnapshotIdentifier, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, the DB cluster is restored from the snapshot specified by the SnapshotIdentifier, and the original DB cluster is deleted.

Required: No

Type: String

Update requires: Replacement

SourceDBClusterIdentifier

Not currently supported by AWS CloudFormation.

Required: No

Type: String

Update requires: Replacement

StorageEncrypted

Indicates whether the DB cluster is encrypted.

If you specify the DBClusterIdentifier, DBSnapshotIdentifier, or SourceDBInstanceIdentifier property, don't specify this property. The value is inherited from the cluster, snapshot, or source DB instance. If you specify the KmsKeyId property, you must enable encryption.

If you specify the KmsKeyId, you must enable encryption by setting StorageEncrypted to true.

Required: No

Type: Boolean

Update requires: Replacement

Tags

The tags assigned to this cluster.

Required: No

Type: List of Tag

Update requires: No interruption

UseLatestRestorableTime

Not currently supported by AWS CloudFormation.

Required: No

Type: Boolean

Update requires: Replacement

VpcSecurityGroupIds

Provides a list of VPC security groups that the DB cluster belongs to.

Required: No

Type: List of String

Update requires: No interruption

Return Values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the resource name.

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

ClusterResourceId

The resource id for the DB cluster. For example: cluster-ABCD1234EFGH5678IJKL90MNOP. The cluster ID uniquely identifies the cluster and is used in things like IAM authentication policies.

Endpoint

The connection endpoint for the DB cluster. For example: mystack-mydbcluster-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com

Port

The port number on which the DB cluster accepts connections. For example: 8182.

ReadEndpoint

The reader endpoint for the DB cluster. For example: mystack-mydbcluster-ro-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com