Cluster

class Cluster : KotlinCustomResource

Provides an Neptune Cluster Resource. A Cluster Resource defines attributes that are applied to the entire cluster of Neptune Cluster Instances. Changes to a Neptune Cluster can occur when you manually change a parameter, such as backup_retention_period, and are reflected in the next maintenance window. Because of this, this provider may report a difference in its planning phase because a modification has not yet taken place. You can use the apply_immediately flag to instruct the service to apply the change immediately (see documentation below).

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const _default = new aws.neptune.Cluster("default", {
clusterIdentifier: "neptune-cluster-demo",
engine: "neptune",
backupRetentionPeriod: 5,
preferredBackupWindow: "07:00-09:00",
skipFinalSnapshot: true,
iamDatabaseAuthenticationEnabled: true,
applyImmediately: true,
});
import pulumi
import pulumi_aws as aws
default = aws.neptune.Cluster("default",
cluster_identifier="neptune-cluster-demo",
engine="neptune",
backup_retention_period=5,
preferred_backup_window="07:00-09:00",
skip_final_snapshot=True,
iam_database_authentication_enabled=True,
apply_immediately=True)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var @default = new Aws.Neptune.Cluster("default", new()
{
ClusterIdentifier = "neptune-cluster-demo",
Engine = "neptune",
BackupRetentionPeriod = 5,
PreferredBackupWindow = "07:00-09:00",
SkipFinalSnapshot = true,
IamDatabaseAuthenticationEnabled = true,
ApplyImmediately = true,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/neptune"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := neptune.NewCluster(ctx, "default", &neptune.ClusterArgs{
ClusterIdentifier: pulumi.String("neptune-cluster-demo"),
Engine: pulumi.String("neptune"),
BackupRetentionPeriod: pulumi.Int(5),
PreferredBackupWindow: pulumi.String("07:00-09:00"),
SkipFinalSnapshot: pulumi.Bool(true),
IamDatabaseAuthenticationEnabled: pulumi.Bool(true),
ApplyImmediately: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.neptune.Cluster;
import com.pulumi.aws.neptune.ClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var default_ = new Cluster("default", ClusterArgs.builder()
.clusterIdentifier("neptune-cluster-demo")
.engine("neptune")
.backupRetentionPeriod(5)
.preferredBackupWindow("07:00-09:00")
.skipFinalSnapshot(true)
.iamDatabaseAuthenticationEnabled(true)
.applyImmediately(true)
.build());
}
}
resources:
default:
type: aws:neptune:Cluster
properties:
clusterIdentifier: neptune-cluster-demo
engine: neptune
backupRetentionPeriod: 5
preferredBackupWindow: 07:00-09:00
skipFinalSnapshot: true
iamDatabaseAuthenticationEnabled: true
applyImmediately: true

Note: AWS Neptune does not support user name/password–based access control. See the AWS Docs for more information.

Import

Using pulumi import, import aws_neptune_cluster using the cluster identifier. For example:

$ pulumi import aws:neptune/cluster:Cluster example my-cluster

Properties

Link copied to clipboard

Specifies whether upgrades between different major versions are allowed. You must set it to true when providing an engine_version parameter that uses a different major version than the DB cluster's current version. Default is false.

Link copied to clipboard

Specifies whether any cluster modifications are applied immediately, or during the next maintenance window. Default is false.

Link copied to clipboard
val arn: Output<String>

The Neptune Cluster Amazon Resource Name (ARN)

Link copied to clipboard

A list of EC2 Availability Zones that instances in the Neptune cluster can be created in.

Link copied to clipboard

The days to retain backups for. Default 1

Link copied to clipboard

The cluster identifier. If omitted, this provider will assign a random, unique identifier.

Link copied to clipboard

Creates a unique cluster identifier beginning with the specified prefix. Conflicts with cluster_identifier.

Link copied to clipboard
val clusterMembers: Output<List<String>>

List of Neptune Instances that are a part of this cluster

Link copied to clipboard

The Neptune Cluster Resource ID

Link copied to clipboard

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

Link copied to clipboard

A value that indicates whether the DB cluster has deletion protection enabled.The database can't be deleted when deletion protection is enabled. By default, deletion protection is disabled.

Link copied to clipboard

A list of the log types this DB cluster is configured to export to Cloudwatch Logs. Currently only supports audit and slowquery.

Link copied to clipboard
val endpoint: Output<String>

The DNS address of the Neptune instance

Link copied to clipboard
val engine: Output<String>?

The name of the database engine to be used for this Neptune cluster. Defaults to neptune.

Link copied to clipboard
val engineVersion: Output<String>

The database engine version.

Link copied to clipboard

The name of your final Neptune snapshot when this Neptune cluster is deleted. If omitted, no final snapshot will be made.

Link copied to clipboard

The global cluster identifier specified on aws.neptune.GlobalCluster.

Link copied to clipboard
val hostedZoneId: Output<String>

The Route53 Hosted Zone ID of the endpoint

Link copied to clipboard

Specifies whether or not mappings of AWS Identity and Access Management (IAM) accounts to database accounts is enabled.

Link copied to clipboard
val iamRoles: Output<List<String>>?

A List of ARNs for the IAM roles to associate to the Neptune Cluster.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val kmsKeyArn: Output<String>

The ARN for the KMS encryption key. When specifying kms_key_arn, storage_encrypted needs to be set to true.

Link copied to clipboard

A cluster parameter group to associate with the cluster.

Link copied to clipboard

The name of the DB parameter group to apply to all instances of the DB cluster.

Link copied to clipboard

A Neptune subnet group to associate with this Neptune instance.

Link copied to clipboard
val port: Output<Int>?

The port on which the Neptune accepts connections. Default is 8182.

Link copied to clipboard

The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter. Time in UTC. Default: A 30-minute window selected at random from an 8-hour block of time per regionE.g., 04:00-09:00

Link copied to clipboard

The weekly time range during which system maintenance can occur, in (UTC) e.g., wed:04:00-wed:04:30

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val readerEndpoint: Output<String>

A read-only endpoint for the Neptune cluster, automatically load-balanced across replicas

Link copied to clipboard

ARN of a source Neptune cluster or Neptune instance if this Neptune cluster is to be created as a Read Replica.

Link copied to clipboard

If set, create the Neptune cluster as a serverless one. See Serverless for example block attributes.

Link copied to clipboard

Determines whether a final Neptune snapshot is created before the Neptune cluster is deleted. If true is specified, no Neptune snapshot is created. If false is specified, a Neptune snapshot is created before the Neptune cluster is deleted, using the value from final_snapshot_identifier. Default is false.

Link copied to clipboard

Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a Neptune cluster snapshot, or the ARN when specifying a Neptune snapshot. Automated snapshots should not be used for this attribute, unless from a different cluster. Automated snapshots are deleted as part of cluster destruction when the resource is replaced.

Link copied to clipboard

Specifies whether the Neptune cluster is encrypted. The default is false if not specified.

Link copied to clipboard
val storageType: Output<String>

Storage type associated with the cluster standard/iopt1. Default: standard

Link copied to clipboard
val tags: Output<Map<String, String>>?

A map of tags to assign to the Neptune cluster. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val tagsAll: Output<Map<String, String>>

A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard

List of VPC security groups to associate with the Cluster