All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azure.hdinsight.outputs.SparkClusterRolesWorkerNode Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.azure.hdinsight.outputs;

import com.pulumi.azure.hdinsight.outputs.SparkClusterRolesWorkerNodeAutoscale;
import com.pulumi.azure.hdinsight.outputs.SparkClusterRolesWorkerNodeScriptAction;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class SparkClusterRolesWorkerNode {
    /**
     * @return A `autoscale` block as defined below.
     * 
     */
    private @Nullable SparkClusterRolesWorkerNodeAutoscale autoscale;
    /**
     * @return The Password associated with the local administrator for the Worker Nodes. Changing this forces a new resource to be created.
     * 
     * > **NOTE:** If specified, this password must be at least 10 characters in length and must contain at least one digit, one uppercase and one lower case letter, one non-alphanumeric character (except characters ' " ` \).
     * 
     */
    private @Nullable String password;
    /**
     * @return The script action which will run on the cluster. One or more `script_actions` blocks as defined above.
     * 
     */
    private @Nullable List scriptActions;
    /**
     * @return A list of SSH Keys which should be used for the local administrator on the Worker Nodes. Changing this forces a new resource to be created.
     * 
     * > **NOTE:** Either a `password` or one or more `ssh_keys` must be specified - but not both.
     * 
     */
    private @Nullable List sshKeys;
    /**
     * @return The ID of the Subnet within the Virtual Network where the Worker Nodes should be provisioned within. Changing this forces a new resource to be created.
     * 
     */
    private @Nullable String subnetId;
    /**
     * @return The number of instances which should be run for the Worker Nodes.
     * 
     */
    private Integer targetInstanceCount;
    /**
     * @return The Username of the local administrator for the Worker Nodes. Changing this forces a new resource to be created.
     * 
     */
    private String username;
    /**
     * @return The ID of the Virtual Network where the Worker Nodes should be provisioned within. Changing this forces a new resource to be created.
     * 
     */
    private @Nullable String virtualNetworkId;
    /**
     * @return The Size of the Virtual Machine which should be used as the Worker Nodes. Possible values are `ExtraSmall`, `Small`, `Medium`, `Large`, `ExtraLarge`, `A5`, `A6`, `A7`, `A8`, `A9`, `A10`, `A11`, `Standard_A1_V2`, `Standard_A2_V2`, `Standard_A2m_V2`, `Standard_A3`, `Standard_A4_V2`, `Standard_A4m_V2`, `Standard_A8_V2`, `Standard_A8m_V2`, `Standard_D1`, `Standard_D2`, `Standard_D3`, `Standard_D4`, `Standard_D11`, `Standard_D12`, `Standard_D13`, `Standard_D14`, `Standard_D1_V2`, `Standard_D2_V2`, `Standard_D3_V2`, `Standard_D4_V2`, `Standard_D5_V2`, `Standard_D11_V2`, `Standard_D12_V2`, `Standard_D13_V2`, `Standard_D14_V2`, `Standard_DS1_V2`, `Standard_DS2_V2`, `Standard_DS3_V2`, `Standard_DS4_V2`, `Standard_DS5_V2`, `Standard_DS11_V2`, `Standard_DS12_V2`, `Standard_DS13_V2`, `Standard_DS14_V2`, `Standard_E2_V3`, `Standard_E4_V3`, `Standard_E8_V3`, `Standard_E16_V3`, `Standard_E20_V3`, `Standard_E32_V3`, `Standard_E64_V3`, `Standard_E64i_V3`, `Standard_E2s_V3`, `Standard_E4s_V3`, `Standard_E8s_V3`, `Standard_E16s_V3`, `Standard_E20s_V3`, `Standard_E32s_V3`, `Standard_E64s_V3`, `Standard_E64is_V3`, `Standard_D2a_V4`, `Standard_D4a_V4`, `Standard_D8a_V4`, `Standard_D16a_V4`, `Standard_D32a_V4`, `Standard_D48a_V4`, `Standard_D64a_V4`, `Standard_D96a_V4`, `Standard_E2a_V4`, `Standard_E4a_V4`, `Standard_E8a_V4`, `Standard_E16a_V4`, `Standard_E20a_V4`, `Standard_E32a_V4`, `Standard_E48a_V4`, `Standard_E64a_V4`, `Standard_E96a_V4`, `Standard_D2ads_V5`, `Standard_D4ads_V5`, `Standard_D8ads_V5`, `Standard_D16ads_V5`, `Standard_D32ads_V5`, `Standard_D48ads_V5`, `Standard_D64ads_V5`, `Standard_D96ads_V5`, `Standard_E2ads_V5`, `Standard_E4ads_V5`, `Standard_E8ads_V5`, `Standard_E16ads_V5`, `Standard_E20ads_V5`, `Standard_E32ads_V5`, `Standard_E48ads_V5`, `Standard_E64ads_V5`, `Standard_E96ads_V5`, `Standard_G1`, `Standard_G2`, `Standard_G3`, `Standard_G4`, `Standard_G5`, `Standard_F2s_V2`, `Standard_F4s_V2`, `Standard_F8s_V2`, `Standard_F16s_V2`, `Standard_F32s_V2`, `Standard_F64s_V2`, `Standard_F72s_V2`, `Standard_GS1`, `Standard_GS2`, `Standard_GS3`, `Standard_GS4`, `Standard_GS5` and `Standard_NC24`. Changing this forces a new resource to be created.
     * 
     */
    private String vmSize;

    private SparkClusterRolesWorkerNode() {}
    /**
     * @return A `autoscale` block as defined below.
     * 
     */
    public Optional autoscale() {
        return Optional.ofNullable(this.autoscale);
    }
    /**
     * @return The Password associated with the local administrator for the Worker Nodes. Changing this forces a new resource to be created.
     * 
     * > **NOTE:** If specified, this password must be at least 10 characters in length and must contain at least one digit, one uppercase and one lower case letter, one non-alphanumeric character (except characters ' " ` \).
     * 
     */
    public Optional password() {
        return Optional.ofNullable(this.password);
    }
    /**
     * @return The script action which will run on the cluster. One or more `script_actions` blocks as defined above.
     * 
     */
    public List scriptActions() {
        return this.scriptActions == null ? List.of() : this.scriptActions;
    }
    /**
     * @return A list of SSH Keys which should be used for the local administrator on the Worker Nodes. Changing this forces a new resource to be created.
     * 
     * > **NOTE:** Either a `password` or one or more `ssh_keys` must be specified - but not both.
     * 
     */
    public List sshKeys() {
        return this.sshKeys == null ? List.of() : this.sshKeys;
    }
    /**
     * @return The ID of the Subnet within the Virtual Network where the Worker Nodes should be provisioned within. Changing this forces a new resource to be created.
     * 
     */
    public Optional subnetId() {
        return Optional.ofNullable(this.subnetId);
    }
    /**
     * @return The number of instances which should be run for the Worker Nodes.
     * 
     */
    public Integer targetInstanceCount() {
        return this.targetInstanceCount;
    }
    /**
     * @return The Username of the local administrator for the Worker Nodes. Changing this forces a new resource to be created.
     * 
     */
    public String username() {
        return this.username;
    }
    /**
     * @return The ID of the Virtual Network where the Worker Nodes should be provisioned within. Changing this forces a new resource to be created.
     * 
     */
    public Optional virtualNetworkId() {
        return Optional.ofNullable(this.virtualNetworkId);
    }
    /**
     * @return The Size of the Virtual Machine which should be used as the Worker Nodes. Possible values are `ExtraSmall`, `Small`, `Medium`, `Large`, `ExtraLarge`, `A5`, `A6`, `A7`, `A8`, `A9`, `A10`, `A11`, `Standard_A1_V2`, `Standard_A2_V2`, `Standard_A2m_V2`, `Standard_A3`, `Standard_A4_V2`, `Standard_A4m_V2`, `Standard_A8_V2`, `Standard_A8m_V2`, `Standard_D1`, `Standard_D2`, `Standard_D3`, `Standard_D4`, `Standard_D11`, `Standard_D12`, `Standard_D13`, `Standard_D14`, `Standard_D1_V2`, `Standard_D2_V2`, `Standard_D3_V2`, `Standard_D4_V2`, `Standard_D5_V2`, `Standard_D11_V2`, `Standard_D12_V2`, `Standard_D13_V2`, `Standard_D14_V2`, `Standard_DS1_V2`, `Standard_DS2_V2`, `Standard_DS3_V2`, `Standard_DS4_V2`, `Standard_DS5_V2`, `Standard_DS11_V2`, `Standard_DS12_V2`, `Standard_DS13_V2`, `Standard_DS14_V2`, `Standard_E2_V3`, `Standard_E4_V3`, `Standard_E8_V3`, `Standard_E16_V3`, `Standard_E20_V3`, `Standard_E32_V3`, `Standard_E64_V3`, `Standard_E64i_V3`, `Standard_E2s_V3`, `Standard_E4s_V3`, `Standard_E8s_V3`, `Standard_E16s_V3`, `Standard_E20s_V3`, `Standard_E32s_V3`, `Standard_E64s_V3`, `Standard_E64is_V3`, `Standard_D2a_V4`, `Standard_D4a_V4`, `Standard_D8a_V4`, `Standard_D16a_V4`, `Standard_D32a_V4`, `Standard_D48a_V4`, `Standard_D64a_V4`, `Standard_D96a_V4`, `Standard_E2a_V4`, `Standard_E4a_V4`, `Standard_E8a_V4`, `Standard_E16a_V4`, `Standard_E20a_V4`, `Standard_E32a_V4`, `Standard_E48a_V4`, `Standard_E64a_V4`, `Standard_E96a_V4`, `Standard_D2ads_V5`, `Standard_D4ads_V5`, `Standard_D8ads_V5`, `Standard_D16ads_V5`, `Standard_D32ads_V5`, `Standard_D48ads_V5`, `Standard_D64ads_V5`, `Standard_D96ads_V5`, `Standard_E2ads_V5`, `Standard_E4ads_V5`, `Standard_E8ads_V5`, `Standard_E16ads_V5`, `Standard_E20ads_V5`, `Standard_E32ads_V5`, `Standard_E48ads_V5`, `Standard_E64ads_V5`, `Standard_E96ads_V5`, `Standard_G1`, `Standard_G2`, `Standard_G3`, `Standard_G4`, `Standard_G5`, `Standard_F2s_V2`, `Standard_F4s_V2`, `Standard_F8s_V2`, `Standard_F16s_V2`, `Standard_F32s_V2`, `Standard_F64s_V2`, `Standard_F72s_V2`, `Standard_GS1`, `Standard_GS2`, `Standard_GS3`, `Standard_GS4`, `Standard_GS5` and `Standard_NC24`. Changing this forces a new resource to be created.
     * 
     */
    public String vmSize() {
        return this.vmSize;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(SparkClusterRolesWorkerNode defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable SparkClusterRolesWorkerNodeAutoscale autoscale;
        private @Nullable String password;
        private @Nullable List scriptActions;
        private @Nullable List sshKeys;
        private @Nullable String subnetId;
        private Integer targetInstanceCount;
        private String username;
        private @Nullable String virtualNetworkId;
        private String vmSize;
        public Builder() {}
        public Builder(SparkClusterRolesWorkerNode defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.autoscale = defaults.autoscale;
    	      this.password = defaults.password;
    	      this.scriptActions = defaults.scriptActions;
    	      this.sshKeys = defaults.sshKeys;
    	      this.subnetId = defaults.subnetId;
    	      this.targetInstanceCount = defaults.targetInstanceCount;
    	      this.username = defaults.username;
    	      this.virtualNetworkId = defaults.virtualNetworkId;
    	      this.vmSize = defaults.vmSize;
        }

        @CustomType.Setter
        public Builder autoscale(@Nullable SparkClusterRolesWorkerNodeAutoscale autoscale) {

            this.autoscale = autoscale;
            return this;
        }
        @CustomType.Setter
        public Builder password(@Nullable String password) {

            this.password = password;
            return this;
        }
        @CustomType.Setter
        public Builder scriptActions(@Nullable List scriptActions) {

            this.scriptActions = scriptActions;
            return this;
        }
        public Builder scriptActions(SparkClusterRolesWorkerNodeScriptAction... scriptActions) {
            return scriptActions(List.of(scriptActions));
        }
        @CustomType.Setter
        public Builder sshKeys(@Nullable List sshKeys) {

            this.sshKeys = sshKeys;
            return this;
        }
        public Builder sshKeys(String... sshKeys) {
            return sshKeys(List.of(sshKeys));
        }
        @CustomType.Setter
        public Builder subnetId(@Nullable String subnetId) {

            this.subnetId = subnetId;
            return this;
        }
        @CustomType.Setter
        public Builder targetInstanceCount(Integer targetInstanceCount) {
            if (targetInstanceCount == null) {
              throw new MissingRequiredPropertyException("SparkClusterRolesWorkerNode", "targetInstanceCount");
            }
            this.targetInstanceCount = targetInstanceCount;
            return this;
        }
        @CustomType.Setter
        public Builder username(String username) {
            if (username == null) {
              throw new MissingRequiredPropertyException("SparkClusterRolesWorkerNode", "username");
            }
            this.username = username;
            return this;
        }
        @CustomType.Setter
        public Builder virtualNetworkId(@Nullable String virtualNetworkId) {

            this.virtualNetworkId = virtualNetworkId;
            return this;
        }
        @CustomType.Setter
        public Builder vmSize(String vmSize) {
            if (vmSize == null) {
              throw new MissingRequiredPropertyException("SparkClusterRolesWorkerNode", "vmSize");
            }
            this.vmSize = vmSize;
            return this;
        }
        public SparkClusterRolesWorkerNode build() {
            final var _resultValue = new SparkClusterRolesWorkerNode();
            _resultValue.autoscale = autoscale;
            _resultValue.password = password;
            _resultValue.scriptActions = scriptActions;
            _resultValue.sshKeys = sshKeys;
            _resultValue.subnetId = subnetId;
            _resultValue.targetInstanceCount = targetInstanceCount;
            _resultValue.username = username;
            _resultValue.virtualNetworkId = virtualNetworkId;
            _resultValue.vmSize = vmSize;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy