Class ClusterState.Builder

  • Enclosing class:
    ClusterState

    public static final class ClusterState.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • aclName

        public ClusterState.Builder aclName​(@Nullable
                                            com.pulumi.core.Output<java.lang.String> aclName)
        Parameters:
        aclName - Name of the Access Control List to associate with the cluster.
        Returns:
        builder
      • aclName

        public ClusterState.Builder aclName​(java.lang.String aclName)
        Parameters:
        aclName - Name of the Access Control List to associate with the cluster.
        Returns:
        builder
      • arn

        public ClusterState.Builder arn​(@Nullable
                                        com.pulumi.core.Output<java.lang.String> arn)
        Parameters:
        arn - ARN of the cluster.
        Returns:
        builder
      • arn

        public ClusterState.Builder arn​(java.lang.String arn)
        Parameters:
        arn - ARN of the cluster.
        Returns:
        builder
      • autoMinorVersionUpgrade

        public ClusterState.Builder autoMinorVersionUpgrade​(@Nullable
                                                            com.pulumi.core.Output<java.lang.Boolean> autoMinorVersionUpgrade)
        Parameters:
        autoMinorVersionUpgrade - When set to `true`, the cluster will automatically receive minor engine version upgrades after launch. Defaults to `true`.
        Returns:
        builder
      • autoMinorVersionUpgrade

        public ClusterState.Builder autoMinorVersionUpgrade​(java.lang.Boolean autoMinorVersionUpgrade)
        Parameters:
        autoMinorVersionUpgrade - When set to `true`, the cluster will automatically receive minor engine version upgrades after launch. Defaults to `true`.
        Returns:
        builder
      • dataTiering

        public ClusterState.Builder dataTiering​(@Nullable
                                                com.pulumi.core.Output<java.lang.Boolean> dataTiering)
        Parameters:
        dataTiering - Enables data tiering. This option is not supported by all instance types. For more information, see [Data tiering](https://docs.aws.amazon.com/memorydb/latest/devguide/data-tiering.html).
        Returns:
        builder
      • dataTiering

        public ClusterState.Builder dataTiering​(java.lang.Boolean dataTiering)
        Parameters:
        dataTiering - Enables data tiering. This option is not supported by all instance types. For more information, see [Data tiering](https://docs.aws.amazon.com/memorydb/latest/devguide/data-tiering.html).
        Returns:
        builder
      • description

        public ClusterState.Builder description​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> description)
        Parameters:
        description - Description for the cluster. Defaults to `"Managed by Pulumi"`.
        Returns:
        builder
      • description

        public ClusterState.Builder description​(java.lang.String description)
        Parameters:
        description - Description for the cluster. Defaults to `"Managed by Pulumi"`.
        Returns:
        builder
      • engine

        public ClusterState.Builder engine​(@Nullable
                                           com.pulumi.core.Output<java.lang.String> engine)
        Parameters:
        engine - Engine that will run on your nodes. Supported values are `redis` and `valkey`.
        Returns:
        builder
      • engine

        public ClusterState.Builder engine​(java.lang.String engine)
        Parameters:
        engine - Engine that will run on your nodes. Supported values are `redis` and `valkey`.
        Returns:
        builder
      • enginePatchVersion

        public ClusterState.Builder enginePatchVersion​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> enginePatchVersion)
        Parameters:
        enginePatchVersion - Patch version number of the engine used by the cluster.
        Returns:
        builder
      • enginePatchVersion

        public ClusterState.Builder enginePatchVersion​(java.lang.String enginePatchVersion)
        Parameters:
        enginePatchVersion - Patch version number of the engine used by the cluster.
        Returns:
        builder
      • engineVersion

        public ClusterState.Builder engineVersion​(@Nullable
                                                  com.pulumi.core.Output<java.lang.String> engineVersion)
        Parameters:
        engineVersion - Version number of the engine to be used for the cluster. Downgrades are not supported.
        Returns:
        builder
      • engineVersion

        public ClusterState.Builder engineVersion​(java.lang.String engineVersion)
        Parameters:
        engineVersion - Version number of the engine to be used for the cluster. Downgrades are not supported.
        Returns:
        builder
      • finalSnapshotName

        public ClusterState.Builder finalSnapshotName​(@Nullable
                                                      com.pulumi.core.Output<java.lang.String> finalSnapshotName)
        Parameters:
        finalSnapshotName - Name of the final cluster snapshot to be created when this resource is deleted. If omitted, no final snapshot will be made.
        Returns:
        builder
      • finalSnapshotName

        public ClusterState.Builder finalSnapshotName​(java.lang.String finalSnapshotName)
        Parameters:
        finalSnapshotName - Name of the final cluster snapshot to be created when this resource is deleted. If omitted, no final snapshot will be made.
        Returns:
        builder
      • ipDiscovery

        public ClusterState.Builder ipDiscovery​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> ipDiscovery)
        Parameters:
        ipDiscovery - Mechanism that the cluster uses to discover IP addresses. Valid values are `ipv4` and `ipv6`. Defaults to `ipv4`. To specify `ipv6`, `networkType` must be `ipv6` or `dualStack`.
        Returns:
        builder
      • ipDiscovery

        public ClusterState.Builder ipDiscovery​(java.lang.String ipDiscovery)
        Parameters:
        ipDiscovery - Mechanism that the cluster uses to discover IP addresses. Valid values are `ipv4` and `ipv6`. Defaults to `ipv4`. To specify `ipv6`, `networkType` must be `ipv6` or `dualStack`.
        Returns:
        builder
      • kmsKeyArn

        public ClusterState.Builder kmsKeyArn​(@Nullable
                                              com.pulumi.core.Output<java.lang.String> kmsKeyArn)
        Parameters:
        kmsKeyArn - ARN of the KMS key used to encrypt the cluster at rest.
        Returns:
        builder
      • kmsKeyArn

        public ClusterState.Builder kmsKeyArn​(java.lang.String kmsKeyArn)
        Parameters:
        kmsKeyArn - ARN of the KMS key used to encrypt the cluster at rest.
        Returns:
        builder
      • maintenanceWindow

        public ClusterState.Builder maintenanceWindow​(@Nullable
                                                      com.pulumi.core.Output<java.lang.String> maintenanceWindow)
        Parameters:
        maintenanceWindow - Weekly time range during which maintenance on the cluster is performed. Specify as a range in the format `ddd:hh24:mi-ddd:hh24:mi` (24H Clock UTC). The minimum maintenance window is a 60 minute period. Example: `sun:23:00-mon:01:30`.
        Returns:
        builder
      • maintenanceWindow

        public ClusterState.Builder maintenanceWindow​(java.lang.String maintenanceWindow)
        Parameters:
        maintenanceWindow - Weekly time range during which maintenance on the cluster is performed. Specify as a range in the format `ddd:hh24:mi-ddd:hh24:mi` (24H Clock UTC). The minimum maintenance window is a 60 minute period. Example: `sun:23:00-mon:01:30`.
        Returns:
        builder
      • multiRegionClusterName

        public ClusterState.Builder multiRegionClusterName​(@Nullable
                                                           com.pulumi.core.Output<java.lang.String> multiRegionClusterName)
        Parameters:
        multiRegionClusterName - Multi region cluster identifier specified on `aws.memorydb.MultiRegionCluster`.
        Returns:
        builder
      • multiRegionClusterName

        public ClusterState.Builder multiRegionClusterName​(java.lang.String multiRegionClusterName)
        Parameters:
        multiRegionClusterName - Multi region cluster identifier specified on `aws.memorydb.MultiRegionCluster`.
        Returns:
        builder
      • name

        public ClusterState.Builder name​(@Nullable
                                         com.pulumi.core.Output<java.lang.String> name)
        Parameters:
        name - Name of the cluster. If omitted, the provider will assign a random, unique name. Conflicts with `namePrefix`.
        Returns:
        builder
      • name

        public ClusterState.Builder name​(java.lang.String name)
        Parameters:
        name - Name of the cluster. If omitted, the provider will assign a random, unique name. Conflicts with `namePrefix`.
        Returns:
        builder
      • namePrefix

        public ClusterState.Builder namePrefix​(@Nullable
                                               com.pulumi.core.Output<java.lang.String> namePrefix)
        Parameters:
        namePrefix - Creates a unique name beginning with the specified prefix. Conflicts with `name`.
        Returns:
        builder
      • namePrefix

        public ClusterState.Builder namePrefix​(java.lang.String namePrefix)
        Parameters:
        namePrefix - Creates a unique name beginning with the specified prefix. Conflicts with `name`.
        Returns:
        builder
      • networkType

        public ClusterState.Builder networkType​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> networkType)
        Parameters:
        networkType - IP address type for the cluster. Valid values are `ipv4`, `ipv6` and `dualStack`. Defaults to `ipv4`.
        Returns:
        builder
      • networkType

        public ClusterState.Builder networkType​(java.lang.String networkType)
        Parameters:
        networkType - IP address type for the cluster. Valid values are `ipv4`, `ipv6` and `dualStack`. Defaults to `ipv4`.
        Returns:
        builder
      • nodeType

        public ClusterState.Builder nodeType​(@Nullable
                                             com.pulumi.core.Output<java.lang.String> nodeType)
        Parameters:
        nodeType - Compute and memory capacity of the nodes in the cluster. See AWS documentation on [supported node types](https://docs.aws.amazon.com/memorydb/latest/devguide/nodes.supportedtypes.html) as well as [vertical scaling](https://docs.aws.amazon.com/memorydb/latest/devguide/cluster-vertical-scaling.html). The following arguments are optional:
        Returns:
        builder
      • nodeType

        public ClusterState.Builder nodeType​(java.lang.String nodeType)
        Parameters:
        nodeType - Compute and memory capacity of the nodes in the cluster. See AWS documentation on [supported node types](https://docs.aws.amazon.com/memorydb/latest/devguide/nodes.supportedtypes.html) as well as [vertical scaling](https://docs.aws.amazon.com/memorydb/latest/devguide/cluster-vertical-scaling.html). The following arguments are optional:
        Returns:
        builder
      • numReplicasPerShard

        public ClusterState.Builder numReplicasPerShard​(@Nullable
                                                        com.pulumi.core.Output<java.lang.Integer> numReplicasPerShard)
        Parameters:
        numReplicasPerShard - Number of replicas to apply to each shard, up to a maximum of 5. Defaults to `1` (i.e. 2 nodes per shard).
        Returns:
        builder
      • numReplicasPerShard

        public ClusterState.Builder numReplicasPerShard​(java.lang.Integer numReplicasPerShard)
        Parameters:
        numReplicasPerShard - Number of replicas to apply to each shard, up to a maximum of 5. Defaults to `1` (i.e. 2 nodes per shard).
        Returns:
        builder
      • numShards

        public ClusterState.Builder numShards​(@Nullable
                                              com.pulumi.core.Output<java.lang.Integer> numShards)
        Parameters:
        numShards - Number of shards in the cluster. Defaults to `1`.
        Returns:
        builder
      • numShards

        public ClusterState.Builder numShards​(java.lang.Integer numShards)
        Parameters:
        numShards - Number of shards in the cluster. Defaults to `1`.
        Returns:
        builder
      • parameterGroupName

        public ClusterState.Builder parameterGroupName​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> parameterGroupName)
        Parameters:
        parameterGroupName - Name of the parameter group associated with the cluster.
        Returns:
        builder
      • parameterGroupName

        public ClusterState.Builder parameterGroupName​(java.lang.String parameterGroupName)
        Parameters:
        parameterGroupName - Name of the parameter group associated with the cluster.
        Returns:
        builder
      • port

        public ClusterState.Builder port​(@Nullable
                                         com.pulumi.core.Output<java.lang.Integer> port)
        Parameters:
        port - Port number on which each of the nodes accepts connections. Defaults to `6379`.
        Returns:
        builder
      • port

        public ClusterState.Builder port​(java.lang.Integer port)
        Parameters:
        port - Port number on which each of the nodes accepts connections. Defaults to `6379`.
        Returns:
        builder
      • region

        public ClusterState.Builder region​(@Nullable
                                           com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • region

        public ClusterState.Builder region​(java.lang.String region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • securityGroupIds

        public ClusterState.Builder securityGroupIds​(@Nullable
                                                     com.pulumi.core.Output<java.util.List<java.lang.String>> securityGroupIds)
        Parameters:
        securityGroupIds - Set of VPC Security Group ID-s to associate with this cluster.
        Returns:
        builder
      • securityGroupIds

        public ClusterState.Builder securityGroupIds​(java.util.List<java.lang.String> securityGroupIds)
        Parameters:
        securityGroupIds - Set of VPC Security Group ID-s to associate with this cluster.
        Returns:
        builder
      • securityGroupIds

        public ClusterState.Builder securityGroupIds​(java.lang.String... securityGroupIds)
        Parameters:
        securityGroupIds - Set of VPC Security Group ID-s to associate with this cluster.
        Returns:
        builder
      • shards

        public ClusterState.Builder shards​(@Nullable
                                           com.pulumi.core.Output<java.util.List<ClusterShardArgs>> shards)
        Parameters:
        shards - Set of shards in this cluster.
        Returns:
        builder
      • snapshotArns

        public ClusterState.Builder snapshotArns​(@Nullable
                                                 com.pulumi.core.Output<java.util.List<java.lang.String>> snapshotArns)
        Parameters:
        snapshotArns - List of ARN-s that uniquely identify RDB snapshot files stored in S3. The snapshot files will be used to populate the new cluster. Object names in the ARN-s cannot contain any commas.
        Returns:
        builder
      • snapshotArns

        public ClusterState.Builder snapshotArns​(java.util.List<java.lang.String> snapshotArns)
        Parameters:
        snapshotArns - List of ARN-s that uniquely identify RDB snapshot files stored in S3. The snapshot files will be used to populate the new cluster. Object names in the ARN-s cannot contain any commas.
        Returns:
        builder
      • snapshotArns

        public ClusterState.Builder snapshotArns​(java.lang.String... snapshotArns)
        Parameters:
        snapshotArns - List of ARN-s that uniquely identify RDB snapshot files stored in S3. The snapshot files will be used to populate the new cluster. Object names in the ARN-s cannot contain any commas.
        Returns:
        builder
      • snapshotName

        public ClusterState.Builder snapshotName​(@Nullable
                                                 com.pulumi.core.Output<java.lang.String> snapshotName)
        Parameters:
        snapshotName - Name of a snapshot from which to restore data into the new cluster.
        Returns:
        builder
      • snapshotName

        public ClusterState.Builder snapshotName​(java.lang.String snapshotName)
        Parameters:
        snapshotName - Name of a snapshot from which to restore data into the new cluster.
        Returns:
        builder
      • snapshotRetentionLimit

        public ClusterState.Builder snapshotRetentionLimit​(@Nullable
                                                           com.pulumi.core.Output<java.lang.Integer> snapshotRetentionLimit)
        Parameters:
        snapshotRetentionLimit - Number of days for which MemoryDB retains automatic snapshots before deleting them. When set to `0`, automatic backups are disabled. Defaults to `0`.
        Returns:
        builder
      • snapshotRetentionLimit

        public ClusterState.Builder snapshotRetentionLimit​(java.lang.Integer snapshotRetentionLimit)
        Parameters:
        snapshotRetentionLimit - Number of days for which MemoryDB retains automatic snapshots before deleting them. When set to `0`, automatic backups are disabled. Defaults to `0`.
        Returns:
        builder
      • snapshotWindow

        public ClusterState.Builder snapshotWindow​(@Nullable
                                                   com.pulumi.core.Output<java.lang.String> snapshotWindow)
        Parameters:
        snapshotWindow - Daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: `05:00-09:00`.
        Returns:
        builder
      • snapshotWindow

        public ClusterState.Builder snapshotWindow​(java.lang.String snapshotWindow)
        Parameters:
        snapshotWindow - Daily time range (in UTC) during which MemoryDB begins taking a daily snapshot of your shard. Example: `05:00-09:00`.
        Returns:
        builder
      • snsTopicArn

        public ClusterState.Builder snsTopicArn​(@Nullable
                                                com.pulumi.core.Output<java.lang.String> snsTopicArn)
        Parameters:
        snsTopicArn - ARN of the SNS topic to which cluster notifications are sent.
        Returns:
        builder
      • snsTopicArn

        public ClusterState.Builder snsTopicArn​(java.lang.String snsTopicArn)
        Parameters:
        snsTopicArn - ARN of the SNS topic to which cluster notifications are sent.
        Returns:
        builder
      • subnetGroupName

        public ClusterState.Builder subnetGroupName​(@Nullable
                                                    com.pulumi.core.Output<java.lang.String> subnetGroupName)
        Parameters:
        subnetGroupName - Name of the subnet group to be used for the cluster. Defaults to a subnet group consisting of default VPC subnets.
        Returns:
        builder
      • subnetGroupName

        public ClusterState.Builder subnetGroupName​(java.lang.String subnetGroupName)
        Parameters:
        subnetGroupName - Name of the subnet group to be used for the cluster. Defaults to a subnet group consisting of default VPC subnets.
        Returns:
        builder
      • tags

        public ClusterState.Builder tags​(@Nullable
                                         com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tags)
        Parameters:
        tags - Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tags

        public ClusterState.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - Map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tagsAll

        public ClusterState.Builder tagsAll​(@Nullable
                                            com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll)
        Parameters:
        tagsAll - Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tagsAll

        public ClusterState.Builder tagsAll​(java.util.Map<java.lang.String,​java.lang.String> tagsAll)
        Parameters:
        tagsAll - Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tlsEnabled

        public ClusterState.Builder tlsEnabled​(@Nullable
                                               com.pulumi.core.Output<java.lang.Boolean> tlsEnabled)
        Parameters:
        tlsEnabled - Whether to enable in-transit encryption on the cluster. When set to `false`, the `aclName` must be `open-access`. Defaults to `true`.
        Returns:
        builder
      • tlsEnabled

        public ClusterState.Builder tlsEnabled​(java.lang.Boolean tlsEnabled)
        Parameters:
        tlsEnabled - Whether to enable in-transit encryption on the cluster. When set to `false`, the `aclName` must be `open-access`. Defaults to `true`.
        Returns:
        builder