MetastoreServiceArgs

data class MetastoreServiceArgs(val databaseType: Output<String>? = null, val encryptionConfig: Output<MetastoreServiceEncryptionConfigArgs>? = null, val hiveMetastoreConfig: Output<MetastoreServiceHiveMetastoreConfigArgs>? = null, val labels: Output<Map<String, String>>? = null, val location: Output<String>? = null, val maintenanceWindow: Output<MetastoreServiceMaintenanceWindowArgs>? = null, val metadataIntegration: Output<MetastoreServiceMetadataIntegrationArgs>? = null, val network: Output<String>? = null, val networkConfig: Output<MetastoreServiceNetworkConfigArgs>? = null, val port: Output<Int>? = null, val project: Output<String>? = null, val releaseChannel: Output<String>? = null, val scalingConfig: Output<MetastoreServiceScalingConfigArgs>? = null, val serviceId: Output<String>? = null, val telemetryConfig: Output<MetastoreServiceTelemetryConfigArgs>? = null, val tier: Output<String>? = null) : ConvertibleToJava<MetastoreServiceArgs>

A managed metastore service that serves metadata queries. To get more information about Service, see:

Example Usage

Dataproc Metastore Service Basic

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.dataproc.MetastoreService;
import com.pulumi.gcp.dataproc.MetastoreServiceArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceHiveMetastoreConfigArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceMaintenanceWindowArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var default_ = new MetastoreService("default", MetastoreServiceArgs.builder()
.hiveMetastoreConfig(MetastoreServiceHiveMetastoreConfigArgs.builder()
.version("2.3.6")
.build())
.location("us-central1")
.maintenanceWindow(MetastoreServiceMaintenanceWindowArgs.builder()
.dayOfWeek("SUNDAY")
.hourOfDay(2)
.build())
.port(9080)
.serviceId("metastore-srv")
.tier("DEVELOPER")
.build());
}
}

Dataproc Metastore Service Cmek Example

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.kms.KeyRing;
import com.pulumi.gcp.kms.KeyRingArgs;
import com.pulumi.gcp.kms.CryptoKey;
import com.pulumi.gcp.kms.CryptoKeyArgs;
import com.pulumi.gcp.dataproc.MetastoreService;
import com.pulumi.gcp.dataproc.MetastoreServiceArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceEncryptionConfigArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceHiveMetastoreConfigArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var keyRing = new KeyRing("keyRing", KeyRingArgs.builder()
.location("us-central1")
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var cryptoKey = new CryptoKey("cryptoKey", CryptoKeyArgs.builder()
.keyRing(keyRing.id())
.purpose("ENCRYPT_DECRYPT")
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var default_ = new MetastoreService("default", MetastoreServiceArgs.builder()
.serviceId("example-service")
.location("us-central1")
.encryptionConfig(MetastoreServiceEncryptionConfigArgs.builder()
.kmsKey(cryptoKey.id())
.build())
.hiveMetastoreConfig(MetastoreServiceHiveMetastoreConfigArgs.builder()
.version("3.1.2")
.build())
.build());
}
}

Dataproc Metastore Service Private Service Connect

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.dataproc.MetastoreService;
import com.pulumi.gcp.dataproc.MetastoreServiceArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceHiveMetastoreConfigArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceNetworkConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var net = new Network("net", NetworkArgs.builder()
.autoCreateSubnetworks(false)
.build());
var subnet = new Subnetwork("subnet", SubnetworkArgs.builder()
.region("us-central1")
.network(net.id())
.ipCidrRange("10.0.0.0/22")
.privateIpGoogleAccess(true)
.build());
var default_ = new MetastoreService("default", MetastoreServiceArgs.builder()
.serviceId("metastore-srv")
.location("us-central1")
.hiveMetastoreConfig(MetastoreServiceHiveMetastoreConfigArgs.builder()
.version("3.1.2")
.build())
.networkConfig(MetastoreServiceNetworkConfigArgs.builder()
.consumers(MetastoreServiceNetworkConfigConsumerArgs.builder()
.subnetwork(subnet.id())
.build())
.build())
.build());
}
}

Dataproc Metastore Service Dpms2

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.dataproc.MetastoreService;
import com.pulumi.gcp.dataproc.MetastoreServiceArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceHiveMetastoreConfigArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceScalingConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var dpms2 = new MetastoreService("dpms2", MetastoreServiceArgs.builder()
.databaseType("SPANNER")
.hiveMetastoreConfig(MetastoreServiceHiveMetastoreConfigArgs.builder()
.version("3.1.2")
.build())
.location("us-central1")
.scalingConfig(MetastoreServiceScalingConfigArgs.builder()
.instanceSize("EXTRA_SMALL")
.build())
.serviceId("dpms2")
.build());
}
}

