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

com.pulumi.googlenative.tpu.v1.Node Maven / Gradle / Ivy

// *** 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.googlenative.tpu.v1;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import com.pulumi.googlenative.Utilities;
import com.pulumi.googlenative.tpu.v1.NodeArgs;
import com.pulumi.googlenative.tpu.v1.outputs.NetworkEndpointResponse;
import com.pulumi.googlenative.tpu.v1.outputs.SchedulingConfigResponse;
import com.pulumi.googlenative.tpu.v1.outputs.SymptomResponse;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * Creates a node.
 * Auto-naming is currently not supported for this resource.
 * 
 */
@ResourceType(type="google-native:tpu/v1:Node")
public class Node extends com.pulumi.resources.CustomResource {
    /**
     * The type of hardware accelerators associated with this node.
     * 
     */
    @Export(name="acceleratorType", type=String.class, parameters={})
    private Output acceleratorType;

    /**
     * @return The type of hardware accelerators associated with this node.
     * 
     */
    public Output acceleratorType() {
        return this.acceleratorType;
    }
    /**
     * The API version that created this Node.
     * 
     */
    @Export(name="apiVersion", type=String.class, parameters={})
    private Output apiVersion;

    /**
     * @return The API version that created this Node.
     * 
     */
    public Output apiVersion() {
        return this.apiVersion;
    }
    /**
     * The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
     * 
     */
    @Export(name="cidrBlock", type=String.class, parameters={})
    private Output cidrBlock;

    /**
     * @return The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block.
     * 
     */
    public Output cidrBlock() {
        return this.cidrBlock;
    }
    /**
     * The time when the node was created.
     * 
     */
    @Export(name="createTime", type=String.class, parameters={})
    private Output createTime;

    /**
     * @return The time when the node was created.
     * 
     */
    public Output createTime() {
        return this.createTime;
    }
    /**
     * The user-supplied description of the TPU. Maximum of 512 characters.
     * 
     */
    @Export(name="description", type=String.class, parameters={})
    private Output description;

    /**
     * @return The user-supplied description of the TPU. Maximum of 512 characters.
     * 
     */
    public Output description() {
        return this.description;
    }
    /**
     * The health status of the TPU node.
     * 
     */
    @Export(name="health", type=String.class, parameters={})
    private Output health;

    /**
     * @return The health status of the TPU node.
     * 
     */
    public Output health() {
        return this.health;
    }
    /**
     * If this field is populated, it contains a description of why the TPU Node is unhealthy.
     * 
     */
    @Export(name="healthDescription", type=String.class, parameters={})
    private Output healthDescription;

    /**
     * @return If this field is populated, it contains a description of why the TPU Node is unhealthy.
     * 
     */
    public Output healthDescription() {
        return this.healthDescription;
    }
    /**
     * DEPRECATED! Use network_endpoints instead. The network address for the TPU Node as visible to Compute Engine instances.
     * 
     * @deprecated
     * Output only. DEPRECATED! Use network_endpoints instead. The network address for the TPU Node as visible to Compute Engine instances.
     * 
     */
    @Deprecated /* Output only. DEPRECATED! Use network_endpoints instead. The network address for the TPU Node as visible to Compute Engine instances. */
    @Export(name="ipAddress", type=String.class, parameters={})
    private Output ipAddress;

    /**
     * @return DEPRECATED! Use network_endpoints instead. The network address for the TPU Node as visible to Compute Engine instances.
     * 
     */
    public Output ipAddress() {
        return this.ipAddress;
    }
    /**
     * Resource labels to represent user-provided metadata.
     * 
     */
    @Export(name="labels", type=Map.class, parameters={String.class, String.class})
    private Output> labels;

    /**
     * @return Resource labels to represent user-provided metadata.
     * 
     */
    public Output> labels() {
        return this.labels;
    }
    @Export(name="location", type=String.class, parameters={})
    private Output location;

    public Output location() {
        return this.location;
    }
    /**
     * Immutable. The name of the TPU
     * 
     */
    @Export(name="name", type=String.class, parameters={})
    private Output name;

    /**
     * @return Immutable. The name of the TPU
     * 
     */
    public Output name() {
        return this.name;
    }
    /**
     * The name of a network they wish to peer the TPU node to. It must be a preexisting Compute Engine network inside of the project on which this API has been activated. If none is provided, "default" will be used.
     * 
     */
    @Export(name="network", type=String.class, parameters={})
    private Output network;

    /**
     * @return The name of a network they wish to peer the TPU node to. It must be a preexisting Compute Engine network inside of the project on which this API has been activated. If none is provided, "default" will be used.
     * 
     */
    public Output network() {
        return this.network;
    }
    /**
     * The network endpoints where TPU workers can be accessed and sent work. It is recommended that Tensorflow clients of the node reach out to the 0th entry in this map first.
     * 
     */
    @Export(name="networkEndpoints", type=List.class, parameters={NetworkEndpointResponse.class})
    private Output> networkEndpoints;

