1. Packages
  2. Google Cloud Native
  3. API Docs
  4. bigtableadmin
  5. bigtableadmin/v2
  6. Instance

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.bigtableadmin/v2.Instance

Explore with Pulumi AI

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

Create an instance within a project. Note that exactly one of Cluster.serve_nodes and Cluster.cluster_config.cluster_autoscaling_config can be set. If serve_nodes is set to non-zero, then the cluster is manually scaled. If cluster_config.cluster_autoscaling_config is non-empty, then autoscaling is enabled.

Create Instance Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Instance(name: string, args: InstanceArgs, opts?: CustomResourceOptions);
@overload
def Instance(resource_name: str,
             args: InstanceArgs,
             opts: Optional[ResourceOptions] = None)

@overload
def Instance(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             clusters: Optional[Mapping[str, str]] = None,
             display_name: Optional[str] = None,
             instance_id: Optional[str] = None,
             parent: Optional[str] = None,
             labels: Optional[Mapping[str, str]] = None,
             name: Optional[str] = None,
             project: Optional[str] = None,
             type: Optional[InstanceType] = None)
func NewInstance(ctx *Context, name string, args InstanceArgs, opts ...ResourceOption) (*Instance, error)
public Instance(string name, InstanceArgs args, CustomResourceOptions? opts = null)
public Instance(String name, InstanceArgs args)
public Instance(String name, InstanceArgs args, CustomResourceOptions options)
type: google-native:bigtableadmin/v2:Instance
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. InstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. InstanceArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. InstanceArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. InstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. InstanceArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var exampleinstanceResourceResourceFromBigtableadminv2 = new GoogleNative.BigtableAdmin.V2.Instance("exampleinstanceResourceResourceFromBigtableadminv2", new()
{
    Clusters = 
    {
        { "string", "string" },
    },
    DisplayName = "string",
    InstanceId = "string",
    Parent = "string",
    Labels = 
    {
        { "string", "string" },
    },
    Name = "string",
    Project = "string",
    Type = GoogleNative.BigtableAdmin.V2.InstanceType.TypeUnspecified,
});
Copy
example, err := bigtableadmin.NewInstance(ctx, "exampleinstanceResourceResourceFromBigtableadminv2", &bigtableadmin.InstanceArgs{
	Clusters: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	DisplayName: pulumi.String("string"),
	InstanceId:  pulumi.String("string"),
	Parent:      pulumi.String("string"),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Name:    pulumi.String("string"),
	Project: pulumi.String("string"),
	Type:    bigtableadmin.InstanceTypeTypeUnspecified,
})
Copy
var exampleinstanceResourceResourceFromBigtableadminv2 = new com.pulumi.googlenative.bigtableadmin_v2.Instance("exampleinstanceResourceResourceFromBigtableadminv2", com.pulumi.googlenative.bigtableadmin_v2.InstanceArgs.builder()
    .clusters(Map.of("string", "string"))
    .displayName("string")
    .instanceId("string")
    .parent("string")
    .labels(Map.of("string", "string"))
    .name("string")
    .project("string")
    .type("TYPE_UNSPECIFIED")
    .build());
Copy
exampleinstance_resource_resource_from_bigtableadminv2 = google_native.bigtableadmin.v2.Instance("exampleinstanceResourceResourceFromBigtableadminv2",
    clusters={
        "string": "string",
    },
    display_name="string",
    instance_id="string",
    parent="string",
    labels={
        "string": "string",
    },
    name="string",
    project="string",
    type=google_native.bigtableadmin.v2.InstanceType.TYPE_UNSPECIFIED)
Copy
const exampleinstanceResourceResourceFromBigtableadminv2 = new google_native.bigtableadmin.v2.Instance("exampleinstanceResourceResourceFromBigtableadminv2", {
    clusters: {
        string: "string",
    },
    displayName: "string",
    instanceId: "string",
    parent: "string",
    labels: {
        string: "string",
    },
    name: "string",
    project: "string",
    type: google_native.bigtableadmin.v2.InstanceType.TypeUnspecified,
});
Copy
type: google-native:bigtableadmin/v2:Instance
properties:
    clusters:
        string: string
    displayName: string
    instanceId: string
    labels:
        string: string
    name: string
    parent: string
    project: string
    type: TYPE_UNSPECIFIED
Copy

Instance Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Instance resource accepts the following input properties:

Clusters This property is required. Dictionary<string, string>
The clusters to be created within the instance, mapped by desired cluster ID, e.g., just mycluster rather than projects/myproject/instances/myinstance/clusters/mycluster. Fields marked OutputOnly must be left blank.
DisplayName This property is required. string
The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.
InstanceId This property is required. string
The ID to be used when referring to the new instance within its project, e.g., just myinstance rather than projects/myproject/instances/myinstance.
Parent This property is required. string
The unique name of the project in which to create the new instance. Values are of the form projects/{project}.
Labels Dictionary<string, string>
Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: \p{Ll}\p{Lo}{0,62}. * Label values must be between 0 and 63 characters long and must conform to the regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes.
Name string
The unique name of the instance. Values are of the form projects/{project}/instances/a-z+[a-z0-9].
Project Changes to this property will trigger replacement. string
Type Pulumi.GoogleNative.BigtableAdmin.V2.InstanceType
The type of the instance. Defaults to PRODUCTION.
Clusters This property is required. map[string]string
The clusters to be created within the instance, mapped by desired cluster ID, e.g., just mycluster rather than projects/myproject/instances/myinstance/clusters/mycluster. Fields marked OutputOnly must be left blank.
DisplayName This property is required. string
The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.
InstanceId This property is required. string
The ID to be used when referring to the new instance within its project, e.g., just myinstance rather than projects/myproject/instances/myinstance.
Parent This property is required. string
The unique name of the project in which to create the new instance. Values are of the form projects/{project}.
Labels map[string]string
Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: \p{Ll}\p{Lo}{0,62}. * Label values must be between 0 and 63 characters long and must conform to the regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes.
Name string
The unique name of the instance. Values are of the form projects/{project}/instances/a-z+[a-z0-9].
Project Changes to this property will trigger replacement. string
Type InstanceType
The type of the instance. Defaults to PRODUCTION.
clusters This property is required. Map<String,String>
The clusters to be created within the instance, mapped by desired cluster ID, e.g., just mycluster rather than projects/myproject/instances/myinstance/clusters/mycluster. Fields marked OutputOnly must be left blank.
displayName This property is required. String
The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.
instanceId This property is required. String
The ID to be used when referring to the new instance within its project, e.g., just myinstance rather than projects/myproject/instances/myinstance.
parent This property is required. String
The unique name of the project in which to create the new instance. Values are of the form projects/{project}.
labels Map<String,String>
Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: \p{Ll}\p{Lo}{0,62}. * Label values must be between 0 and 63 characters long and must conform to the regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes.
name String
The unique name of the instance. Values are of the form projects/{project}/instances/a-z+[a-z0-9].
project Changes to this property will trigger replacement. String
type InstanceType
The type of the instance. Defaults to PRODUCTION.
clusters This property is required. {[key: string]: string}
The clusters to be created within the instance, mapped by desired cluster ID, e.g., just mycluster rather than projects/myproject/instances/myinstance/clusters/mycluster. Fields marked OutputOnly must be left blank.
displayName This property is required. string
The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.
instanceId This property is required. string
The ID to be used when referring to the new instance within its project, e.g., just myinstance rather than projects/myproject/instances/myinstance.
parent This property is required. string
The unique name of the project in which to create the new instance. Values are of the form projects/{project}.
labels {[key: string]: string}
Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: \p{Ll}\p{Lo}{0,62}. * Label values must be between 0 and 63 characters long and must conform to the regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes.
name string
The unique name of the instance. Values are of the form projects/{project}/instances/a-z+[a-z0-9].
project Changes to this property will trigger replacement. string
type InstanceType
The type of the instance. Defaults to PRODUCTION.
clusters This property is required. Mapping[str, str]
The clusters to be created within the instance, mapped by desired cluster ID, e.g., just mycluster rather than projects/myproject/instances/myinstance/clusters/mycluster. Fields marked OutputOnly must be left blank.
display_name This property is required. str
The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.
instance_id This property is required. str
The ID to be used when referring to the new instance within its project, e.g., just myinstance rather than projects/myproject/instances/myinstance.
parent This property is required. str
The unique name of the project in which to create the new instance. Values are of the form projects/{project}.
labels Mapping[str, str]
Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: \p{Ll}\p{Lo}{0,62}. * Label values must be between 0 and 63 characters long and must conform to the regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes.
name str
The unique name of the instance. Values are of the form projects/{project}/instances/a-z+[a-z0-9].
project Changes to this property will trigger replacement. str
type InstanceType
The type of the instance. Defaults to PRODUCTION.
clusters This property is required. Map<String>
The clusters to be created within the instance, mapped by desired cluster ID, e.g., just mycluster rather than projects/myproject/instances/myinstance/clusters/mycluster. Fields marked OutputOnly must be left blank.
displayName This property is required. String
The descriptive name for this instance as it appears in UIs. Can be changed at any time, but should be kept globally unique to avoid confusion.
instanceId This property is required. String
The ID to be used when referring to the new instance within its project, e.g., just myinstance rather than projects/myproject/instances/myinstance.
parent This property is required. String
The unique name of the project in which to create the new instance. Values are of the form projects/{project}.
labels Map<String>
Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. They can be used to filter resources and aggregate metrics. * Label keys must be between 1 and 63 characters long and must conform to the regular expression: \p{Ll}\p{Lo}{0,62}. * Label values must be between 0 and 63 characters long and must conform to the regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}. * No more than 64 labels can be associated with a given resource. * Keys and values must both be under 128 bytes.
name String
The unique name of the instance. Values are of the form projects/{project}/instances/a-z+[a-z0-9].
project Changes to this property will trigger replacement. String
type "TYPE_UNSPECIFIED" | "PRODUCTION" | "DEVELOPMENT"
The type of the instance. Defaults to PRODUCTION.