Dataproc Metastore Service Dpms2 Scaling Factor

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.dataproc.MetastoreService;
import com.pulumi.gcp.dataproc.MetastoreServiceArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceHiveMetastoreConfigArgs;
import com.pulumi.gcp.dataproc.inputs.MetastoreServiceScalingConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var dpms2ScalingFactor = new MetastoreService("dpms2ScalingFactor", MetastoreServiceArgs.builder()
.databaseType("SPANNER")
.hiveMetastoreConfig(MetastoreServiceHiveMetastoreConfigArgs.builder()
.version("3.1.2")
.build())
.location("us-central1")
.scalingConfig(MetastoreServiceScalingConfigArgs.builder()
.scalingFactor("2")
.build())
.serviceId("dpms2sf")
.build());
}
}

Import

Service can be imported using any of these accepted formats

$ pulumi import gcp:dataproc/metastoreService:MetastoreService default projects/{{project}}/locations/{{location}}/services/{{service_id}}
$ pulumi import gcp:dataproc/metastoreService:MetastoreService default {{project}}/{{location}}/{{service_id}}
$ pulumi import gcp:dataproc/metastoreService:MetastoreService default {{location}}/{{service_id}}

Constructors

Link copied to clipboard
constructor(databaseType: Output<String>? = null, encryptionConfig: Output<MetastoreServiceEncryptionConfigArgs>? = null, hiveMetastoreConfig: Output<MetastoreServiceHiveMetastoreConfigArgs>? = null, labels: Output<Map<String, String>>? = null, location: Output<String>? = null, maintenanceWindow: Output<MetastoreServiceMaintenanceWindowArgs>? = null, metadataIntegration: Output<MetastoreServiceMetadataIntegrationArgs>? = null, network: Output<String>? = null, networkConfig: Output<MetastoreServiceNetworkConfigArgs>? = null, port: Output<Int>? = null, project: Output<String>? = null, releaseChannel: Output<String>? = null, scalingConfig: Output<MetastoreServiceScalingConfigArgs>? = null, serviceId: Output<String>? = null, telemetryConfig: Output<MetastoreServiceTelemetryConfigArgs>? = null, tier: Output<String>? = null)

Properties

Link copied to clipboard
val databaseType: Output<String>? = null

The database type that the Metastore service stores its data. Default value is MYSQL. Possible values are: MYSQL, SPANNER.

Link copied to clipboard

Information used to configure the Dataproc Metastore service to encrypt customer data at rest. Structure is documented below.

Link copied to clipboard

Configuration information specific to running Hive metastore software as the metastore service. Structure is documented below.

Link copied to clipboard
val labels: Output<Map<String, String>>? = null

User-defined labels for the metastore service.

Link copied to clipboard
val location: Output<String>? = null

The location where the metastore service should reside. The default value is global.

Link copied to clipboard

The one hour maintenance window of the metastore service. This specifies when the service can be restarted for maintenance purposes in UTC time. Maintenance window is not needed for services with the SPANNER database type. Structure is documented below.

Link copied to clipboard

The setting that defines how metastore metadata should be integrated with external services and systems.

Link copied to clipboard
val network: Output<String>? = null

The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".

Link copied to clipboard

The configuration specifying the network settings for the Dataproc Metastore service. Structure is documented below.

Link copied to clipboard
val port: Output<Int>? = null

The TCP port at which the metastore service is reached. Default: 9083.

Link copied to clipboard
val project: Output<String>? = null

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

Link copied to clipboard
val releaseChannel: Output<String>? = null

The release channel of the service. If unspecified, defaults to STABLE. Default value is STABLE. Possible values are: CANARY, STABLE.

Link copied to clipboard

Represents the scaling configuration of a metastore service. Structure is documented below.

Link copied to clipboard
val serviceId: Output<String>? = null

The ID of the metastore service. The id must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). Cannot begin or end with underscore or hyphen. Must consist of between 3 and 63 characters.

Link copied to clipboard

The configuration specifying telemetry settings for the Dataproc Metastore service. If unspecified defaults to JSON. Structure is documented below.

Link copied to clipboard
val tier: Output<String>? = null

The tier of the service. Possible values are: DEVELOPER, ENTERPRISE.

Functions

Link copied to clipboard
open override fun toJava(): MetastoreServiceArgs