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" : { "AssociatedRoles" : [ DBClusterRole, ... ], "AvailabilityZones" : [ String, ... ], "BackupRetentionPeriod" : Integer, "CopyTagsToSnapshot" : Boolean, "DBClusterIdentifier" : String, "DBClusterParameterGroupName" : String, "DBInstanceParameterGroupName" : String, "DBPort" : Integer, "DBSubnetGroupName" : String, "DeletionProtection" : Boolean, "EnableCloudwatchLogsExports" : [ String, ... ], "EngineVersion" : String, "IamAuthEnabled" : Boolean, "KmsKeyId" : String, "Port" : String, "PreferredBackupWindow" : String, "PreferredMaintenanceWindow" : String, "RestoreToTime" : String, "RestoreType" : String, "ServerlessScalingConfiguration" : ServerlessScalingConfiguration, "SnapshotIdentifier" : String, "SourceDBClusterIdentifier" : String, "StorageEncrypted" : Boolean, "Tags" : [ Tag, ... ], "UseLatestRestorableTime" : Boolean, "VpcSecurityGroupIds" : [ String, ... ] } }

Properties

AssociatedRoles

Provides a list of the Amazon Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other Amazon services on your behalf.

Required: No

Type: Array of DBClusterRole

Update requires: No interruption

AvailabilityZones

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

Required: No

Type: Array 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

Minimum: 1

Update requires: No interruption

CopyTagsToSnapshot

If set to true, tags are copied to any snapshot of the DB cluster that is created.

Required: No

Type: Boolean

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

Pattern: ^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$

Minimum: 1

Maximum: 63

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

DBInstanceParameterGroupName

The name of the DB parameter group to apply to all instances of the DB cluster. Used only in case of a major engine version upgrade request

Note that when you apply a parameter group using DBInstanceParameterGroupName, parameter changes are applied immediately, not during the next maintenance window.

Constraints
  • The DB parameter group must be in the same DB parameter group family as the target DB cluster version.

  • The DBInstanceParameterGroupName parameter is only valid for major engine version upgrades.

Required: No

Type: String

Update requires: No interruption

DBPort

The port number on which the DB instances in the DB cluster accept connections.

If not specified, the default port used is 8182.

Note

The Port property will soon be deprecated. Please update existing templates to use the new DBPort property that has the same functionality.

Required: No

Type: Integer

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: Array of String

Update requires: No interruption

EngineVersion

Indicates the database engine version.

Required: No

Type: String

Update requires: No interruption

IamAuthEnabled

True if mapping of Amazon 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 Amazon KMS key identifier for the encrypted DB cluster.

Required: No

Type: String

Update requires: Replacement

Port

The port number on which the DB instances in the DB cluster accept connections.

If not specified, the default port used is 8182.

Note

This property will soon be deprecated. Please update existing templates to use the new DBPort property that has the same functionality.

Required: No

Type: String

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

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

Required: No

Type: String

Update requires: Replacement

RestoreType

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

Required: No

Type: String

Update requires: Replacement

ServerlessScalingConfiguration

Property description not available.

Required: No

Type: ServerlessScalingConfiguration

Update requires: No interruption

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

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

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: Array of Tag

Maximum: 50

Update requires: No interruption

UseLatestRestorableTime

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

Required: No

Type: Boolean

Update requires: Replacement

VpcSecurityGroupIds

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

Required: No

Type: Array 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 instances in the DB cluster accept connections.

ReadEndpoint

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