Outputs

All input properties are implicitly available as output properties. Additionally, the Instance resource produces the following output properties:

CreateTime string
A commit timestamp representing when this Instance was created. For instances created before this field was added (August 2021), this value is seconds: 0, nanos: 1.
Id string
The provider-assigned unique ID for this managed resource.
SatisfiesPzs bool
Reserved for future use.
State string
The current state of the instance.
CreateTime string
A commit timestamp representing when this Instance was created. For instances created before this field was added (August 2021), this value is seconds: 0, nanos: 1.
Id string
The provider-assigned unique ID for this managed resource.
SatisfiesPzs bool
Reserved for future use.
State string
The current state of the instance.
createTime String
A commit timestamp representing when this Instance was created. For instances created before this field was added (August 2021), this value is seconds: 0, nanos: 1.
id String
The provider-assigned unique ID for this managed resource.
satisfiesPzs Boolean
Reserved for future use.
state String
The current state of the instance.
createTime string
A commit timestamp representing when this Instance was created. For instances created before this field was added (August 2021), this value is seconds: 0, nanos: 1.
id string
The provider-assigned unique ID for this managed resource.
satisfiesPzs boolean
Reserved for future use.
state string
The current state of the instance.
create_time str
A commit timestamp representing when this Instance was created. For instances created before this field was added (August 2021), this value is seconds: 0, nanos: 1.
id str
The provider-assigned unique ID for this managed resource.
satisfies_pzs bool
Reserved for future use.
state str
The current state of the instance.
createTime String
A commit timestamp representing when this Instance was created. For instances created before this field was added (August 2021), this value is seconds: 0, nanos: 1.
id String
The provider-assigned unique ID for this managed resource.
satisfiesPzs Boolean
Reserved for future use.
state String
The current state of the instance.

Supporting Types

InstanceType
, InstanceTypeArgs

TypeUnspecified
TYPE_UNSPECIFIEDThe type of the instance is unspecified. If set when creating an instance, a PRODUCTION instance will be created. If set when updating an instance, the type will be left unchanged.
Production
PRODUCTIONAn instance meant for production use. serve_nodes must be set on the cluster.
Development
DEVELOPMENTDEPRECATED: Prefer PRODUCTION for all use cases, as it no longer enforces a higher minimum node count than DEVELOPMENT.
InstanceTypeTypeUnspecified
TYPE_UNSPECIFIEDThe type of the instance is unspecified. If set when creating an instance, a PRODUCTION instance will be created. If set when updating an instance, the type will be left unchanged.
InstanceTypeProduction
PRODUCTIONAn instance meant for production use. serve_nodes must be set on the cluster.
InstanceTypeDevelopment
DEVELOPMENTDEPRECATED: Prefer PRODUCTION for all use cases, as it no longer enforces a higher minimum node count than DEVELOPMENT.
TypeUnspecified
TYPE_UNSPECIFIEDThe type of the instance is unspecified. If set when creating an instance, a PRODUCTION instance will be created. If set when updating an instance, the type will be left unchanged.
Production
PRODUCTIONAn instance meant for production use. serve_nodes must be set on the cluster.
Development
DEVELOPMENTDEPRECATED: Prefer PRODUCTION for all use cases, as it no longer enforces a higher minimum node count than DEVELOPMENT.
TypeUnspecified
TYPE_UNSPECIFIEDThe type of the instance is unspecified. If set when creating an instance, a PRODUCTION instance will be created. If set when updating an instance, the type will be left unchanged.
Production
PRODUCTIONAn instance meant for production use. serve_nodes must be set on the cluster.
Development
DEVELOPMENTDEPRECATED: Prefer PRODUCTION for all use cases, as it no longer enforces a higher minimum node count than DEVELOPMENT.
TYPE_UNSPECIFIED
TYPE_UNSPECIFIEDThe type of the instance is unspecified. If set when creating an instance, a PRODUCTION instance will be created. If set when updating an instance, the type will be left unchanged.
PRODUCTION
PRODUCTIONAn instance meant for production use. serve_nodes must be set on the cluster.
DEVELOPMENT
DEVELOPMENTDEPRECATED: Prefer PRODUCTION for all use cases, as it no longer enforces a higher minimum node count than DEVELOPMENT.
"TYPE_UNSPECIFIED"
TYPE_UNSPECIFIEDThe type of the instance is unspecified. If set when creating an instance, a PRODUCTION instance will be created. If set when updating an instance, the type will be left unchanged.
"PRODUCTION"
PRODUCTIONAn instance meant for production use. serve_nodes must be set on the cluster.
"DEVELOPMENT"
DEVELOPMENTDEPRECATED: Prefer PRODUCTION for all use cases, as it no longer enforces a higher minimum node count than DEVELOPMENT.

Package Details

Repository
Google Cloud Native pulumi/pulumi-google-native
License
Apache-2.0

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi