Class ClusterInstanceArgs.Builder

  • Enclosing class:
    ClusterInstanceArgs

    public static final class ClusterInstanceArgs.Builder
    extends java.lang.Object
    • Method Detail

      • applyImmediately

        public ClusterInstanceArgs.Builder applyImmediately​(@Nullable
                                                            com.pulumi.core.Output<java.lang.Boolean> applyImmediately)
        Parameters:
        applyImmediately - Whether any database modifications are applied immediately, or during the next maintenance window. Default is `false`.
        Returns:
        builder
      • applyImmediately

        public ClusterInstanceArgs.Builder applyImmediately​(java.lang.Boolean applyImmediately)
        Parameters:
        applyImmediately - Whether any database modifications are applied immediately, or during the next maintenance window. Default is `false`.
        Returns:
        builder
      • autoMinorVersionUpgrade

        public ClusterInstanceArgs.Builder autoMinorVersionUpgrade​(@Nullable
                                                                   com.pulumi.core.Output<java.lang.Boolean> autoMinorVersionUpgrade)
        Parameters:
        autoMinorVersionUpgrade - Whether minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
        Returns:
        builder
      • autoMinorVersionUpgrade

        public ClusterInstanceArgs.Builder autoMinorVersionUpgrade​(java.lang.Boolean autoMinorVersionUpgrade)
        Parameters:
        autoMinorVersionUpgrade - Whether minor engine upgrades will be applied automatically to the DB instance during the maintenance window. Default `true`.
        Returns:
        builder
      • availabilityZone

        public ClusterInstanceArgs.Builder availabilityZone​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> availabilityZone)
        Parameters:
        availabilityZone - EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) about the details.
        Returns:
        builder
      • availabilityZone

        public ClusterInstanceArgs.Builder availabilityZone​(java.lang.String availabilityZone)
        Parameters:
        availabilityZone - EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) about the details.
        Returns:
        builder
      • caCertIdentifier

        public ClusterInstanceArgs.Builder caCertIdentifier​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> caCertIdentifier)
        Parameters:
        caCertIdentifier - Identifier of the CA certificate for the DB instance.
        Returns:
        builder
      • caCertIdentifier

        public ClusterInstanceArgs.Builder caCertIdentifier​(java.lang.String caCertIdentifier)
        Parameters:
        caCertIdentifier - Identifier of the CA certificate for the DB instance.
        Returns:
        builder
      • clusterIdentifier

        public ClusterInstanceArgs.Builder clusterIdentifier​(com.pulumi.core.Output<java.lang.String> clusterIdentifier)
        Parameters:
        clusterIdentifier - Identifier of the `aws.rds.Cluster` in which to launch this instance.
        Returns:
        builder
      • clusterIdentifier

        public ClusterInstanceArgs.Builder clusterIdentifier​(java.lang.String clusterIdentifier)
        Parameters:
        clusterIdentifier - Identifier of the `aws.rds.Cluster` in which to launch this instance.
        Returns:
        builder
      • copyTagsToSnapshot

        public ClusterInstanceArgs.Builder copyTagsToSnapshot​(@Nullable
                                                              com.pulumi.core.Output<java.lang.Boolean> copyTagsToSnapshot)
        Parameters:
        copyTagsToSnapshot - Whether to copy all of the user-defined tags from the DB instance to snapshots of the DB instance. Default `false`.
        Returns:
        builder
      • copyTagsToSnapshot

        public ClusterInstanceArgs.Builder copyTagsToSnapshot​(java.lang.Boolean copyTagsToSnapshot)
        Parameters:
        copyTagsToSnapshot - Whether to copy all of the user-defined tags from the DB instance to snapshots of the DB instance. Default `false`.
        Returns:
        builder
      • customIamInstanceProfile

        public ClusterInstanceArgs.Builder customIamInstanceProfile​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.String> customIamInstanceProfile)
        Parameters:
        customIamInstanceProfile - Instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
        Returns:
        builder
      • customIamInstanceProfile

        public ClusterInstanceArgs.Builder customIamInstanceProfile​(java.lang.String customIamInstanceProfile)
        Parameters:
        customIamInstanceProfile - Instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.
        Returns:
        builder
      • dbParameterGroupName

        public ClusterInstanceArgs.Builder dbParameterGroupName​(@Nullable
                                                                com.pulumi.core.Output<java.lang.String> dbParameterGroupName)
        Parameters:
        dbParameterGroupName - Name of the DB parameter group to associate with this instance.
        Returns:
        builder
      • dbParameterGroupName

        public ClusterInstanceArgs.Builder dbParameterGroupName​(java.lang.String dbParameterGroupName)
        Parameters:
        dbParameterGroupName - Name of the DB parameter group to associate with this instance.
        Returns:
        builder
      • dbSubnetGroupName

        public ClusterInstanceArgs.Builder dbSubnetGroupName​(@Nullable
                                                             com.pulumi.core.Output<java.lang.String> dbSubnetGroupName)
        Parameters:
        dbSubnetGroupName - DB subnet group to associate with this DB instance. The default behavior varies depending on whether `dbSubnetGroupName` is specified. Please refer to official [AWS documentation](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) to understand how `dbSubnetGroupName` and `publiclyAccessible` parameters affect DB instance behaviour. **NOTE:** This must match the `dbSubnetGroupName` of the attached `aws.rds.Cluster`.
        Returns:
        builder
      • dbSubnetGroupName

        public ClusterInstanceArgs.Builder dbSubnetGroupName​(java.lang.String dbSubnetGroupName)
        Parameters:
        dbSubnetGroupName - DB subnet group to associate with this DB instance. The default behavior varies depending on whether `dbSubnetGroupName` is specified. Please refer to official [AWS documentation](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) to understand how `dbSubnetGroupName` and `publiclyAccessible` parameters affect DB instance behaviour. **NOTE:** This must match the `dbSubnetGroupName` of the attached `aws.rds.Cluster`.
        Returns:
        builder
      • engine

        public ClusterInstanceArgs.Builder engine​(com.pulumi.core.Output<EngineType> engine)
        Parameters:
        engine - Name of the database engine to be used for the RDS cluster instance. Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`. (Note that `mysql` and `postgres` are Multi-AZ RDS clusters).
        Returns:
        builder
      • engine

        public ClusterInstanceArgs.Builder engine​(EngineType engine)
        Parameters:
        engine - Name of the database engine to be used for the RDS cluster instance. Valid Values: `aurora-mysql`, `aurora-postgresql`, `mysql`, `postgres`. (Note that `mysql` and `postgres` are Multi-AZ RDS clusters).
        Returns:
        builder
      • engineVersion

        public ClusterInstanceArgs.Builder engineVersion​(@Nullable
                                                         com.pulumi.core.Output<java.lang.String> engineVersion)
        Parameters:
        engineVersion - Database engine version. Please note that to upgrade the `engineVersion` of the instance, it must be done on the `aws.rds.Cluster` `engineVersion`. Trying to upgrade in `aws.rds.ClusterInstance` will not update the `engineVersion`.
        Returns:
        builder
      • engineVersion

        public ClusterInstanceArgs.Builder engineVersion​(java.lang.String engineVersion)
        Parameters:
        engineVersion - Database engine version. Please note that to upgrade the `engineVersion` of the instance, it must be done on the `aws.rds.Cluster` `engineVersion`. Trying to upgrade in `aws.rds.ClusterInstance` will not update the `engineVersion`.
        Returns:
        builder
      • forceDestroy

        public ClusterInstanceArgs.Builder forceDestroy​(@Nullable
                                                        com.pulumi.core.Output<java.lang.Boolean> forceDestroy)
        Parameters:
        forceDestroy - Forces an instance to be destroyed when a part of a read replica cluster. **Note:** will promote the read replica to a standalone cluster before instance deletion.
        Returns:
        builder
      • forceDestroy

        public ClusterInstanceArgs.Builder forceDestroy​(java.lang.Boolean forceDestroy)
        Parameters:
        forceDestroy - Forces an instance to be destroyed when a part of a read replica cluster. **Note:** will promote the read replica to a standalone cluster before instance deletion.
        Returns:
        builder
      • identifier

        public ClusterInstanceArgs.Builder identifier​(@Nullable
                                                      com.pulumi.core.Output<java.lang.String> identifier)
        Parameters:
        identifier - Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier.
        Returns:
        builder
      • identifier

        public ClusterInstanceArgs.Builder identifier​(java.lang.String identifier)
        Parameters:
        identifier - Identifier for the RDS instance, if omitted, Pulumi will assign a random, unique identifier.
        Returns:
        builder
      • identifierPrefix

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

        public ClusterInstanceArgs.Builder identifierPrefix​(java.lang.String identifierPrefix)
        Parameters:
        identifierPrefix - Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`.
        Returns:
        builder
      • instanceClass

        public ClusterInstanceArgs.Builder instanceClass​(com.pulumi.core.Output<com.pulumi.core.Either<java.lang.String,​InstanceType>> instanceClass)
        Parameters:
        instanceClass - Instance class to use. For details on CPU and memory, see [Scaling Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details. For Aurora Serverless v2 use `db.serverless`.
        Returns:
        builder
      • instanceClass

        public ClusterInstanceArgs.Builder instanceClass​(com.pulumi.core.Either<java.lang.String,​InstanceType> instanceClass)
        Parameters:
        instanceClass - Instance class to use. For details on CPU and memory, see [Scaling Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details. For Aurora Serverless v2 use `db.serverless`.
        Returns:
        builder
      • instanceClass

        public ClusterInstanceArgs.Builder instanceClass​(java.lang.String instanceClass)
        Parameters:
        instanceClass - Instance class to use. For details on CPU and memory, see [Scaling Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details. For Aurora Serverless v2 use `db.serverless`.
        Returns:
        builder
      • instanceClass

        public ClusterInstanceArgs.Builder instanceClass​(InstanceType instanceClass)
        Parameters:
        instanceClass - Instance class to use. For details on CPU and memory, see [Scaling Aurora DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Managing.html). Aurora uses `db.*` instance classes/types. Please see [AWS Documentation](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html) for currently available instance classes and complete details. For Aurora Serverless v2 use `db.serverless`.
        Returns:
        builder
      • monitoringInterval

        public ClusterInstanceArgs.Builder monitoringInterval​(@Nullable
                                                              com.pulumi.core.Output<java.lang.Integer> monitoringInterval)
        Parameters:
        monitoringInterval - Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60.
        Returns:
        builder
      • monitoringInterval

        public ClusterInstanceArgs.Builder monitoringInterval​(java.lang.Integer monitoringInterval)
        Parameters:
        monitoringInterval - Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collecting Enhanced Monitoring metrics, specify 0. The default is 0. Valid Values: 0, 1, 5, 10, 15, 30, 60.
        Returns:
        builder
      • monitoringRoleArn

        public ClusterInstanceArgs.Builder monitoringRoleArn​(@Nullable
                                                             com.pulumi.core.Output<java.lang.String> monitoringRoleArn)
        Parameters:
        monitoringRoleArn - ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
        Returns:
        builder
      • monitoringRoleArn

        public ClusterInstanceArgs.Builder monitoringRoleArn​(java.lang.String monitoringRoleArn)
        Parameters:
        monitoringRoleArn - ARN for the IAM role that permits RDS to send enhanced monitoring metrics to CloudWatch Logs. You can find more information on the [AWS Documentation](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.html) what IAM permissions are needed to allow Enhanced Monitoring for RDS Instances.
        Returns:
        builder
      • performanceInsightsEnabled

        public ClusterInstanceArgs.Builder performanceInsightsEnabled​(@Nullable
                                                                      com.pulumi.core.Output<java.lang.Boolean> performanceInsightsEnabled)
        Parameters:
        performanceInsightsEnabled - Whether Performance Insights is enabled. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
        Returns:
        builder
      • performanceInsightsEnabled

        public ClusterInstanceArgs.Builder performanceInsightsEnabled​(java.lang.Boolean performanceInsightsEnabled)
        Parameters:
        performanceInsightsEnabled - Whether Performance Insights is enabled. **NOTE:** When Performance Insights is configured at the cluster level through `aws.rds.Cluster`, this argument cannot be set to a value that conflicts with the cluster's configuration.
        Returns:
        builder
      • performanceInsightsKmsKeyId

        public ClusterInstanceArgs.Builder performanceInsightsKmsKeyId​(@Nullable
                                                                       com.pulumi.core.Output<java.lang.String> performanceInsightsKmsKeyId)
        Parameters:
        performanceInsightsKmsKeyId - ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
        Returns:
        builder
      • performanceInsightsKmsKeyId

        public ClusterInstanceArgs.Builder performanceInsightsKmsKeyId​(java.lang.String performanceInsightsKmsKeyId)
        Parameters:
        performanceInsightsKmsKeyId - ARN for the KMS key to encrypt Performance Insights data. When specifying `performanceInsightsKmsKeyId`, `performanceInsightsEnabled` needs to be set to true.
        Returns:
        builder
      • performanceInsightsRetentionPeriod

        public ClusterInstanceArgs.Builder performanceInsightsRetentionPeriod​(@Nullable
                                                                              com.pulumi.core.Output<java.lang.Integer> performanceInsightsRetentionPeriod)
        Parameters:
        performanceInsightsRetentionPeriod - Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
        Returns:
        builder
      • performanceInsightsRetentionPeriod

        public ClusterInstanceArgs.Builder performanceInsightsRetentionPeriod​(java.lang.Integer performanceInsightsRetentionPeriod)
        Parameters:
        performanceInsightsRetentionPeriod - Amount of time in days to retain Performance Insights data. Valid values are `7`, `731` (2 years) or a multiple of `31`. When specifying `performanceInsightsRetentionPeriod`, `performanceInsightsEnabled` needs to be set to true. Defaults to '7'.
        Returns:
        builder
      • preferredBackupWindow

        public ClusterInstanceArgs.Builder preferredBackupWindow​(@Nullable
                                                                 com.pulumi.core.Output<java.lang.String> preferredBackupWindow)
        Parameters:
        preferredBackupWindow - Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferredBackupWindow` is set at the cluster level, this argument **must** be omitted.
        Returns:
        builder
      • preferredBackupWindow

        public ClusterInstanceArgs.Builder preferredBackupWindow​(java.lang.String preferredBackupWindow)
        Parameters:
        preferredBackupWindow - Daily time range during which automated backups are created if automated backups are enabled. Eg: "04:00-09:00". **NOTE:** If `preferredBackupWindow` is set at the cluster level, this argument **must** be omitted.
        Returns:
        builder
      • preferredMaintenanceWindow

        public ClusterInstanceArgs.Builder preferredMaintenanceWindow​(@Nullable
                                                                      com.pulumi.core.Output<java.lang.String> preferredMaintenanceWindow)
        Parameters:
        preferredMaintenanceWindow - Window to perform maintenance in. Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00".
        Returns:
        builder
      • preferredMaintenanceWindow

        public ClusterInstanceArgs.Builder preferredMaintenanceWindow​(java.lang.String preferredMaintenanceWindow)
        Parameters:
        preferredMaintenanceWindow - Window to perform maintenance in. Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00".
        Returns:
        builder
      • promotionTier

        public ClusterInstanceArgs.Builder promotionTier​(@Nullable
                                                         com.pulumi.core.Output<java.lang.Integer> promotionTier)
        Parameters:
        promotionTier - Default 0. Failover Priority setting on instance level. The reader who has lower tier has higher priority to get promoted to writer.
        Returns:
        builder
      • promotionTier

        public ClusterInstanceArgs.Builder promotionTier​(java.lang.Integer promotionTier)
        Parameters:
        promotionTier - Default 0. Failover Priority setting on instance level. The reader who has lower tier has higher priority to get promoted to writer.
        Returns:
        builder
      • publiclyAccessible

        public ClusterInstanceArgs.Builder publiclyAccessible​(@Nullable
                                                              com.pulumi.core.Output<java.lang.Boolean> publiclyAccessible)
        Parameters:
        publiclyAccessible - Bool to control if instance is publicly accessible. Default `false`. See the documentation on [Creating DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) for more details on controlling this property.
        Returns:
        builder
      • publiclyAccessible

        public ClusterInstanceArgs.Builder publiclyAccessible​(java.lang.Boolean publiclyAccessible)
        Parameters:
        publiclyAccessible - Bool to control if instance is publicly accessible. Default `false`. See the documentation on [Creating DB Instances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) for more details on controlling this property.
        Returns:
        builder
      • region

        public ClusterInstanceArgs.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 ClusterInstanceArgs.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
      • tags

        public ClusterInstanceArgs.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 instance. 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 ClusterInstanceArgs.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • warningEventCategories

        public ClusterInstanceArgs.Builder warningEventCategories​(@Nullable
                                                                  com.pulumi.core.Output<java.util.List<java.lang.String>> warningEventCategories)
        Parameters:
        warningEventCategories - Set of RDS event categories (for example `failure`, `maintenance`) to check for after create and update operations. If set, the provider describes RDS events reported for this instance during the operation and surfaces a warning diagnostic, with the RDS event message, for each one found in these categories. Has no effect if unset; see [DescribeEvents](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeEvents.html) and the `aws.rds.getEvents` data source for the source of these events. Requires the `rds:DescribeEvents` IAM permission when set.
        Returns:
        builder
      • warningEventCategories

        public ClusterInstanceArgs.Builder warningEventCategories​(java.util.List<java.lang.String> warningEventCategories)
        Parameters:
        warningEventCategories - Set of RDS event categories (for example `failure`, `maintenance`) to check for after create and update operations. If set, the provider describes RDS events reported for this instance during the operation and surfaces a warning diagnostic, with the RDS event message, for each one found in these categories. Has no effect if unset; see [DescribeEvents](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeEvents.html) and the `aws.rds.getEvents` data source for the source of these events. Requires the `rds:DescribeEvents` IAM permission when set.
        Returns:
        builder
      • warningEventCategories

        public ClusterInstanceArgs.Builder warningEventCategories​(java.lang.String... warningEventCategories)
        Parameters:
        warningEventCategories - Set of RDS event categories (for example `failure`, `maintenance`) to check for after create and update operations. If set, the provider describes RDS events reported for this instance during the operation and surfaces a warning diagnostic, with the RDS event message, for each one found in these categories. Has no effect if unset; see [DescribeEvents](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeEvents.html) and the `aws.rds.getEvents` data source for the source of these events. Requires the `rds:DescribeEvents` IAM permission when set.
        Returns:
        builder