    /**
     * @return The network endpoints where TPU workers can be accessed and sent work. It is recommended that Tensorflow clients of the node reach out to the 0th entry in this map first.
     * 
     */
    public Output> networkEndpoints() {
        return this.networkEndpoints;
    }
    /**
     * The unqualified resource name.
     * 
     */
    @Export(name="nodeId", type=String.class, parameters={})
    private Output nodeId;

    /**
     * @return The unqualified resource name.
     * 
     */
    public Output> nodeId() {
        return Codegen.optional(this.nodeId);
    }
    /**
     * DEPRECATED! Use network_endpoints instead. The network port for the TPU Node as visible to Compute Engine instances.
     * 
     * @deprecated
     * Output only. DEPRECATED! Use network_endpoints instead. The network port for the TPU Node as visible to Compute Engine instances.
     * 
     */
    @Deprecated /* Output only. DEPRECATED! Use network_endpoints instead. The network port for the TPU Node as visible to Compute Engine instances. */
    @Export(name="port", type=String.class, parameters={})
    private Output port;

    /**
     * @return DEPRECATED! Use network_endpoints instead. The network port for the TPU Node as visible to Compute Engine instances.
     * 
     */
    public Output port() {
        return this.port;
    }
    @Export(name="project", type=String.class, parameters={})
    private Output project;

    public Output project() {
        return this.project;
    }
    /**
     * The scheduling options for this node.
     * 
     */
    @Export(name="schedulingConfig", type=SchedulingConfigResponse.class, parameters={})
    private Output schedulingConfig;

    /**
     * @return The scheduling options for this node.
     * 
     */
    public Output schedulingConfig() {
        return this.schedulingConfig;
    }
    /**
     * The service account used to run the tensor flow services within the node. To share resources, including Google Cloud Storage data, with the Tensorflow job running in the Node, this account must have permissions to that data.
     * 
     */
    @Export(name="serviceAccount", type=String.class, parameters={})
    private Output serviceAccount;

    /**
     * @return The service account used to run the tensor flow services within the node. To share resources, including Google Cloud Storage data, with the Tensorflow job running in the Node, this account must have permissions to that data.
     * 
     */
    public Output serviceAccount() {
        return this.serviceAccount;
    }
    /**
     * The current state for the TPU Node.
     * 
     */
    @Export(name="state", type=String.class, parameters={})
    private Output state;

    /**
     * @return The current state for the TPU Node.
     * 
     */
    public Output state() {
        return this.state;
    }
    /**
     * The Symptoms that have occurred to the TPU Node.
     * 
     */
    @Export(name="symptoms", type=List.class, parameters={SymptomResponse.class})
    private Output> symptoms;

    /**
     * @return The Symptoms that have occurred to the TPU Node.
     * 
     */
    public Output> symptoms() {
        return this.symptoms;
    }
    /**
     * The version of Tensorflow running in the Node.
     * 
     */
    @Export(name="tensorflowVersion", type=String.class, parameters={})
    private Output tensorflowVersion;

    /**
     * @return The version of Tensorflow running in the Node.
     * 
     */
    public Output tensorflowVersion() {
        return this.tensorflowVersion;
    }
    /**
     * Whether the VPC peering for the node is set up through Service Networking API. The VPC Peering should be set up before provisioning the node. If this field is set, cidr_block field should not be specified. If the network, that you want to peer the TPU Node to, is Shared VPC networks, the node must be created with this this field enabled.
     * 
     */
    @Export(name="useServiceNetworking", type=Boolean.class, parameters={})
    private Output useServiceNetworking;

    /**
     * @return Whether the VPC peering for the node is set up through Service Networking API. The VPC Peering should be set up before provisioning the node. If this field is set, cidr_block field should not be specified. If the network, that you want to peer the TPU Node to, is Shared VPC networks, the node must be created with this this field enabled.
     * 
     */
    public Output useServiceNetworking() {
        return this.useServiceNetworking;
    }

    /**
     *
     * @param name The _unique_ name of the resulting resource.
     */
    public Node(String name) {
        this(name, NodeArgs.Empty);
    }
    /**
     *
     * @param name The _unique_ name of the resulting resource.
     * @param args The arguments to use to populate this resource's properties.
     */
    public Node(String name, NodeArgs args) {
        this(name, args, null);
    }
    /**
     *
     * @param name The _unique_ name of the resulting resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param options A bag of options that control this resource's behavior.
     */
    public Node(String name, NodeArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        super("google-native:tpu/v1:Node", name, args == null ? NodeArgs.Empty : args, makeResourceOptions(options, Codegen.empty()));
    }

    private Node(String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        super("google-native:tpu/v1:Node", name, null, makeResourceOptions(options, id));
    }

    private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) {
        var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder()
            .version(Utilities.getVersion())
            .build();
        return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id);
    }

    /**
     * Get an existing Host resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param options Optional settings to control the behavior of the CustomResource.
     */
    public static Node get(String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) {
        return new Node(name, id, options);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy