Package com.pulumi.aws.eks
Class ClusterArgs.Builder
- java.lang.Object
-
- com.pulumi.aws.eks.ClusterArgs.Builder
-
- Enclosing class:
- ClusterArgs
public static final class ClusterArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()Builder(ClusterArgs defaults)
-
Method Summary
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(ClusterArgs defaults)
-
-
Method Detail
-
accessConfig
public ClusterArgs.Builder accessConfig(@Nullable com.pulumi.core.Output<ClusterAccessConfigArgs> accessConfig)
- Parameters:
accessConfig- Configuration block for the access config associated with your cluster, see [Amazon EKS Access Entries](https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html). Detailed below.- Returns:
- builder
-
accessConfig
public ClusterArgs.Builder accessConfig(ClusterAccessConfigArgs accessConfig)
- Parameters:
accessConfig- Configuration block for the access config associated with your cluster, see [Amazon EKS Access Entries](https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html). Detailed below.- Returns:
- builder
-
bootstrapSelfManagedAddons
public ClusterArgs.Builder bootstrapSelfManagedAddons(@Nullable com.pulumi.core.Output<java.lang.Boolean> bootstrapSelfManagedAddons)
- Parameters:
bootstrapSelfManagedAddons- Install default unmanaged add-ons, such as `aws-cni`, `kube-proxy`, and CoreDNS during cluster creation. If `false`, you must manually install desired add-ons. Changing this value will force a new cluster to be created. Defaults to `true`.- Returns:
- builder
-
bootstrapSelfManagedAddons
public ClusterArgs.Builder bootstrapSelfManagedAddons(java.lang.Boolean bootstrapSelfManagedAddons)
- Parameters:
bootstrapSelfManagedAddons- Install default unmanaged add-ons, such as `aws-cni`, `kube-proxy`, and CoreDNS during cluster creation. If `false`, you must manually install desired add-ons. Changing this value will force a new cluster to be created. Defaults to `true`.- Returns:
- builder
-
computeConfig
public ClusterArgs.Builder computeConfig(@Nullable com.pulumi.core.Output<ClusterComputeConfigArgs> computeConfig)
- Parameters:
computeConfig- Configuration block with compute configuration for EKS Auto Mode. Detailed below.- Returns:
- builder
-
computeConfig
public ClusterArgs.Builder computeConfig(ClusterComputeConfigArgs computeConfig)
- Parameters:
computeConfig- Configuration block with compute configuration for EKS Auto Mode. Detailed below.- Returns:
- builder
-
controlPlaneScalingConfig
public ClusterArgs.Builder controlPlaneScalingConfig(@Nullable com.pulumi.core.Output<ClusterControlPlaneScalingConfigArgs> controlPlaneScalingConfig)
- Parameters:
controlPlaneScalingConfig- Configuration block for the control plane scaling tier. See [EKS Provisioned Control Plane](https://docs.aws.amazon.com/eks/latest/userguide/eks-provisioned-control-plane-getting-started.html) for more information. Detailed below.- Returns:
- builder
-
controlPlaneScalingConfig
public ClusterArgs.Builder controlPlaneScalingConfig(ClusterControlPlaneScalingConfigArgs controlPlaneScalingConfig)
- Parameters:
controlPlaneScalingConfig- Configuration block for the control plane scaling tier. See [EKS Provisioned Control Plane](https://docs.aws.amazon.com/eks/latest/userguide/eks-provisioned-control-plane-getting-started.html) for more information. Detailed below.- Returns:
- builder
-
defaultAddonsToRemoves
@Deprecated public ClusterArgs.Builder defaultAddonsToRemoves(@Nullable com.pulumi.core.Output<java.util.List<java.lang.String>> defaultAddonsToRemoves)
Deprecated.Configure bootstrapSelfManagedAddons instead. This attribute will be removed in the next major version of the provider- Returns:
- builder
-
defaultAddonsToRemoves
@Deprecated public ClusterArgs.Builder defaultAddonsToRemoves(java.util.List<java.lang.String> defaultAddonsToRemoves)
Deprecated.Configure bootstrapSelfManagedAddons instead. This attribute will be removed in the next major version of the provider- Returns:
- builder
-
defaultAddonsToRemoves
@Deprecated public ClusterArgs.Builder defaultAddonsToRemoves(java.lang.String... defaultAddonsToRemoves)
Deprecated.Configure bootstrapSelfManagedAddons instead. This attribute will be removed in the next major version of the provider- Returns:
- builder
-
deletionProtection
public ClusterArgs.Builder deletionProtection(@Nullable com.pulumi.core.Output<java.lang.Boolean> deletionProtection)
- Parameters:
deletionProtection- Whether to enable deletion protection for the cluster. When enabled, the cluster cannot be deleted unless deletion protection is first disabled. Default: `false`.- Returns:
- builder
-
deletionProtection
public ClusterArgs.Builder deletionProtection(java.lang.Boolean deletionProtection)
- Parameters:
deletionProtection- Whether to enable deletion protection for the cluster. When enabled, the cluster cannot be deleted unless deletion protection is first disabled. Default: `false`.- Returns:
- builder
-
enabledClusterLogTypes
public ClusterArgs.Builder enabledClusterLogTypes(@Nullable com.pulumi.core.Output<java.util.List<java.lang.String>> enabledClusterLogTypes)
- Parameters:
enabledClusterLogTypes- List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).- Returns:
- builder
-
enabledClusterLogTypes
public ClusterArgs.Builder enabledClusterLogTypes(java.util.List<java.lang.String> enabledClusterLogTypes)
- Parameters:
enabledClusterLogTypes- List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).- Returns:
- builder
-
enabledClusterLogTypes
public ClusterArgs.Builder enabledClusterLogTypes(java.lang.String... enabledClusterLogTypes)
- Parameters:
enabledClusterLogTypes- List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).- Returns:
- builder
-
encryptionConfig
public ClusterArgs.Builder encryptionConfig(@Nullable com.pulumi.core.Output<ClusterEncryptionConfigArgs> encryptionConfig)
- Parameters:
encryptionConfig- Configuration block with encryption configuration for the cluster. Detailed below.- Returns:
- builder
-
encryptionConfig
public ClusterArgs.Builder encryptionConfig(ClusterEncryptionConfigArgs encryptionConfig)
- Parameters:
encryptionConfig- Configuration block with encryption configuration for the cluster. Detailed below.- Returns:
- builder
-
forceUpdateVersion
public ClusterArgs.Builder forceUpdateVersion(@Nullable com.pulumi.core.Output<java.lang.Boolean> forceUpdateVersion)
- Parameters:
forceUpdateVersion- Force version update by overriding upgrade-blocking readiness checks when updating a cluster.- Returns:
- builder
-
forceUpdateVersion
public ClusterArgs.Builder forceUpdateVersion(java.lang.Boolean forceUpdateVersion)
- Parameters:
forceUpdateVersion- Force version update by overriding upgrade-blocking readiness checks when updating a cluster.- Returns:
- builder
-
kubeApiServerConfig
public ClusterArgs.Builder kubeApiServerConfig(@Nullable com.pulumi.core.Output<ClusterKubeApiServerConfigArgs> kubeApiServerConfig)
- Parameters:
kubeApiServerConfig- Configuration block for customizing the Kubernetes API server. Detailed below.- Returns:
- builder
-
kubeApiServerConfig
public ClusterArgs.Builder kubeApiServerConfig(ClusterKubeApiServerConfigArgs kubeApiServerConfig)
- Parameters:
kubeApiServerConfig- Configuration block for customizing the Kubernetes API server. Detailed below.- Returns:
- builder
-
kubeControllerManagerConfig
public ClusterArgs.Builder kubeControllerManagerConfig(@Nullable com.pulumi.core.Output<ClusterKubeControllerManagerConfigArgs> kubeControllerManagerConfig)
- Parameters:
kubeControllerManagerConfig- Configuration block for customizing the Kubernetes controller manager. Detailed below.- Returns:
- builder
-
kubeControllerManagerConfig
public ClusterArgs.Builder kubeControllerManagerConfig(ClusterKubeControllerManagerConfigArgs kubeControllerManagerConfig)
- Parameters:
kubeControllerManagerConfig- Configuration block for customizing the Kubernetes controller manager. Detailed below.- Returns:
- builder
-
kubeSchedulerConfig
public ClusterArgs.Builder kubeSchedulerConfig(@Nullable com.pulumi.core.Output<ClusterKubeSchedulerConfigArgs> kubeSchedulerConfig)
- Parameters:
kubeSchedulerConfig- Configuration block for customizing the Kubernetes scheduler. Detailed below.- Returns:
- builder
-
kubeSchedulerConfig
public ClusterArgs.Builder kubeSchedulerConfig(ClusterKubeSchedulerConfigArgs kubeSchedulerConfig)
- Parameters:
kubeSchedulerConfig- Configuration block for customizing the Kubernetes scheduler. Detailed below.- Returns:
- builder
-
kubernetesNetworkConfig
public ClusterArgs.Builder kubernetesNetworkConfig(@Nullable com.pulumi.core.Output<ClusterKubernetesNetworkConfigArgs> kubernetesNetworkConfig)
- Parameters:
kubernetesNetworkConfig- Configuration block with kubernetes network configuration for the cluster. Detailed below. If removed, the provider will only perform drift detection if a configuration value is provided.- Returns:
- builder
-
kubernetesNetworkConfig
public ClusterArgs.Builder kubernetesNetworkConfig(ClusterKubernetesNetworkConfigArgs kubernetesNetworkConfig)
- Parameters:
kubernetesNetworkConfig- Configuration block with kubernetes network configuration for the cluster. Detailed below. If removed, the provider will only perform drift detection if a configuration value is provided.- Returns:
- builder
-
name
public ClusterArgs.Builder name(@Nullable com.pulumi.core.Output<java.lang.String> name)
- Parameters:
name- Name of the cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]*$`).- Returns:
- builder
-
name
public ClusterArgs.Builder name(java.lang.String name)
- Parameters:
name- Name of the cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]*$`).- Returns:
- builder
-
outpostConfig
public ClusterArgs.Builder outpostConfig(@Nullable com.pulumi.core.Output<ClusterOutpostConfigArgs> outpostConfig)
- Parameters:
outpostConfig- Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.- Returns:
- builder
-
outpostConfig
public ClusterArgs.Builder outpostConfig(ClusterOutpostConfigArgs outpostConfig)
- Parameters:
outpostConfig- Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.- Returns:
- builder
-
region
public ClusterArgs.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 ClusterArgs.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
-
remoteNetworkConfig
public ClusterArgs.Builder remoteNetworkConfig(@Nullable com.pulumi.core.Output<ClusterRemoteNetworkConfigArgs> remoteNetworkConfig)
- Parameters:
remoteNetworkConfig- Configuration block with remote network configuration for EKS Hybrid Nodes. Detailed below.- Returns:
- builder
-
remoteNetworkConfig
public ClusterArgs.Builder remoteNetworkConfig(ClusterRemoteNetworkConfigArgs remoteNetworkConfig)
- Parameters:
remoteNetworkConfig- Configuration block with remote network configuration for EKS Hybrid Nodes. Detailed below.- Returns:
- builder
-
roleArn
public ClusterArgs.Builder roleArn(com.pulumi.core.Output<java.lang.String> roleArn)
- Parameters:
roleArn- ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding `dependsOn` if using the `aws.iam.RolePolicy` resource or `aws.iam.RolePolicyAttachment` resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.- Returns:
- builder
-
roleArn
public ClusterArgs.Builder roleArn(java.lang.String roleArn)
- Parameters:
roleArn- ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding `dependsOn` if using the `aws.iam.RolePolicy` resource or `aws.iam.RolePolicyAttachment` resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.- Returns:
- builder
-
storageConfig
public ClusterArgs.Builder storageConfig(@Nullable com.pulumi.core.Output<ClusterStorageConfigArgs> storageConfig)
- Parameters:
storageConfig- Configuration block with storage configuration for EKS Auto Mode. Detailed below.- Returns:
- builder
-
storageConfig
public ClusterArgs.Builder storageConfig(ClusterStorageConfigArgs storageConfig)
- Parameters:
storageConfig- Configuration block with storage configuration for EKS Auto Mode. Detailed below.- Returns:
- builder
-
tags
public ClusterArgs.Builder tags(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)
- Parameters:
tags- Key-value map of resource tags. 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 ClusterArgs.Builder tags(java.util.Map<java.lang.String,java.lang.String> tags)
- Parameters:
tags- Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Returns:
- builder
-
upgradePolicy
public ClusterArgs.Builder upgradePolicy(@Nullable com.pulumi.core.Output<ClusterUpgradePolicyArgs> upgradePolicy)
- Parameters:
upgradePolicy- Configuration block for the support policy to use for the cluster. See upgradePolicy for details.- Returns:
- builder
-
upgradePolicy
public ClusterArgs.Builder upgradePolicy(ClusterUpgradePolicyArgs upgradePolicy)
- Parameters:
upgradePolicy- Configuration block for the support policy to use for the cluster. See upgradePolicy for details.- Returns:
- builder
-
version
public ClusterArgs.Builder version(@Nullable com.pulumi.core.Output<java.lang.String> version)
- Parameters:
version- Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.- Returns:
- builder
-
version
public ClusterArgs.Builder version(java.lang.String version)
- Parameters:
version- Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.- Returns:
- builder
-
vpcConfig
public ClusterArgs.Builder vpcConfig(com.pulumi.core.Output<ClusterVpcConfigArgs> vpcConfig)
- Parameters:
vpcConfig- Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) and [Cluster Security Group Considerations](https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) in the Amazon EKS User Guide. Detailed below. Also contains attributes detailed in the Attributes section. The following arguments are optional:- Returns:
- builder
-
vpcConfig
public ClusterArgs.Builder vpcConfig(ClusterVpcConfigArgs vpcConfig)
- Parameters:
vpcConfig- Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) and [Cluster Security Group Considerations](https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) in the Amazon EKS User Guide. Detailed below. Also contains attributes detailed in the Attributes section. The following arguments are optional:- Returns:
- builder
-
zonalShiftConfig
public ClusterArgs.Builder zonalShiftConfig(@Nullable com.pulumi.core.Output<ClusterZonalShiftConfigArgs> zonalShiftConfig)
- Parameters:
zonalShiftConfig- Configuration block with zonal shift configuration for the cluster. Detailed below.- Returns:
- builder
-
zonalShiftConfig
public ClusterArgs.Builder zonalShiftConfig(ClusterZonalShiftConfigArgs zonalShiftConfig)
- Parameters:
zonalShiftConfig- Configuration block with zonal shift configuration for the cluster. Detailed below.- Returns:
- builder
-
build
public ClusterArgs build()
-
-