1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.dataproc.v1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/dataproc/v1/operations.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/dataproc/v1/shared.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/duration.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 28*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 29*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 30*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/wrappers.proto"; 31*d5c09012SAndroid Build Coastguard Workerimport "google/type/interval.proto"; 32*d5c09012SAndroid Build Coastguard Worker 33*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/dataproc/v2/apiv1/dataprocpb;dataprocpb"; 34*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 35*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ClustersProto"; 36*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.dataproc.v1"; 37*d5c09012SAndroid Build Coastguard Worker 38*d5c09012SAndroid Build Coastguard Worker// The ClusterControllerService provides methods to manage clusters 39*d5c09012SAndroid Build Coastguard Worker// of Compute Engine instances. 40*d5c09012SAndroid Build Coastguard Workerservice ClusterController { 41*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "dataproc.googleapis.com"; 42*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 43*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 44*d5c09012SAndroid Build Coastguard Worker 45*d5c09012SAndroid Build Coastguard Worker // Creates a cluster in a project. The returned 46*d5c09012SAndroid Build Coastguard Worker // [Operation.metadata][google.longrunning.Operation.metadata] will be 47*d5c09012SAndroid Build Coastguard Worker // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). 48*d5c09012SAndroid Build Coastguard Worker rpc CreateCluster(CreateClusterRequest) 49*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 50*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 51*d5c09012SAndroid Build Coastguard Worker post: "/v1/projects/{project_id}/regions/{region}/clusters" 52*d5c09012SAndroid Build Coastguard Worker body: "cluster" 53*d5c09012SAndroid Build Coastguard Worker }; 54*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,region,cluster"; 55*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 56*d5c09012SAndroid Build Coastguard Worker response_type: "Cluster" 57*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.ClusterOperationMetadata" 58*d5c09012SAndroid Build Coastguard Worker }; 59*d5c09012SAndroid Build Coastguard Worker } 60*d5c09012SAndroid Build Coastguard Worker 61*d5c09012SAndroid Build Coastguard Worker // Updates a cluster in a project. The returned 62*d5c09012SAndroid Build Coastguard Worker // [Operation.metadata][google.longrunning.Operation.metadata] will be 63*d5c09012SAndroid Build Coastguard Worker // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). 64*d5c09012SAndroid Build Coastguard Worker // The cluster must be in a 65*d5c09012SAndroid Build Coastguard Worker // [`RUNNING`][google.cloud.dataproc.v1.ClusterStatus.State] state or an error 66*d5c09012SAndroid Build Coastguard Worker // is returned. 67*d5c09012SAndroid Build Coastguard Worker rpc UpdateCluster(UpdateClusterRequest) 68*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 69*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 70*d5c09012SAndroid Build Coastguard Worker patch: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" 71*d5c09012SAndroid Build Coastguard Worker body: "cluster" 72*d5c09012SAndroid Build Coastguard Worker }; 73*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 74*d5c09012SAndroid Build Coastguard Worker "project_id,region,cluster_name,cluster,update_mask"; 75*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 76*d5c09012SAndroid Build Coastguard Worker response_type: "Cluster" 77*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.ClusterOperationMetadata" 78*d5c09012SAndroid Build Coastguard Worker }; 79*d5c09012SAndroid Build Coastguard Worker } 80*d5c09012SAndroid Build Coastguard Worker 81*d5c09012SAndroid Build Coastguard Worker // Stops a cluster in a project. 82*d5c09012SAndroid Build Coastguard Worker rpc StopCluster(StopClusterRequest) returns (google.longrunning.Operation) { 83*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 84*d5c09012SAndroid Build Coastguard Worker post: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:stop" 85*d5c09012SAndroid Build Coastguard Worker body: "*" 86*d5c09012SAndroid Build Coastguard Worker }; 87*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 88*d5c09012SAndroid Build Coastguard Worker response_type: "Cluster" 89*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.ClusterOperationMetadata" 90*d5c09012SAndroid Build Coastguard Worker }; 91*d5c09012SAndroid Build Coastguard Worker } 92*d5c09012SAndroid Build Coastguard Worker 93*d5c09012SAndroid Build Coastguard Worker // Starts a cluster in a project. 94*d5c09012SAndroid Build Coastguard Worker rpc StartCluster(StartClusterRequest) returns (google.longrunning.Operation) { 95*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 96*d5c09012SAndroid Build Coastguard Worker post: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:start" 97*d5c09012SAndroid Build Coastguard Worker body: "*" 98*d5c09012SAndroid Build Coastguard Worker }; 99*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 100*d5c09012SAndroid Build Coastguard Worker response_type: "Cluster" 101*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.ClusterOperationMetadata" 102*d5c09012SAndroid Build Coastguard Worker }; 103*d5c09012SAndroid Build Coastguard Worker } 104*d5c09012SAndroid Build Coastguard Worker 105*d5c09012SAndroid Build Coastguard Worker // Deletes a cluster in a project. The returned 106*d5c09012SAndroid Build Coastguard Worker // [Operation.metadata][google.longrunning.Operation.metadata] will be 107*d5c09012SAndroid Build Coastguard Worker // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). 108*d5c09012SAndroid Build Coastguard Worker rpc DeleteCluster(DeleteClusterRequest) 109*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 110*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 111*d5c09012SAndroid Build Coastguard Worker delete: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" 112*d5c09012SAndroid Build Coastguard Worker }; 113*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,region,cluster_name"; 114*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 115*d5c09012SAndroid Build Coastguard Worker response_type: "google.protobuf.Empty" 116*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.ClusterOperationMetadata" 117*d5c09012SAndroid Build Coastguard Worker }; 118*d5c09012SAndroid Build Coastguard Worker } 119*d5c09012SAndroid Build Coastguard Worker 120*d5c09012SAndroid Build Coastguard Worker // Gets the resource representation for a cluster in a project. 121*d5c09012SAndroid Build Coastguard Worker rpc GetCluster(GetClusterRequest) returns (Cluster) { 122*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 123*d5c09012SAndroid Build Coastguard Worker get: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" 124*d5c09012SAndroid Build Coastguard Worker }; 125*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,region,cluster_name"; 126*d5c09012SAndroid Build Coastguard Worker } 127*d5c09012SAndroid Build Coastguard Worker 128*d5c09012SAndroid Build Coastguard Worker // Lists all regions/{region}/clusters in a project alphabetically. 129*d5c09012SAndroid Build Coastguard Worker rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) { 130*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 131*d5c09012SAndroid Build Coastguard Worker get: "/v1/projects/{project_id}/regions/{region}/clusters" 132*d5c09012SAndroid Build Coastguard Worker }; 133*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,region"; 134*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,region,filter"; 135*d5c09012SAndroid Build Coastguard Worker } 136*d5c09012SAndroid Build Coastguard Worker 137*d5c09012SAndroid Build Coastguard Worker // Gets cluster diagnostic information. The returned 138*d5c09012SAndroid Build Coastguard Worker // [Operation.metadata][google.longrunning.Operation.metadata] will be 139*d5c09012SAndroid Build Coastguard Worker // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). 140*d5c09012SAndroid Build Coastguard Worker // After the operation completes, 141*d5c09012SAndroid Build Coastguard Worker // [Operation.response][google.longrunning.Operation.response] 142*d5c09012SAndroid Build Coastguard Worker // contains 143*d5c09012SAndroid Build Coastguard Worker // [DiagnoseClusterResults](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#diagnoseclusterresults). 144*d5c09012SAndroid Build Coastguard Worker rpc DiagnoseCluster(DiagnoseClusterRequest) 145*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 146*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 147*d5c09012SAndroid Build Coastguard Worker post: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:diagnose" 148*d5c09012SAndroid Build Coastguard Worker body: "*" 149*d5c09012SAndroid Build Coastguard Worker }; 150*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,region,cluster_name"; 151*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 152*d5c09012SAndroid Build Coastguard Worker response_type: "DiagnoseClusterResults" 153*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.ClusterOperationMetadata" 154*d5c09012SAndroid Build Coastguard Worker }; 155*d5c09012SAndroid Build Coastguard Worker } 156*d5c09012SAndroid Build Coastguard Worker} 157*d5c09012SAndroid Build Coastguard Worker 158*d5c09012SAndroid Build Coastguard Worker// Describes the identifying information, config, and status of 159*d5c09012SAndroid Build Coastguard Worker// a Dataproc cluster 160*d5c09012SAndroid Build Coastguard Workermessage Cluster { 161*d5c09012SAndroid Build Coastguard Worker // Required. The Google Cloud Platform project ID that the cluster belongs to. 162*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 163*d5c09012SAndroid Build Coastguard Worker 164*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name, which must be unique within a project. 165*d5c09012SAndroid Build Coastguard Worker // The name must start with a lowercase letter, and can contain 166*d5c09012SAndroid Build Coastguard Worker // up to 51 lowercase letters, numbers, and hyphens. It cannot end 167*d5c09012SAndroid Build Coastguard Worker // with a hyphen. The name of a deleted cluster can be reused. 168*d5c09012SAndroid Build Coastguard Worker string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; 169*d5c09012SAndroid Build Coastguard Worker 170*d5c09012SAndroid Build Coastguard Worker // Optional. The cluster config for a cluster of Compute Engine Instances. 171*d5c09012SAndroid Build Coastguard Worker // Note that Dataproc may set default values, and values may change 172*d5c09012SAndroid Build Coastguard Worker // when clusters are updated. 173*d5c09012SAndroid Build Coastguard Worker // 174*d5c09012SAndroid Build Coastguard Worker // Exactly one of ClusterConfig or VirtualClusterConfig must be specified. 175*d5c09012SAndroid Build Coastguard Worker ClusterConfig config = 3 [(google.api.field_behavior) = OPTIONAL]; 176*d5c09012SAndroid Build Coastguard Worker 177*d5c09012SAndroid Build Coastguard Worker // Optional. The virtual cluster config is used when creating a Dataproc 178*d5c09012SAndroid Build Coastguard Worker // cluster that does not directly control the underlying compute resources, 179*d5c09012SAndroid Build Coastguard Worker // for example, when creating a [Dataproc-on-GKE 180*d5c09012SAndroid Build Coastguard Worker // cluster](https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke-overview). 181*d5c09012SAndroid Build Coastguard Worker // Dataproc may set default values, and values may change when 182*d5c09012SAndroid Build Coastguard Worker // clusters are updated. Exactly one of 183*d5c09012SAndroid Build Coastguard Worker // [config][google.cloud.dataproc.v1.Cluster.config] or 184*d5c09012SAndroid Build Coastguard Worker // [virtual_cluster_config][google.cloud.dataproc.v1.Cluster.virtual_cluster_config] 185*d5c09012SAndroid Build Coastguard Worker // must be specified. 186*d5c09012SAndroid Build Coastguard Worker VirtualClusterConfig virtual_cluster_config = 10 187*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 188*d5c09012SAndroid Build Coastguard Worker 189*d5c09012SAndroid Build Coastguard Worker // Optional. The labels to associate with this cluster. 190*d5c09012SAndroid Build Coastguard Worker // Label **keys** must contain 1 to 63 characters, and must conform to 191*d5c09012SAndroid Build Coastguard Worker // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). 192*d5c09012SAndroid Build Coastguard Worker // Label **values** may be empty, but, if present, must contain 1 to 63 193*d5c09012SAndroid Build Coastguard Worker // characters, and must conform to [RFC 194*d5c09012SAndroid Build Coastguard Worker // 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be 195*d5c09012SAndroid Build Coastguard Worker // associated with a cluster. 196*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 8 [(google.api.field_behavior) = OPTIONAL]; 197*d5c09012SAndroid Build Coastguard Worker 198*d5c09012SAndroid Build Coastguard Worker // Output only. Cluster status. 199*d5c09012SAndroid Build Coastguard Worker ClusterStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 200*d5c09012SAndroid Build Coastguard Worker 201*d5c09012SAndroid Build Coastguard Worker // Output only. The previous cluster status. 202*d5c09012SAndroid Build Coastguard Worker repeated ClusterStatus status_history = 7 203*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 204*d5c09012SAndroid Build Coastguard Worker 205*d5c09012SAndroid Build Coastguard Worker // Output only. A cluster UUID (Unique Universal Identifier). Dataproc 206*d5c09012SAndroid Build Coastguard Worker // generates this value when it creates the cluster. 207*d5c09012SAndroid Build Coastguard Worker string cluster_uuid = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 208*d5c09012SAndroid Build Coastguard Worker 209*d5c09012SAndroid Build Coastguard Worker // Output only. Contains cluster daemon metrics such as HDFS and YARN stats. 210*d5c09012SAndroid Build Coastguard Worker // 211*d5c09012SAndroid Build Coastguard Worker // **Beta Feature**: This report is available for testing purposes only. It 212*d5c09012SAndroid Build Coastguard Worker // may be changed before final release. 213*d5c09012SAndroid Build Coastguard Worker ClusterMetrics metrics = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 214*d5c09012SAndroid Build Coastguard Worker} 215*d5c09012SAndroid Build Coastguard Worker 216*d5c09012SAndroid Build Coastguard Worker// The cluster config. 217*d5c09012SAndroid Build Coastguard Workermessage ClusterConfig { 218*d5c09012SAndroid Build Coastguard Worker // Optional. A Cloud Storage bucket used to stage job 219*d5c09012SAndroid Build Coastguard Worker // dependencies, config files, and job driver console output. 220*d5c09012SAndroid Build Coastguard Worker // If you do not specify a staging bucket, Cloud 221*d5c09012SAndroid Build Coastguard Worker // Dataproc will determine a Cloud Storage location (US, 222*d5c09012SAndroid Build Coastguard Worker // ASIA, or EU) for your cluster's staging bucket according to the 223*d5c09012SAndroid Build Coastguard Worker // Compute Engine zone where your cluster is deployed, and then create 224*d5c09012SAndroid Build Coastguard Worker // and manage this project-level, per-location bucket (see 225*d5c09012SAndroid Build Coastguard Worker // [Dataproc staging and temp 226*d5c09012SAndroid Build Coastguard Worker // buckets](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). 227*d5c09012SAndroid Build Coastguard Worker // **This field requires a Cloud Storage bucket name, not a `gs://...` URI to 228*d5c09012SAndroid Build Coastguard Worker // a Cloud Storage bucket.** 229*d5c09012SAndroid Build Coastguard Worker string config_bucket = 1 [(google.api.field_behavior) = OPTIONAL]; 230*d5c09012SAndroid Build Coastguard Worker 231*d5c09012SAndroid Build Coastguard Worker // Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs 232*d5c09012SAndroid Build Coastguard Worker // data, such as Spark and MapReduce history files. If you do not specify a 233*d5c09012SAndroid Build Coastguard Worker // temp bucket, Dataproc will determine a Cloud Storage location (US, ASIA, or 234*d5c09012SAndroid Build Coastguard Worker // EU) for your cluster's temp bucket according to the Compute Engine zone 235*d5c09012SAndroid Build Coastguard Worker // where your cluster is deployed, and then create and manage this 236*d5c09012SAndroid Build Coastguard Worker // project-level, per-location bucket. The default bucket has a TTL of 90 237*d5c09012SAndroid Build Coastguard Worker // days, but you can use any TTL (or none) if you specify a bucket (see 238*d5c09012SAndroid Build Coastguard Worker // [Dataproc staging and temp 239*d5c09012SAndroid Build Coastguard Worker // buckets](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). 240*d5c09012SAndroid Build Coastguard Worker // **This field requires a Cloud Storage bucket name, not a `gs://...` URI to 241*d5c09012SAndroid Build Coastguard Worker // a Cloud Storage bucket.** 242*d5c09012SAndroid Build Coastguard Worker string temp_bucket = 2 [(google.api.field_behavior) = OPTIONAL]; 243*d5c09012SAndroid Build Coastguard Worker 244*d5c09012SAndroid Build Coastguard Worker // Optional. The shared Compute Engine config settings for 245*d5c09012SAndroid Build Coastguard Worker // all instances in a cluster. 246*d5c09012SAndroid Build Coastguard Worker GceClusterConfig gce_cluster_config = 8 247*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 248*d5c09012SAndroid Build Coastguard Worker 249*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine config settings for 250*d5c09012SAndroid Build Coastguard Worker // the cluster's master instance. 251*d5c09012SAndroid Build Coastguard Worker InstanceGroupConfig master_config = 9 252*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 253*d5c09012SAndroid Build Coastguard Worker 254*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine config settings for 255*d5c09012SAndroid Build Coastguard Worker // the cluster's worker instances. 256*d5c09012SAndroid Build Coastguard Worker InstanceGroupConfig worker_config = 10 257*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 258*d5c09012SAndroid Build Coastguard Worker 259*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine config settings for 260*d5c09012SAndroid Build Coastguard Worker // a cluster's secondary worker instances 261*d5c09012SAndroid Build Coastguard Worker InstanceGroupConfig secondary_worker_config = 12 262*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 263*d5c09012SAndroid Build Coastguard Worker 264*d5c09012SAndroid Build Coastguard Worker // Optional. The config settings for cluster software. 265*d5c09012SAndroid Build Coastguard Worker SoftwareConfig software_config = 13 [(google.api.field_behavior) = OPTIONAL]; 266*d5c09012SAndroid Build Coastguard Worker 267*d5c09012SAndroid Build Coastguard Worker // Optional. Commands to execute on each node after config is 268*d5c09012SAndroid Build Coastguard Worker // completed. By default, executables are run on master and all worker nodes. 269*d5c09012SAndroid Build Coastguard Worker // You can test a node's `role` metadata to run an executable on 270*d5c09012SAndroid Build Coastguard Worker // a master or worker node, as shown below using `curl` (you can also use 271*d5c09012SAndroid Build Coastguard Worker // `wget`): 272*d5c09012SAndroid Build Coastguard Worker // 273*d5c09012SAndroid Build Coastguard Worker // ROLE=$(curl -H Metadata-Flavor:Google 274*d5c09012SAndroid Build Coastguard Worker // http://metadata/computeMetadata/v1/instance/attributes/dataproc-role) 275*d5c09012SAndroid Build Coastguard Worker // if [[ "${ROLE}" == 'Master' ]]; then 276*d5c09012SAndroid Build Coastguard Worker // ... master specific actions ... 277*d5c09012SAndroid Build Coastguard Worker // else 278*d5c09012SAndroid Build Coastguard Worker // ... worker specific actions ... 279*d5c09012SAndroid Build Coastguard Worker // fi 280*d5c09012SAndroid Build Coastguard Worker repeated NodeInitializationAction initialization_actions = 11 281*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 282*d5c09012SAndroid Build Coastguard Worker 283*d5c09012SAndroid Build Coastguard Worker // Optional. Encryption settings for the cluster. 284*d5c09012SAndroid Build Coastguard Worker EncryptionConfig encryption_config = 15 285*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 286*d5c09012SAndroid Build Coastguard Worker 287*d5c09012SAndroid Build Coastguard Worker // Optional. Autoscaling config for the policy associated with the cluster. 288*d5c09012SAndroid Build Coastguard Worker // Cluster does not autoscale if this field is unset. 289*d5c09012SAndroid Build Coastguard Worker AutoscalingConfig autoscaling_config = 18 290*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 291*d5c09012SAndroid Build Coastguard Worker 292*d5c09012SAndroid Build Coastguard Worker // Optional. Security settings for the cluster. 293*d5c09012SAndroid Build Coastguard Worker SecurityConfig security_config = 16 [(google.api.field_behavior) = OPTIONAL]; 294*d5c09012SAndroid Build Coastguard Worker 295*d5c09012SAndroid Build Coastguard Worker // Optional. Lifecycle setting for the cluster. 296*d5c09012SAndroid Build Coastguard Worker LifecycleConfig lifecycle_config = 17 297*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 298*d5c09012SAndroid Build Coastguard Worker 299*d5c09012SAndroid Build Coastguard Worker // Optional. Port/endpoint configuration for this cluster 300*d5c09012SAndroid Build Coastguard Worker EndpointConfig endpoint_config = 19 [(google.api.field_behavior) = OPTIONAL]; 301*d5c09012SAndroid Build Coastguard Worker 302*d5c09012SAndroid Build Coastguard Worker // Optional. Metastore configuration. 303*d5c09012SAndroid Build Coastguard Worker MetastoreConfig metastore_config = 20 304*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 305*d5c09012SAndroid Build Coastguard Worker 306*d5c09012SAndroid Build Coastguard Worker // Optional. The config for Dataproc metrics. 307*d5c09012SAndroid Build Coastguard Worker DataprocMetricConfig dataproc_metric_config = 23 308*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 309*d5c09012SAndroid Build Coastguard Worker 310*d5c09012SAndroid Build Coastguard Worker // Optional. The node group settings. 311*d5c09012SAndroid Build Coastguard Worker repeated AuxiliaryNodeGroup auxiliary_node_groups = 25 312*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 313*d5c09012SAndroid Build Coastguard Worker} 314*d5c09012SAndroid Build Coastguard Worker 315*d5c09012SAndroid Build Coastguard Worker// The Dataproc cluster config for a cluster that does not directly control the 316*d5c09012SAndroid Build Coastguard Worker// underlying compute resources, such as a [Dataproc-on-GKE 317*d5c09012SAndroid Build Coastguard Worker// cluster](https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke-overview). 318*d5c09012SAndroid Build Coastguard Workermessage VirtualClusterConfig { 319*d5c09012SAndroid Build Coastguard Worker // Optional. A Cloud Storage bucket used to stage job 320*d5c09012SAndroid Build Coastguard Worker // dependencies, config files, and job driver console output. 321*d5c09012SAndroid Build Coastguard Worker // If you do not specify a staging bucket, Cloud 322*d5c09012SAndroid Build Coastguard Worker // Dataproc will determine a Cloud Storage location (US, 323*d5c09012SAndroid Build Coastguard Worker // ASIA, or EU) for your cluster's staging bucket according to the 324*d5c09012SAndroid Build Coastguard Worker // Compute Engine zone where your cluster is deployed, and then create 325*d5c09012SAndroid Build Coastguard Worker // and manage this project-level, per-location bucket (see 326*d5c09012SAndroid Build Coastguard Worker // [Dataproc staging and temp 327*d5c09012SAndroid Build Coastguard Worker // buckets](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). 328*d5c09012SAndroid Build Coastguard Worker // **This field requires a Cloud Storage bucket name, not a `gs://...` URI to 329*d5c09012SAndroid Build Coastguard Worker // a Cloud Storage bucket.** 330*d5c09012SAndroid Build Coastguard Worker string staging_bucket = 1 [(google.api.field_behavior) = OPTIONAL]; 331*d5c09012SAndroid Build Coastguard Worker 332*d5c09012SAndroid Build Coastguard Worker oneof infrastructure_config { 333*d5c09012SAndroid Build Coastguard Worker // Required. The configuration for running the Dataproc cluster on 334*d5c09012SAndroid Build Coastguard Worker // Kubernetes. 335*d5c09012SAndroid Build Coastguard Worker KubernetesClusterConfig kubernetes_cluster_config = 6 336*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 337*d5c09012SAndroid Build Coastguard Worker } 338*d5c09012SAndroid Build Coastguard Worker 339*d5c09012SAndroid Build Coastguard Worker // Optional. Configuration of auxiliary services used by this cluster. 340*d5c09012SAndroid Build Coastguard Worker AuxiliaryServicesConfig auxiliary_services_config = 7 341*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 342*d5c09012SAndroid Build Coastguard Worker} 343*d5c09012SAndroid Build Coastguard Worker 344*d5c09012SAndroid Build Coastguard Worker// Auxiliary services configuration for a Cluster. 345*d5c09012SAndroid Build Coastguard Workermessage AuxiliaryServicesConfig { 346*d5c09012SAndroid Build Coastguard Worker // Optional. The Hive Metastore configuration for this workload. 347*d5c09012SAndroid Build Coastguard Worker MetastoreConfig metastore_config = 1 [(google.api.field_behavior) = OPTIONAL]; 348*d5c09012SAndroid Build Coastguard Worker 349*d5c09012SAndroid Build Coastguard Worker // Optional. The Spark History Server configuration for the workload. 350*d5c09012SAndroid Build Coastguard Worker SparkHistoryServerConfig spark_history_server_config = 2 351*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 352*d5c09012SAndroid Build Coastguard Worker} 353*d5c09012SAndroid Build Coastguard Worker 354*d5c09012SAndroid Build Coastguard Worker// Endpoint config for this cluster 355*d5c09012SAndroid Build Coastguard Workermessage EndpointConfig { 356*d5c09012SAndroid Build Coastguard Worker // Output only. The map of port descriptions to URLs. Will only be populated 357*d5c09012SAndroid Build Coastguard Worker // if enable_http_port_access is true. 358*d5c09012SAndroid Build Coastguard Worker map<string, string> http_ports = 1 359*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 360*d5c09012SAndroid Build Coastguard Worker 361*d5c09012SAndroid Build Coastguard Worker // Optional. If true, enable http access to specific ports on the cluster 362*d5c09012SAndroid Build Coastguard Worker // from external sources. Defaults to false. 363*d5c09012SAndroid Build Coastguard Worker bool enable_http_port_access = 2 [(google.api.field_behavior) = OPTIONAL]; 364*d5c09012SAndroid Build Coastguard Worker} 365*d5c09012SAndroid Build Coastguard Worker 366*d5c09012SAndroid Build Coastguard Worker// Autoscaling Policy config associated with the cluster. 367*d5c09012SAndroid Build Coastguard Workermessage AutoscalingConfig { 368*d5c09012SAndroid Build Coastguard Worker // Optional. The autoscaling policy used by the cluster. 369*d5c09012SAndroid Build Coastguard Worker // 370*d5c09012SAndroid Build Coastguard Worker // Only resource names including projectid and location (region) are valid. 371*d5c09012SAndroid Build Coastguard Worker // Examples: 372*d5c09012SAndroid Build Coastguard Worker // 373*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]` 374*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]` 375*d5c09012SAndroid Build Coastguard Worker // 376*d5c09012SAndroid Build Coastguard Worker // Note that the policy must be in the same project and Dataproc region. 377*d5c09012SAndroid Build Coastguard Worker string policy_uri = 1 [(google.api.field_behavior) = OPTIONAL]; 378*d5c09012SAndroid Build Coastguard Worker} 379*d5c09012SAndroid Build Coastguard Worker 380*d5c09012SAndroid Build Coastguard Worker// Encryption settings for the cluster. 381*d5c09012SAndroid Build Coastguard Workermessage EncryptionConfig { 382*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud KMS key name to use for PD disk encryption for all 383*d5c09012SAndroid Build Coastguard Worker // instances in the cluster. 384*d5c09012SAndroid Build Coastguard Worker string gce_pd_kms_key_name = 1 [(google.api.field_behavior) = OPTIONAL]; 385*d5c09012SAndroid Build Coastguard Worker} 386*d5c09012SAndroid Build Coastguard Worker 387*d5c09012SAndroid Build Coastguard Worker// Common config settings for resources of Compute Engine cluster 388*d5c09012SAndroid Build Coastguard Worker// instances, applicable to all instances in the cluster. 389*d5c09012SAndroid Build Coastguard Workermessage GceClusterConfig { 390*d5c09012SAndroid Build Coastguard Worker // `PrivateIpv6GoogleAccess` controls whether and how Dataproc cluster nodes 391*d5c09012SAndroid Build Coastguard Worker // can communicate with Google Services through gRPC over IPv6. 392*d5c09012SAndroid Build Coastguard Worker // These values are directly mapped to corresponding values in the 393*d5c09012SAndroid Build Coastguard Worker // [Compute Engine Instance 394*d5c09012SAndroid Build Coastguard Worker // fields](https://cloud.google.com/compute/docs/reference/rest/v1/instances). 395*d5c09012SAndroid Build Coastguard Worker enum PrivateIpv6GoogleAccess { 396*d5c09012SAndroid Build Coastguard Worker // If unspecified, Compute Engine default behavior will apply, which 397*d5c09012SAndroid Build Coastguard Worker // is the same as 398*d5c09012SAndroid Build Coastguard Worker // [INHERIT_FROM_SUBNETWORK][google.cloud.dataproc.v1.GceClusterConfig.PrivateIpv6GoogleAccess.INHERIT_FROM_SUBNETWORK]. 399*d5c09012SAndroid Build Coastguard Worker PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0; 400*d5c09012SAndroid Build Coastguard Worker 401*d5c09012SAndroid Build Coastguard Worker // Private access to and from Google Services configuration 402*d5c09012SAndroid Build Coastguard Worker // inherited from the subnetwork configuration. This is the 403*d5c09012SAndroid Build Coastguard Worker // default Compute Engine behavior. 404*d5c09012SAndroid Build Coastguard Worker INHERIT_FROM_SUBNETWORK = 1; 405*d5c09012SAndroid Build Coastguard Worker 406*d5c09012SAndroid Build Coastguard Worker // Enables outbound private IPv6 access to Google Services from the Dataproc 407*d5c09012SAndroid Build Coastguard Worker // cluster. 408*d5c09012SAndroid Build Coastguard Worker OUTBOUND = 2; 409*d5c09012SAndroid Build Coastguard Worker 410*d5c09012SAndroid Build Coastguard Worker // Enables bidirectional private IPv6 access between Google Services and the 411*d5c09012SAndroid Build Coastguard Worker // Dataproc cluster. 412*d5c09012SAndroid Build Coastguard Worker BIDIRECTIONAL = 3; 413*d5c09012SAndroid Build Coastguard Worker } 414*d5c09012SAndroid Build Coastguard Worker 415*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine zone where the Dataproc cluster will be 416*d5c09012SAndroid Build Coastguard Worker // located. If omitted, the service will pick a zone in the cluster's Compute 417*d5c09012SAndroid Build Coastguard Worker // Engine region. On a get request, zone will always be present. 418*d5c09012SAndroid Build Coastguard Worker // 419*d5c09012SAndroid Build Coastguard Worker // A full URL, partial URI, or short name are valid. Examples: 420*d5c09012SAndroid Build Coastguard Worker // 421*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]` 422*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/zones/[zone]` 423*d5c09012SAndroid Build Coastguard Worker // * `[zone]` 424*d5c09012SAndroid Build Coastguard Worker string zone_uri = 1 [(google.api.field_behavior) = OPTIONAL]; 425*d5c09012SAndroid Build Coastguard Worker 426*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine network to be used for machine 427*d5c09012SAndroid Build Coastguard Worker // communications. Cannot be specified with subnetwork_uri. If neither 428*d5c09012SAndroid Build Coastguard Worker // `network_uri` nor `subnetwork_uri` is specified, the "default" network of 429*d5c09012SAndroid Build Coastguard Worker // the project is used, if it exists. Cannot be a "Custom Subnet Network" (see 430*d5c09012SAndroid Build Coastguard Worker // [Using Subnetworks](https://cloud.google.com/compute/docs/subnetworks) for 431*d5c09012SAndroid Build Coastguard Worker // more information). 432*d5c09012SAndroid Build Coastguard Worker // 433*d5c09012SAndroid Build Coastguard Worker // A full URL, partial URI, or short name are valid. Examples: 434*d5c09012SAndroid Build Coastguard Worker // 435*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/networks/default` 436*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/global/networks/default` 437*d5c09012SAndroid Build Coastguard Worker // * `default` 438*d5c09012SAndroid Build Coastguard Worker string network_uri = 2 [(google.api.field_behavior) = OPTIONAL]; 439*d5c09012SAndroid Build Coastguard Worker 440*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine subnetwork to be used for machine 441*d5c09012SAndroid Build Coastguard Worker // communications. Cannot be specified with network_uri. 442*d5c09012SAndroid Build Coastguard Worker // 443*d5c09012SAndroid Build Coastguard Worker // A full URL, partial URI, or short name are valid. Examples: 444*d5c09012SAndroid Build Coastguard Worker // 445*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/subnetworks/sub0` 446*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/regions/[region]/subnetworks/sub0` 447*d5c09012SAndroid Build Coastguard Worker // * `sub0` 448*d5c09012SAndroid Build Coastguard Worker string subnetwork_uri = 6 [(google.api.field_behavior) = OPTIONAL]; 449*d5c09012SAndroid Build Coastguard Worker 450*d5c09012SAndroid Build Coastguard Worker // Optional. If true, all instances in the cluster will only have internal IP 451*d5c09012SAndroid Build Coastguard Worker // addresses. By default, clusters are not restricted to internal IP 452*d5c09012SAndroid Build Coastguard Worker // addresses, and will have ephemeral external IP addresses assigned to each 453*d5c09012SAndroid Build Coastguard Worker // instance. This `internal_ip_only` restriction can only be enabled for 454*d5c09012SAndroid Build Coastguard Worker // subnetwork enabled networks, and all off-cluster dependencies must be 455*d5c09012SAndroid Build Coastguard Worker // configured to be accessible without external IP addresses. 456*d5c09012SAndroid Build Coastguard Worker optional bool internal_ip_only = 7 [(google.api.field_behavior) = OPTIONAL]; 457*d5c09012SAndroid Build Coastguard Worker 458*d5c09012SAndroid Build Coastguard Worker // Optional. The type of IPv6 access for a cluster. 459*d5c09012SAndroid Build Coastguard Worker PrivateIpv6GoogleAccess private_ipv6_google_access = 12 460*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 461*d5c09012SAndroid Build Coastguard Worker 462*d5c09012SAndroid Build Coastguard Worker // Optional. The [Dataproc service 463*d5c09012SAndroid Build Coastguard Worker // account](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service-accounts#service_accounts_in_dataproc) 464*d5c09012SAndroid Build Coastguard Worker // (also see [VM Data Plane 465*d5c09012SAndroid Build Coastguard Worker // identity](https://cloud.google.com/dataproc/docs/concepts/iam/dataproc-principals#vm_service_account_data_plane_identity)) 466*d5c09012SAndroid Build Coastguard Worker // used by Dataproc cluster VM instances to access Google Cloud Platform 467*d5c09012SAndroid Build Coastguard Worker // services. 468*d5c09012SAndroid Build Coastguard Worker // 469*d5c09012SAndroid Build Coastguard Worker // If not specified, the 470*d5c09012SAndroid Build Coastguard Worker // [Compute Engine default service 471*d5c09012SAndroid Build Coastguard Worker // account](https://cloud.google.com/compute/docs/access/service-accounts#default_service_account) 472*d5c09012SAndroid Build Coastguard Worker // is used. 473*d5c09012SAndroid Build Coastguard Worker string service_account = 8 [(google.api.field_behavior) = OPTIONAL]; 474*d5c09012SAndroid Build Coastguard Worker 475*d5c09012SAndroid Build Coastguard Worker // Optional. The URIs of service account scopes to be included in 476*d5c09012SAndroid Build Coastguard Worker // Compute Engine instances. The following base set of scopes is always 477*d5c09012SAndroid Build Coastguard Worker // included: 478*d5c09012SAndroid Build Coastguard Worker // 479*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/cloud.useraccounts.readonly 480*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/devstorage.read_write 481*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/logging.write 482*d5c09012SAndroid Build Coastguard Worker // 483*d5c09012SAndroid Build Coastguard Worker // If no scopes are specified, the following defaults are also provided: 484*d5c09012SAndroid Build Coastguard Worker // 485*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/bigquery 486*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/bigtable.admin.table 487*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/bigtable.data 488*d5c09012SAndroid Build Coastguard Worker // * https://www.googleapis.com/auth/devstorage.full_control 489*d5c09012SAndroid Build Coastguard Worker repeated string service_account_scopes = 3 490*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 491*d5c09012SAndroid Build Coastguard Worker 492*d5c09012SAndroid Build Coastguard Worker // The Compute Engine tags to add to all instances (see [Tagging 493*d5c09012SAndroid Build Coastguard Worker // instances](https://cloud.google.com/compute/docs/label-or-tag-resources#tags)). 494*d5c09012SAndroid Build Coastguard Worker repeated string tags = 4; 495*d5c09012SAndroid Build Coastguard Worker 496*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine metadata entries to add to all instances (see 497*d5c09012SAndroid Build Coastguard Worker // [Project and instance 498*d5c09012SAndroid Build Coastguard Worker // metadata](https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)). 499*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 5 [(google.api.field_behavior) = OPTIONAL]; 500*d5c09012SAndroid Build Coastguard Worker 501*d5c09012SAndroid Build Coastguard Worker // Optional. Reservation Affinity for consuming Zonal reservation. 502*d5c09012SAndroid Build Coastguard Worker ReservationAffinity reservation_affinity = 11 503*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 504*d5c09012SAndroid Build Coastguard Worker 505*d5c09012SAndroid Build Coastguard Worker // Optional. Node Group Affinity for sole-tenant clusters. 506*d5c09012SAndroid Build Coastguard Worker NodeGroupAffinity node_group_affinity = 13 507*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 508*d5c09012SAndroid Build Coastguard Worker 509*d5c09012SAndroid Build Coastguard Worker // Optional. Shielded Instance Config for clusters using [Compute Engine 510*d5c09012SAndroid Build Coastguard Worker // Shielded 511*d5c09012SAndroid Build Coastguard Worker // VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm). 512*d5c09012SAndroid Build Coastguard Worker ShieldedInstanceConfig shielded_instance_config = 14 513*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 514*d5c09012SAndroid Build Coastguard Worker 515*d5c09012SAndroid Build Coastguard Worker // Optional. Confidential Instance Config for clusters using [Confidential 516*d5c09012SAndroid Build Coastguard Worker // VMs](https://cloud.google.com/compute/confidential-vm/docs). 517*d5c09012SAndroid Build Coastguard Worker ConfidentialInstanceConfig confidential_instance_config = 15 518*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 519*d5c09012SAndroid Build Coastguard Worker} 520*d5c09012SAndroid Build Coastguard Worker 521*d5c09012SAndroid Build Coastguard Worker// Node Group Affinity for clusters using sole-tenant node groups. 522*d5c09012SAndroid Build Coastguard Worker// **The Dataproc `NodeGroupAffinity` resource is not related to the 523*d5c09012SAndroid Build Coastguard Worker// Dataproc [NodeGroup][google.cloud.dataproc.v1.NodeGroup] resource.** 524*d5c09012SAndroid Build Coastguard Workermessage NodeGroupAffinity { 525*d5c09012SAndroid Build Coastguard Worker // Required. The URI of a 526*d5c09012SAndroid Build Coastguard Worker // sole-tenant [node group 527*d5c09012SAndroid Build Coastguard Worker // resource](https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups) 528*d5c09012SAndroid Build Coastguard Worker // that the cluster will be created on. 529*d5c09012SAndroid Build Coastguard Worker // 530*d5c09012SAndroid Build Coastguard Worker // A full URL, partial URI, or node group name are valid. Examples: 531*d5c09012SAndroid Build Coastguard Worker // 532*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/nodeGroups/node-group-1` 533*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/zones/[zone]/nodeGroups/node-group-1` 534*d5c09012SAndroid Build Coastguard Worker // * `node-group-1` 535*d5c09012SAndroid Build Coastguard Worker string node_group_uri = 1 [(google.api.field_behavior) = REQUIRED]; 536*d5c09012SAndroid Build Coastguard Worker} 537*d5c09012SAndroid Build Coastguard Worker 538*d5c09012SAndroid Build Coastguard Worker// Shielded Instance Config for clusters using [Compute Engine Shielded 539*d5c09012SAndroid Build Coastguard Worker// VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm). 540*d5c09012SAndroid Build Coastguard Workermessage ShieldedInstanceConfig { 541*d5c09012SAndroid Build Coastguard Worker // Optional. Defines whether instances have Secure Boot enabled. 542*d5c09012SAndroid Build Coastguard Worker optional bool enable_secure_boot = 1 [(google.api.field_behavior) = OPTIONAL]; 543*d5c09012SAndroid Build Coastguard Worker 544*d5c09012SAndroid Build Coastguard Worker // Optional. Defines whether instances have the vTPM enabled. 545*d5c09012SAndroid Build Coastguard Worker optional bool enable_vtpm = 2 [(google.api.field_behavior) = OPTIONAL]; 546*d5c09012SAndroid Build Coastguard Worker 547*d5c09012SAndroid Build Coastguard Worker // Optional. Defines whether instances have integrity monitoring enabled. 548*d5c09012SAndroid Build Coastguard Worker optional bool enable_integrity_monitoring = 3 549*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 550*d5c09012SAndroid Build Coastguard Worker} 551*d5c09012SAndroid Build Coastguard Worker 552*d5c09012SAndroid Build Coastguard Worker// Confidential Instance Config for clusters using [Confidential 553*d5c09012SAndroid Build Coastguard Worker// VMs](https://cloud.google.com/compute/confidential-vm/docs) 554*d5c09012SAndroid Build Coastguard Workermessage ConfidentialInstanceConfig { 555*d5c09012SAndroid Build Coastguard Worker // Optional. Defines whether the instance should have confidential compute 556*d5c09012SAndroid Build Coastguard Worker // enabled. 557*d5c09012SAndroid Build Coastguard Worker bool enable_confidential_compute = 1 [(google.api.field_behavior) = OPTIONAL]; 558*d5c09012SAndroid Build Coastguard Worker} 559*d5c09012SAndroid Build Coastguard Worker 560*d5c09012SAndroid Build Coastguard Worker// The config settings for Compute Engine resources in 561*d5c09012SAndroid Build Coastguard Worker// an instance group, such as a master or worker group. 562*d5c09012SAndroid Build Coastguard Workermessage InstanceGroupConfig { 563*d5c09012SAndroid Build Coastguard Worker // Controls the use of preemptible instances within the group. 564*d5c09012SAndroid Build Coastguard Worker enum Preemptibility { 565*d5c09012SAndroid Build Coastguard Worker // Preemptibility is unspecified, the system will choose the 566*d5c09012SAndroid Build Coastguard Worker // appropriate setting for each instance group. 567*d5c09012SAndroid Build Coastguard Worker PREEMPTIBILITY_UNSPECIFIED = 0; 568*d5c09012SAndroid Build Coastguard Worker 569*d5c09012SAndroid Build Coastguard Worker // Instances are non-preemptible. 570*d5c09012SAndroid Build Coastguard Worker // 571*d5c09012SAndroid Build Coastguard Worker // This option is allowed for all instance groups and is the only valid 572*d5c09012SAndroid Build Coastguard Worker // value for Master and Worker instance groups. 573*d5c09012SAndroid Build Coastguard Worker NON_PREEMPTIBLE = 1; 574*d5c09012SAndroid Build Coastguard Worker 575*d5c09012SAndroid Build Coastguard Worker // Instances are [preemptible] 576*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/compute/docs/instances/preemptible). 577*d5c09012SAndroid Build Coastguard Worker // 578*d5c09012SAndroid Build Coastguard Worker // This option is allowed only for [secondary worker] 579*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/dataproc/docs/concepts/compute/secondary-vms) 580*d5c09012SAndroid Build Coastguard Worker // groups. 581*d5c09012SAndroid Build Coastguard Worker PREEMPTIBLE = 2; 582*d5c09012SAndroid Build Coastguard Worker 583*d5c09012SAndroid Build Coastguard Worker // Instances are [Spot VMs] 584*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/compute/docs/instances/spot). 585*d5c09012SAndroid Build Coastguard Worker // 586*d5c09012SAndroid Build Coastguard Worker // This option is allowed only for [secondary worker] 587*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/dataproc/docs/concepts/compute/secondary-vms) 588*d5c09012SAndroid Build Coastguard Worker // groups. Spot VMs are the latest version of [preemptible VMs] 589*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/compute/docs/instances/preemptible), and 590*d5c09012SAndroid Build Coastguard Worker // provide additional features. 591*d5c09012SAndroid Build Coastguard Worker SPOT = 3; 592*d5c09012SAndroid Build Coastguard Worker } 593*d5c09012SAndroid Build Coastguard Worker 594*d5c09012SAndroid Build Coastguard Worker // Optional. The number of VM instances in the instance group. 595*d5c09012SAndroid Build Coastguard Worker // For [HA 596*d5c09012SAndroid Build Coastguard Worker // cluster](/dataproc/docs/concepts/configuring-clusters/high-availability) 597*d5c09012SAndroid Build Coastguard Worker // [master_config](#FIELDS.master_config) groups, **must be set to 3**. 598*d5c09012SAndroid Build Coastguard Worker // For standard cluster [master_config](#FIELDS.master_config) groups, 599*d5c09012SAndroid Build Coastguard Worker // **must be set to 1**. 600*d5c09012SAndroid Build Coastguard Worker int32 num_instances = 1 [(google.api.field_behavior) = OPTIONAL]; 601*d5c09012SAndroid Build Coastguard Worker 602*d5c09012SAndroid Build Coastguard Worker // Output only. The list of instance names. Dataproc derives the names 603*d5c09012SAndroid Build Coastguard Worker // from `cluster_name`, `num_instances`, and the instance group. 604*d5c09012SAndroid Build Coastguard Worker repeated string instance_names = 2 605*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 606*d5c09012SAndroid Build Coastguard Worker 607*d5c09012SAndroid Build Coastguard Worker // Output only. List of references to Compute Engine instances. 608*d5c09012SAndroid Build Coastguard Worker repeated InstanceReference instance_references = 11 609*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 610*d5c09012SAndroid Build Coastguard Worker 611*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine image resource used for cluster instances. 612*d5c09012SAndroid Build Coastguard Worker // 613*d5c09012SAndroid Build Coastguard Worker // The URI can represent an image or image family. 614*d5c09012SAndroid Build Coastguard Worker // 615*d5c09012SAndroid Build Coastguard Worker // Image examples: 616*d5c09012SAndroid Build Coastguard Worker // 617*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]` 618*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/global/images/[image-id]` 619*d5c09012SAndroid Build Coastguard Worker // * `image-id` 620*d5c09012SAndroid Build Coastguard Worker // 621*d5c09012SAndroid Build Coastguard Worker // Image family examples. Dataproc will use the most recent 622*d5c09012SAndroid Build Coastguard Worker // image from the family: 623*d5c09012SAndroid Build Coastguard Worker // 624*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]` 625*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/global/images/family/[custom-image-family-name]` 626*d5c09012SAndroid Build Coastguard Worker // 627*d5c09012SAndroid Build Coastguard Worker // If the URI is unspecified, it will be inferred from 628*d5c09012SAndroid Build Coastguard Worker // `SoftwareConfig.image_version` or the system default. 629*d5c09012SAndroid Build Coastguard Worker string image_uri = 3 [(google.api.field_behavior) = OPTIONAL]; 630*d5c09012SAndroid Build Coastguard Worker 631*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine machine type used for cluster instances. 632*d5c09012SAndroid Build Coastguard Worker // 633*d5c09012SAndroid Build Coastguard Worker // A full URL, partial URI, or short name are valid. Examples: 634*d5c09012SAndroid Build Coastguard Worker // 635*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2` 636*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2` 637*d5c09012SAndroid Build Coastguard Worker // * `n1-standard-2` 638*d5c09012SAndroid Build Coastguard Worker // 639*d5c09012SAndroid Build Coastguard Worker // **Auto Zone Exception**: If you are using the Dataproc 640*d5c09012SAndroid Build Coastguard Worker // [Auto Zone 641*d5c09012SAndroid Build Coastguard Worker // Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) 642*d5c09012SAndroid Build Coastguard Worker // feature, you must use the short name of the machine type 643*d5c09012SAndroid Build Coastguard Worker // resource, for example, `n1-standard-2`. 644*d5c09012SAndroid Build Coastguard Worker string machine_type_uri = 4 [(google.api.field_behavior) = OPTIONAL]; 645*d5c09012SAndroid Build Coastguard Worker 646*d5c09012SAndroid Build Coastguard Worker // Optional. Disk option config settings. 647*d5c09012SAndroid Build Coastguard Worker DiskConfig disk_config = 5 [(google.api.field_behavior) = OPTIONAL]; 648*d5c09012SAndroid Build Coastguard Worker 649*d5c09012SAndroid Build Coastguard Worker // Output only. Specifies that this instance group contains preemptible 650*d5c09012SAndroid Build Coastguard Worker // instances. 651*d5c09012SAndroid Build Coastguard Worker bool is_preemptible = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 652*d5c09012SAndroid Build Coastguard Worker 653*d5c09012SAndroid Build Coastguard Worker // Optional. Specifies the preemptibility of the instance group. 654*d5c09012SAndroid Build Coastguard Worker // 655*d5c09012SAndroid Build Coastguard Worker // The default value for master and worker groups is 656*d5c09012SAndroid Build Coastguard Worker // `NON_PREEMPTIBLE`. This default cannot be changed. 657*d5c09012SAndroid Build Coastguard Worker // 658*d5c09012SAndroid Build Coastguard Worker // The default value for secondary instances is 659*d5c09012SAndroid Build Coastguard Worker // `PREEMPTIBLE`. 660*d5c09012SAndroid Build Coastguard Worker Preemptibility preemptibility = 10 [(google.api.field_behavior) = OPTIONAL]; 661*d5c09012SAndroid Build Coastguard Worker 662*d5c09012SAndroid Build Coastguard Worker // Output only. The config for Compute Engine Instance Group 663*d5c09012SAndroid Build Coastguard Worker // Manager that manages this group. 664*d5c09012SAndroid Build Coastguard Worker // This is only used for preemptible instance groups. 665*d5c09012SAndroid Build Coastguard Worker ManagedGroupConfig managed_group_config = 7 666*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 667*d5c09012SAndroid Build Coastguard Worker 668*d5c09012SAndroid Build Coastguard Worker // Optional. The Compute Engine accelerator configuration for these 669*d5c09012SAndroid Build Coastguard Worker // instances. 670*d5c09012SAndroid Build Coastguard Worker repeated AcceleratorConfig accelerators = 8 671*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 672*d5c09012SAndroid Build Coastguard Worker 673*d5c09012SAndroid Build Coastguard Worker // Optional. Specifies the minimum cpu platform for the Instance Group. 674*d5c09012SAndroid Build Coastguard Worker // See [Dataproc -> Minimum CPU 675*d5c09012SAndroid Build Coastguard Worker // Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu). 676*d5c09012SAndroid Build Coastguard Worker string min_cpu_platform = 9 [(google.api.field_behavior) = OPTIONAL]; 677*d5c09012SAndroid Build Coastguard Worker 678*d5c09012SAndroid Build Coastguard Worker // Optional. The minimum number of primary worker instances to create. 679*d5c09012SAndroid Build Coastguard Worker // If `min_num_instances` is set, cluster creation will succeed if 680*d5c09012SAndroid Build Coastguard Worker // the number of primary workers created is at least equal to the 681*d5c09012SAndroid Build Coastguard Worker // `min_num_instances` number. 682*d5c09012SAndroid Build Coastguard Worker // 683*d5c09012SAndroid Build Coastguard Worker // Example: Cluster creation request with `num_instances` = `5` and 684*d5c09012SAndroid Build Coastguard Worker // `min_num_instances` = `3`: 685*d5c09012SAndroid Build Coastguard Worker // 686*d5c09012SAndroid Build Coastguard Worker // * If 4 VMs are created and 1 instance fails, 687*d5c09012SAndroid Build Coastguard Worker // the failed VM is deleted. The cluster is 688*d5c09012SAndroid Build Coastguard Worker // resized to 4 instances and placed in a `RUNNING` state. 689*d5c09012SAndroid Build Coastguard Worker // * If 2 instances are created and 3 instances fail, 690*d5c09012SAndroid Build Coastguard Worker // the cluster in placed in an `ERROR` state. The failed VMs 691*d5c09012SAndroid Build Coastguard Worker // are not deleted. 692*d5c09012SAndroid Build Coastguard Worker int32 min_num_instances = 12 [(google.api.field_behavior) = OPTIONAL]; 693*d5c09012SAndroid Build Coastguard Worker 694*d5c09012SAndroid Build Coastguard Worker // Optional. Instance flexibility Policy allowing a mixture of VM shapes and 695*d5c09012SAndroid Build Coastguard Worker // provisioning models. 696*d5c09012SAndroid Build Coastguard Worker InstanceFlexibilityPolicy instance_flexibility_policy = 13 697*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 698*d5c09012SAndroid Build Coastguard Worker 699*d5c09012SAndroid Build Coastguard Worker // Optional. Configuration to handle the startup of instances during cluster 700*d5c09012SAndroid Build Coastguard Worker // create and update process. 701*d5c09012SAndroid Build Coastguard Worker StartupConfig startup_config = 14 [(google.api.field_behavior) = OPTIONAL]; 702*d5c09012SAndroid Build Coastguard Worker} 703*d5c09012SAndroid Build Coastguard Worker 704*d5c09012SAndroid Build Coastguard Worker// Configuration to handle the startup of instances during cluster create and 705*d5c09012SAndroid Build Coastguard Worker// update process. 706*d5c09012SAndroid Build Coastguard Workermessage StartupConfig { 707*d5c09012SAndroid Build Coastguard Worker // Optional. The config setting to enable cluster creation/ updation to be 708*d5c09012SAndroid Build Coastguard Worker // successful only after required_registration_fraction of instances are up 709*d5c09012SAndroid Build Coastguard Worker // and running. This configuration is applicable to only secondary workers for 710*d5c09012SAndroid Build Coastguard Worker // now. The cluster will fail if required_registration_fraction of instances 711*d5c09012SAndroid Build Coastguard Worker // are not available. This will include instance creation, agent registration, 712*d5c09012SAndroid Build Coastguard Worker // and service registration (if enabled). 713*d5c09012SAndroid Build Coastguard Worker optional double required_registration_fraction = 1 714*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 715*d5c09012SAndroid Build Coastguard Worker} 716*d5c09012SAndroid Build Coastguard Worker 717*d5c09012SAndroid Build Coastguard Worker// A reference to a Compute Engine instance. 718*d5c09012SAndroid Build Coastguard Workermessage InstanceReference { 719*d5c09012SAndroid Build Coastguard Worker // The user-friendly name of the Compute Engine instance. 720*d5c09012SAndroid Build Coastguard Worker string instance_name = 1; 721*d5c09012SAndroid Build Coastguard Worker 722*d5c09012SAndroid Build Coastguard Worker // The unique identifier of the Compute Engine instance. 723*d5c09012SAndroid Build Coastguard Worker string instance_id = 2; 724*d5c09012SAndroid Build Coastguard Worker 725*d5c09012SAndroid Build Coastguard Worker // The public RSA key used for sharing data with this instance. 726*d5c09012SAndroid Build Coastguard Worker string public_key = 3; 727*d5c09012SAndroid Build Coastguard Worker 728*d5c09012SAndroid Build Coastguard Worker // The public ECIES key used for sharing data with this instance. 729*d5c09012SAndroid Build Coastguard Worker string public_ecies_key = 4; 730*d5c09012SAndroid Build Coastguard Worker} 731*d5c09012SAndroid Build Coastguard Worker 732*d5c09012SAndroid Build Coastguard Worker// Specifies the resources used to actively manage an instance group. 733*d5c09012SAndroid Build Coastguard Workermessage ManagedGroupConfig { 734*d5c09012SAndroid Build Coastguard Worker // Output only. The name of the Instance Template used for the Managed 735*d5c09012SAndroid Build Coastguard Worker // Instance Group. 736*d5c09012SAndroid Build Coastguard Worker string instance_template_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 737*d5c09012SAndroid Build Coastguard Worker 738*d5c09012SAndroid Build Coastguard Worker // Output only. The name of the Instance Group Manager for this group. 739*d5c09012SAndroid Build Coastguard Worker string instance_group_manager_name = 2 740*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 741*d5c09012SAndroid Build Coastguard Worker 742*d5c09012SAndroid Build Coastguard Worker // Output only. The partial URI to the instance group manager for this group. 743*d5c09012SAndroid Build Coastguard Worker // E.g. projects/my-project/regions/us-central1/instanceGroupManagers/my-igm. 744*d5c09012SAndroid Build Coastguard Worker string instance_group_manager_uri = 3 745*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 746*d5c09012SAndroid Build Coastguard Worker} 747*d5c09012SAndroid Build Coastguard Worker 748*d5c09012SAndroid Build Coastguard Worker// Instance flexibility Policy allowing a mixture of VM shapes and provisioning 749*d5c09012SAndroid Build Coastguard Worker// models. 750*d5c09012SAndroid Build Coastguard Workermessage InstanceFlexibilityPolicy { 751*d5c09012SAndroid Build Coastguard Worker // Defines machines types and a rank to which the machines types belong. 752*d5c09012SAndroid Build Coastguard Worker message InstanceSelection { 753*d5c09012SAndroid Build Coastguard Worker // Optional. Full machine-type names, e.g. "n1-standard-16". 754*d5c09012SAndroid Build Coastguard Worker repeated string machine_types = 1 [(google.api.field_behavior) = OPTIONAL]; 755*d5c09012SAndroid Build Coastguard Worker 756*d5c09012SAndroid Build Coastguard Worker // Optional. Preference of this instance selection. Lower number means 757*d5c09012SAndroid Build Coastguard Worker // higher preference. Dataproc will first try to create a VM based on the 758*d5c09012SAndroid Build Coastguard Worker // machine-type with priority rank and fallback to next rank based on 759*d5c09012SAndroid Build Coastguard Worker // availability. Machine types and instance selections with the same 760*d5c09012SAndroid Build Coastguard Worker // priority have the same preference. 761*d5c09012SAndroid Build Coastguard Worker int32 rank = 2 [(google.api.field_behavior) = OPTIONAL]; 762*d5c09012SAndroid Build Coastguard Worker } 763*d5c09012SAndroid Build Coastguard Worker 764*d5c09012SAndroid Build Coastguard Worker // Defines a mapping from machine types to the number of VMs that are created 765*d5c09012SAndroid Build Coastguard Worker // with each machine type. 766*d5c09012SAndroid Build Coastguard Worker message InstanceSelectionResult { 767*d5c09012SAndroid Build Coastguard Worker // Output only. Full machine-type names, e.g. "n1-standard-16". 768*d5c09012SAndroid Build Coastguard Worker optional string machine_type = 1 769*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 770*d5c09012SAndroid Build Coastguard Worker 771*d5c09012SAndroid Build Coastguard Worker // Output only. Number of VM provisioned with the machine_type. 772*d5c09012SAndroid Build Coastguard Worker optional int32 vm_count = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 773*d5c09012SAndroid Build Coastguard Worker } 774*d5c09012SAndroid Build Coastguard Worker 775*d5c09012SAndroid Build Coastguard Worker // Optional. List of instance selection options that the group will use when 776*d5c09012SAndroid Build Coastguard Worker // creating new VMs. 777*d5c09012SAndroid Build Coastguard Worker repeated InstanceSelection instance_selection_list = 2 778*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 779*d5c09012SAndroid Build Coastguard Worker 780*d5c09012SAndroid Build Coastguard Worker // Output only. A list of instance selection results in the group. 781*d5c09012SAndroid Build Coastguard Worker repeated InstanceSelectionResult instance_selection_results = 3 782*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 783*d5c09012SAndroid Build Coastguard Worker} 784*d5c09012SAndroid Build Coastguard Worker 785*d5c09012SAndroid Build Coastguard Worker// Specifies the type and number of accelerator cards attached to the instances 786*d5c09012SAndroid Build Coastguard Worker// of an instance. See [GPUs on Compute 787*d5c09012SAndroid Build Coastguard Worker// Engine](https://cloud.google.com/compute/docs/gpus/). 788*d5c09012SAndroid Build Coastguard Workermessage AcceleratorConfig { 789*d5c09012SAndroid Build Coastguard Worker // Full URL, partial URI, or short name of the accelerator type resource to 790*d5c09012SAndroid Build Coastguard Worker // expose to this instance. See 791*d5c09012SAndroid Build Coastguard Worker // [Compute Engine 792*d5c09012SAndroid Build Coastguard Worker // AcceleratorTypes](https://cloud.google.com/compute/docs/reference/v1/acceleratorTypes). 793*d5c09012SAndroid Build Coastguard Worker // 794*d5c09012SAndroid Build Coastguard Worker // Examples: 795*d5c09012SAndroid Build Coastguard Worker // 796*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/acceleratorTypes/nvidia-tesla-k80` 797*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/zones/[zone]/acceleratorTypes/nvidia-tesla-k80` 798*d5c09012SAndroid Build Coastguard Worker // * `nvidia-tesla-k80` 799*d5c09012SAndroid Build Coastguard Worker // 800*d5c09012SAndroid Build Coastguard Worker // **Auto Zone Exception**: If you are using the Dataproc 801*d5c09012SAndroid Build Coastguard Worker // [Auto Zone 802*d5c09012SAndroid Build Coastguard Worker // Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) 803*d5c09012SAndroid Build Coastguard Worker // feature, you must use the short name of the accelerator type 804*d5c09012SAndroid Build Coastguard Worker // resource, for example, `nvidia-tesla-k80`. 805*d5c09012SAndroid Build Coastguard Worker string accelerator_type_uri = 1; 806*d5c09012SAndroid Build Coastguard Worker 807*d5c09012SAndroid Build Coastguard Worker // The number of the accelerator cards of this type exposed to this instance. 808*d5c09012SAndroid Build Coastguard Worker int32 accelerator_count = 2; 809*d5c09012SAndroid Build Coastguard Worker} 810*d5c09012SAndroid Build Coastguard Worker 811*d5c09012SAndroid Build Coastguard Worker// Specifies the config of disk options for a group of VM instances. 812*d5c09012SAndroid Build Coastguard Workermessage DiskConfig { 813*d5c09012SAndroid Build Coastguard Worker // Optional. Type of the boot disk (default is "pd-standard"). 814*d5c09012SAndroid Build Coastguard Worker // Valid values: "pd-balanced" (Persistent Disk Balanced Solid State Drive), 815*d5c09012SAndroid Build Coastguard Worker // "pd-ssd" (Persistent Disk Solid State Drive), 816*d5c09012SAndroid Build Coastguard Worker // or "pd-standard" (Persistent Disk Hard Disk Drive). 817*d5c09012SAndroid Build Coastguard Worker // See [Disk types](https://cloud.google.com/compute/docs/disks#disk-types). 818*d5c09012SAndroid Build Coastguard Worker string boot_disk_type = 3 [(google.api.field_behavior) = OPTIONAL]; 819*d5c09012SAndroid Build Coastguard Worker 820*d5c09012SAndroid Build Coastguard Worker // Optional. Size in GB of the boot disk (default is 500GB). 821*d5c09012SAndroid Build Coastguard Worker int32 boot_disk_size_gb = 1 [(google.api.field_behavior) = OPTIONAL]; 822*d5c09012SAndroid Build Coastguard Worker 823*d5c09012SAndroid Build Coastguard Worker // Optional. Number of attached SSDs, from 0 to 8 (default is 0). 824*d5c09012SAndroid Build Coastguard Worker // If SSDs are not attached, the boot disk is used to store runtime logs and 825*d5c09012SAndroid Build Coastguard Worker // [HDFS](https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data. 826*d5c09012SAndroid Build Coastguard Worker // If one or more SSDs are attached, this runtime bulk 827*d5c09012SAndroid Build Coastguard Worker // data is spread across them, and the boot disk contains only basic 828*d5c09012SAndroid Build Coastguard Worker // config and installed binaries. 829*d5c09012SAndroid Build Coastguard Worker // 830*d5c09012SAndroid Build Coastguard Worker // Note: Local SSD options may vary by machine type and number of vCPUs 831*d5c09012SAndroid Build Coastguard Worker // selected. 832*d5c09012SAndroid Build Coastguard Worker int32 num_local_ssds = 2 [(google.api.field_behavior) = OPTIONAL]; 833*d5c09012SAndroid Build Coastguard Worker 834*d5c09012SAndroid Build Coastguard Worker // Optional. Interface type of local SSDs (default is "scsi"). 835*d5c09012SAndroid Build Coastguard Worker // Valid values: "scsi" (Small Computer System Interface), 836*d5c09012SAndroid Build Coastguard Worker // "nvme" (Non-Volatile Memory Express). 837*d5c09012SAndroid Build Coastguard Worker // See [local SSD 838*d5c09012SAndroid Build Coastguard Worker // performance](https://cloud.google.com/compute/docs/disks/local-ssd#performance). 839*d5c09012SAndroid Build Coastguard Worker string local_ssd_interface = 4 [(google.api.field_behavior) = OPTIONAL]; 840*d5c09012SAndroid Build Coastguard Worker} 841*d5c09012SAndroid Build Coastguard Worker 842*d5c09012SAndroid Build Coastguard Worker// Node group identification and configuration information. 843*d5c09012SAndroid Build Coastguard Workermessage AuxiliaryNodeGroup { 844*d5c09012SAndroid Build Coastguard Worker // Required. Node group configuration. 845*d5c09012SAndroid Build Coastguard Worker NodeGroup node_group = 1 [(google.api.field_behavior) = REQUIRED]; 846*d5c09012SAndroid Build Coastguard Worker 847*d5c09012SAndroid Build Coastguard Worker // Optional. A node group ID. Generated if not specified. 848*d5c09012SAndroid Build Coastguard Worker // 849*d5c09012SAndroid Build Coastguard Worker // The ID must contain only letters (a-z, A-Z), numbers (0-9), 850*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). Cannot begin or end with underscore 851*d5c09012SAndroid Build Coastguard Worker // or hyphen. Must consist of from 3 to 33 characters. 852*d5c09012SAndroid Build Coastguard Worker string node_group_id = 2 [(google.api.field_behavior) = OPTIONAL]; 853*d5c09012SAndroid Build Coastguard Worker} 854*d5c09012SAndroid Build Coastguard Worker 855*d5c09012SAndroid Build Coastguard Worker// Dataproc Node Group. 856*d5c09012SAndroid Build Coastguard Worker// **The Dataproc `NodeGroup` resource is not related to the 857*d5c09012SAndroid Build Coastguard Worker// Dataproc [NodeGroupAffinity][google.cloud.dataproc.v1.NodeGroupAffinity] 858*d5c09012SAndroid Build Coastguard Worker// resource.** 859*d5c09012SAndroid Build Coastguard Workermessage NodeGroup { 860*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 861*d5c09012SAndroid Build Coastguard Worker type: "dataproc.googleapis.com/NodeGroup" 862*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/regions/{region}/clusters/{cluster}/nodeGroups/{node_group}" 863*d5c09012SAndroid Build Coastguard Worker }; 864*d5c09012SAndroid Build Coastguard Worker 865*d5c09012SAndroid Build Coastguard Worker // Node pool roles. 866*d5c09012SAndroid Build Coastguard Worker enum Role { 867*d5c09012SAndroid Build Coastguard Worker // Required unspecified role. 868*d5c09012SAndroid Build Coastguard Worker ROLE_UNSPECIFIED = 0; 869*d5c09012SAndroid Build Coastguard Worker 870*d5c09012SAndroid Build Coastguard Worker // Job drivers run on the node pool. 871*d5c09012SAndroid Build Coastguard Worker DRIVER = 1; 872*d5c09012SAndroid Build Coastguard Worker } 873*d5c09012SAndroid Build Coastguard Worker 874*d5c09012SAndroid Build Coastguard Worker // The Node group [resource name](https://aip.dev/122). 875*d5c09012SAndroid Build Coastguard Worker string name = 1; 876*d5c09012SAndroid Build Coastguard Worker 877*d5c09012SAndroid Build Coastguard Worker // Required. Node group roles. 878*d5c09012SAndroid Build Coastguard Worker repeated Role roles = 2 [(google.api.field_behavior) = REQUIRED]; 879*d5c09012SAndroid Build Coastguard Worker 880*d5c09012SAndroid Build Coastguard Worker // Optional. The node group instance group configuration. 881*d5c09012SAndroid Build Coastguard Worker InstanceGroupConfig node_group_config = 3 882*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 883*d5c09012SAndroid Build Coastguard Worker 884*d5c09012SAndroid Build Coastguard Worker // Optional. Node group labels. 885*d5c09012SAndroid Build Coastguard Worker // 886*d5c09012SAndroid Build Coastguard Worker // * Label **keys** must consist of from 1 to 63 characters and conform to 887*d5c09012SAndroid Build Coastguard Worker // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). 888*d5c09012SAndroid Build Coastguard Worker // * Label **values** can be empty. If specified, they must consist of from 889*d5c09012SAndroid Build Coastguard Worker // 1 to 63 characters and conform to [RFC 1035] 890*d5c09012SAndroid Build Coastguard Worker // (https://www.ietf.org/rfc/rfc1035.txt). 891*d5c09012SAndroid Build Coastguard Worker // * The node group must have no more than 32 labels. 892*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 4 [(google.api.field_behavior) = OPTIONAL]; 893*d5c09012SAndroid Build Coastguard Worker} 894*d5c09012SAndroid Build Coastguard Worker 895*d5c09012SAndroid Build Coastguard Worker// Specifies an executable to run on a fully configured node and a 896*d5c09012SAndroid Build Coastguard Worker// timeout period for executable completion. 897*d5c09012SAndroid Build Coastguard Workermessage NodeInitializationAction { 898*d5c09012SAndroid Build Coastguard Worker // Required. Cloud Storage URI of executable file. 899*d5c09012SAndroid Build Coastguard Worker string executable_file = 1 [(google.api.field_behavior) = REQUIRED]; 900*d5c09012SAndroid Build Coastguard Worker 901*d5c09012SAndroid Build Coastguard Worker // Optional. Amount of time executable has to complete. Default is 902*d5c09012SAndroid Build Coastguard Worker // 10 minutes (see JSON representation of 903*d5c09012SAndroid Build Coastguard Worker // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). 904*d5c09012SAndroid Build Coastguard Worker // 905*d5c09012SAndroid Build Coastguard Worker // Cluster creation fails with an explanatory error message (the 906*d5c09012SAndroid Build Coastguard Worker // name of the executable that caused the error and the exceeded timeout 907*d5c09012SAndroid Build Coastguard Worker // period) if the executable is not completed at end of the timeout period. 908*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration execution_timeout = 2 909*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 910*d5c09012SAndroid Build Coastguard Worker} 911*d5c09012SAndroid Build Coastguard Worker 912*d5c09012SAndroid Build Coastguard Worker// The status of a cluster and its instances. 913*d5c09012SAndroid Build Coastguard Workermessage ClusterStatus { 914*d5c09012SAndroid Build Coastguard Worker // The cluster state. 915*d5c09012SAndroid Build Coastguard Worker enum State { 916*d5c09012SAndroid Build Coastguard Worker // The cluster state is unknown. 917*d5c09012SAndroid Build Coastguard Worker UNKNOWN = 0; 918*d5c09012SAndroid Build Coastguard Worker 919*d5c09012SAndroid Build Coastguard Worker // The cluster is being created and set up. It is not ready for use. 920*d5c09012SAndroid Build Coastguard Worker CREATING = 1; 921*d5c09012SAndroid Build Coastguard Worker 922*d5c09012SAndroid Build Coastguard Worker // The cluster is currently running and healthy. It is ready for use. 923*d5c09012SAndroid Build Coastguard Worker // 924*d5c09012SAndroid Build Coastguard Worker // **Note:** The cluster state changes from "creating" to "running" status 925*d5c09012SAndroid Build Coastguard Worker // after the master node(s), first two primary worker nodes (and the last 926*d5c09012SAndroid Build Coastguard Worker // primary worker node if primary workers > 2) are running. 927*d5c09012SAndroid Build Coastguard Worker RUNNING = 2; 928*d5c09012SAndroid Build Coastguard Worker 929*d5c09012SAndroid Build Coastguard Worker // The cluster encountered an error. It is not ready for use. 930*d5c09012SAndroid Build Coastguard Worker ERROR = 3; 931*d5c09012SAndroid Build Coastguard Worker 932*d5c09012SAndroid Build Coastguard Worker // The cluster has encountered an error while being updated. Jobs can 933*d5c09012SAndroid Build Coastguard Worker // be submitted to the cluster, but the cluster cannot be updated. 934*d5c09012SAndroid Build Coastguard Worker ERROR_DUE_TO_UPDATE = 9; 935*d5c09012SAndroid Build Coastguard Worker 936*d5c09012SAndroid Build Coastguard Worker // The cluster is being deleted. It cannot be used. 937*d5c09012SAndroid Build Coastguard Worker DELETING = 4; 938*d5c09012SAndroid Build Coastguard Worker 939*d5c09012SAndroid Build Coastguard Worker // The cluster is being updated. It continues to accept and process jobs. 940*d5c09012SAndroid Build Coastguard Worker UPDATING = 5; 941*d5c09012SAndroid Build Coastguard Worker 942*d5c09012SAndroid Build Coastguard Worker // The cluster is being stopped. It cannot be used. 943*d5c09012SAndroid Build Coastguard Worker STOPPING = 6; 944*d5c09012SAndroid Build Coastguard Worker 945*d5c09012SAndroid Build Coastguard Worker // The cluster is currently stopped. It is not ready for use. 946*d5c09012SAndroid Build Coastguard Worker STOPPED = 7; 947*d5c09012SAndroid Build Coastguard Worker 948*d5c09012SAndroid Build Coastguard Worker // The cluster is being started. It is not ready for use. 949*d5c09012SAndroid Build Coastguard Worker STARTING = 8; 950*d5c09012SAndroid Build Coastguard Worker 951*d5c09012SAndroid Build Coastguard Worker // The cluster is being repaired. It is not ready for use. 952*d5c09012SAndroid Build Coastguard Worker REPAIRING = 10; 953*d5c09012SAndroid Build Coastguard Worker } 954*d5c09012SAndroid Build Coastguard Worker 955*d5c09012SAndroid Build Coastguard Worker // The cluster substate. 956*d5c09012SAndroid Build Coastguard Worker enum Substate { 957*d5c09012SAndroid Build Coastguard Worker // The cluster substate is unknown. 958*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 959*d5c09012SAndroid Build Coastguard Worker 960*d5c09012SAndroid Build Coastguard Worker // The cluster is known to be in an unhealthy state 961*d5c09012SAndroid Build Coastguard Worker // (for example, critical daemons are not running or HDFS capacity is 962*d5c09012SAndroid Build Coastguard Worker // exhausted). 963*d5c09012SAndroid Build Coastguard Worker // 964*d5c09012SAndroid Build Coastguard Worker // Applies to RUNNING state. 965*d5c09012SAndroid Build Coastguard Worker UNHEALTHY = 1; 966*d5c09012SAndroid Build Coastguard Worker 967*d5c09012SAndroid Build Coastguard Worker // The agent-reported status is out of date (may occur if 968*d5c09012SAndroid Build Coastguard Worker // Dataproc loses communication with Agent). 969*d5c09012SAndroid Build Coastguard Worker // 970*d5c09012SAndroid Build Coastguard Worker // Applies to RUNNING state. 971*d5c09012SAndroid Build Coastguard Worker STALE_STATUS = 2; 972*d5c09012SAndroid Build Coastguard Worker } 973*d5c09012SAndroid Build Coastguard Worker 974*d5c09012SAndroid Build Coastguard Worker // Output only. The cluster's state. 975*d5c09012SAndroid Build Coastguard Worker State state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 976*d5c09012SAndroid Build Coastguard Worker 977*d5c09012SAndroid Build Coastguard Worker // Optional. Output only. Details of cluster's state. 978*d5c09012SAndroid Build Coastguard Worker string detail = 2 [ 979*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY, 980*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL 981*d5c09012SAndroid Build Coastguard Worker ]; 982*d5c09012SAndroid Build Coastguard Worker 983*d5c09012SAndroid Build Coastguard Worker // Output only. Time when this state was entered (see JSON representation of 984*d5c09012SAndroid Build Coastguard Worker // [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)). 985*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp state_start_time = 3 986*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 987*d5c09012SAndroid Build Coastguard Worker 988*d5c09012SAndroid Build Coastguard Worker // Output only. Additional state information that includes 989*d5c09012SAndroid Build Coastguard Worker // status reported by the agent. 990*d5c09012SAndroid Build Coastguard Worker Substate substate = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 991*d5c09012SAndroid Build Coastguard Worker} 992*d5c09012SAndroid Build Coastguard Worker 993*d5c09012SAndroid Build Coastguard Worker// Security related configuration, including encryption, Kerberos, etc. 994*d5c09012SAndroid Build Coastguard Workermessage SecurityConfig { 995*d5c09012SAndroid Build Coastguard Worker // Optional. Kerberos related configuration. 996*d5c09012SAndroid Build Coastguard Worker KerberosConfig kerberos_config = 1 [(google.api.field_behavior) = OPTIONAL]; 997*d5c09012SAndroid Build Coastguard Worker 998*d5c09012SAndroid Build Coastguard Worker // Optional. Identity related configuration, including service account based 999*d5c09012SAndroid Build Coastguard Worker // secure multi-tenancy user mappings. 1000*d5c09012SAndroid Build Coastguard Worker IdentityConfig identity_config = 2 [(google.api.field_behavior) = OPTIONAL]; 1001*d5c09012SAndroid Build Coastguard Worker} 1002*d5c09012SAndroid Build Coastguard Worker 1003*d5c09012SAndroid Build Coastguard Worker// Specifies Kerberos related configuration. 1004*d5c09012SAndroid Build Coastguard Workermessage KerberosConfig { 1005*d5c09012SAndroid Build Coastguard Worker // Optional. Flag to indicate whether to Kerberize the cluster (default: 1006*d5c09012SAndroid Build Coastguard Worker // false). Set this field to true to enable Kerberos on a cluster. 1007*d5c09012SAndroid Build Coastguard Worker bool enable_kerberos = 1 [(google.api.field_behavior) = OPTIONAL]; 1008*d5c09012SAndroid Build Coastguard Worker 1009*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of a KMS encrypted file containing the root 1010*d5c09012SAndroid Build Coastguard Worker // principal password. 1011*d5c09012SAndroid Build Coastguard Worker string root_principal_password_uri = 2 1012*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1013*d5c09012SAndroid Build Coastguard Worker 1014*d5c09012SAndroid Build Coastguard Worker // Optional. The uri of the KMS key used to encrypt various sensitive 1015*d5c09012SAndroid Build Coastguard Worker // files. 1016*d5c09012SAndroid Build Coastguard Worker string kms_key_uri = 3 [(google.api.field_behavior) = OPTIONAL]; 1017*d5c09012SAndroid Build Coastguard Worker 1018*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of the keystore file used for SSL 1019*d5c09012SAndroid Build Coastguard Worker // encryption. If not provided, Dataproc will provide a self-signed 1020*d5c09012SAndroid Build Coastguard Worker // certificate. 1021*d5c09012SAndroid Build Coastguard Worker string keystore_uri = 4 [(google.api.field_behavior) = OPTIONAL]; 1022*d5c09012SAndroid Build Coastguard Worker 1023*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of the truststore file used for SSL 1024*d5c09012SAndroid Build Coastguard Worker // encryption. If not provided, Dataproc will provide a self-signed 1025*d5c09012SAndroid Build Coastguard Worker // certificate. 1026*d5c09012SAndroid Build Coastguard Worker string truststore_uri = 5 [(google.api.field_behavior) = OPTIONAL]; 1027*d5c09012SAndroid Build Coastguard Worker 1028*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of a KMS encrypted file containing the 1029*d5c09012SAndroid Build Coastguard Worker // password to the user provided keystore. For the self-signed certificate, 1030*d5c09012SAndroid Build Coastguard Worker // this password is generated by Dataproc. 1031*d5c09012SAndroid Build Coastguard Worker string keystore_password_uri = 6 [(google.api.field_behavior) = OPTIONAL]; 1032*d5c09012SAndroid Build Coastguard Worker 1033*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of a KMS encrypted file containing the 1034*d5c09012SAndroid Build Coastguard Worker // password to the user provided key. For the self-signed certificate, this 1035*d5c09012SAndroid Build Coastguard Worker // password is generated by Dataproc. 1036*d5c09012SAndroid Build Coastguard Worker string key_password_uri = 7 [(google.api.field_behavior) = OPTIONAL]; 1037*d5c09012SAndroid Build Coastguard Worker 1038*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of a KMS encrypted file containing the 1039*d5c09012SAndroid Build Coastguard Worker // password to the user provided truststore. For the self-signed certificate, 1040*d5c09012SAndroid Build Coastguard Worker // this password is generated by Dataproc. 1041*d5c09012SAndroid Build Coastguard Worker string truststore_password_uri = 8 [(google.api.field_behavior) = OPTIONAL]; 1042*d5c09012SAndroid Build Coastguard Worker 1043*d5c09012SAndroid Build Coastguard Worker // Optional. The remote realm the Dataproc on-cluster KDC will trust, should 1044*d5c09012SAndroid Build Coastguard Worker // the user enable cross realm trust. 1045*d5c09012SAndroid Build Coastguard Worker string cross_realm_trust_realm = 9 [(google.api.field_behavior) = OPTIONAL]; 1046*d5c09012SAndroid Build Coastguard Worker 1047*d5c09012SAndroid Build Coastguard Worker // Optional. The KDC (IP or hostname) for the remote trusted realm in a cross 1048*d5c09012SAndroid Build Coastguard Worker // realm trust relationship. 1049*d5c09012SAndroid Build Coastguard Worker string cross_realm_trust_kdc = 10 [(google.api.field_behavior) = OPTIONAL]; 1050*d5c09012SAndroid Build Coastguard Worker 1051*d5c09012SAndroid Build Coastguard Worker // Optional. The admin server (IP or hostname) for the remote trusted realm in 1052*d5c09012SAndroid Build Coastguard Worker // a cross realm trust relationship. 1053*d5c09012SAndroid Build Coastguard Worker string cross_realm_trust_admin_server = 11 1054*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1055*d5c09012SAndroid Build Coastguard Worker 1056*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of a KMS encrypted file containing the 1057*d5c09012SAndroid Build Coastguard Worker // shared password between the on-cluster Kerberos realm and the remote 1058*d5c09012SAndroid Build Coastguard Worker // trusted realm, in a cross realm trust relationship. 1059*d5c09012SAndroid Build Coastguard Worker string cross_realm_trust_shared_password_uri = 12 1060*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1061*d5c09012SAndroid Build Coastguard Worker 1062*d5c09012SAndroid Build Coastguard Worker // Optional. The Cloud Storage URI of a KMS encrypted file containing the 1063*d5c09012SAndroid Build Coastguard Worker // master key of the KDC database. 1064*d5c09012SAndroid Build Coastguard Worker string kdc_db_key_uri = 13 [(google.api.field_behavior) = OPTIONAL]; 1065*d5c09012SAndroid Build Coastguard Worker 1066*d5c09012SAndroid Build Coastguard Worker // Optional. The lifetime of the ticket granting ticket, in hours. 1067*d5c09012SAndroid Build Coastguard Worker // If not specified, or user specifies 0, then default value 10 1068*d5c09012SAndroid Build Coastguard Worker // will be used. 1069*d5c09012SAndroid Build Coastguard Worker int32 tgt_lifetime_hours = 14 [(google.api.field_behavior) = OPTIONAL]; 1070*d5c09012SAndroid Build Coastguard Worker 1071*d5c09012SAndroid Build Coastguard Worker // Optional. The name of the on-cluster Kerberos realm. 1072*d5c09012SAndroid Build Coastguard Worker // If not specified, the uppercased domain of hostnames will be the realm. 1073*d5c09012SAndroid Build Coastguard Worker string realm = 15 [(google.api.field_behavior) = OPTIONAL]; 1074*d5c09012SAndroid Build Coastguard Worker} 1075*d5c09012SAndroid Build Coastguard Worker 1076*d5c09012SAndroid Build Coastguard Worker// Identity related configuration, including service account based 1077*d5c09012SAndroid Build Coastguard Worker// secure multi-tenancy user mappings. 1078*d5c09012SAndroid Build Coastguard Workermessage IdentityConfig { 1079*d5c09012SAndroid Build Coastguard Worker // Required. Map of user to service account. 1080*d5c09012SAndroid Build Coastguard Worker map<string, string> user_service_account_mapping = 1 1081*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 1082*d5c09012SAndroid Build Coastguard Worker} 1083*d5c09012SAndroid Build Coastguard Worker 1084*d5c09012SAndroid Build Coastguard Worker// Specifies the selection and config of software inside the cluster. 1085*d5c09012SAndroid Build Coastguard Workermessage SoftwareConfig { 1086*d5c09012SAndroid Build Coastguard Worker // Optional. The version of software inside the cluster. It must be one of the 1087*d5c09012SAndroid Build Coastguard Worker // supported [Dataproc 1088*d5c09012SAndroid Build Coastguard Worker // Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions), 1089*d5c09012SAndroid Build Coastguard Worker // such as "1.2" (including a subminor version, such as "1.2.29"), or the 1090*d5c09012SAndroid Build Coastguard Worker // ["preview" 1091*d5c09012SAndroid Build Coastguard Worker // version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions). 1092*d5c09012SAndroid Build Coastguard Worker // If unspecified, it defaults to the latest Debian version. 1093*d5c09012SAndroid Build Coastguard Worker string image_version = 1 [(google.api.field_behavior) = OPTIONAL]; 1094*d5c09012SAndroid Build Coastguard Worker 1095*d5c09012SAndroid Build Coastguard Worker // Optional. The properties to set on daemon config files. 1096*d5c09012SAndroid Build Coastguard Worker // 1097*d5c09012SAndroid Build Coastguard Worker // Property keys are specified in `prefix:property` format, for example 1098*d5c09012SAndroid Build Coastguard Worker // `core:hadoop.tmp.dir`. The following are supported prefixes 1099*d5c09012SAndroid Build Coastguard Worker // and their mappings: 1100*d5c09012SAndroid Build Coastguard Worker // 1101*d5c09012SAndroid Build Coastguard Worker // * capacity-scheduler: `capacity-scheduler.xml` 1102*d5c09012SAndroid Build Coastguard Worker // * core: `core-site.xml` 1103*d5c09012SAndroid Build Coastguard Worker // * distcp: `distcp-default.xml` 1104*d5c09012SAndroid Build Coastguard Worker // * hdfs: `hdfs-site.xml` 1105*d5c09012SAndroid Build Coastguard Worker // * hive: `hive-site.xml` 1106*d5c09012SAndroid Build Coastguard Worker // * mapred: `mapred-site.xml` 1107*d5c09012SAndroid Build Coastguard Worker // * pig: `pig.properties` 1108*d5c09012SAndroid Build Coastguard Worker // * spark: `spark-defaults.conf` 1109*d5c09012SAndroid Build Coastguard Worker // * yarn: `yarn-site.xml` 1110*d5c09012SAndroid Build Coastguard Worker // 1111*d5c09012SAndroid Build Coastguard Worker // For more information, see [Cluster 1112*d5c09012SAndroid Build Coastguard Worker // properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties). 1113*d5c09012SAndroid Build Coastguard Worker map<string, string> properties = 2 [(google.api.field_behavior) = OPTIONAL]; 1114*d5c09012SAndroid Build Coastguard Worker 1115*d5c09012SAndroid Build Coastguard Worker // Optional. The set of components to activate on the cluster. 1116*d5c09012SAndroid Build Coastguard Worker repeated Component optional_components = 3 1117*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1118*d5c09012SAndroid Build Coastguard Worker} 1119*d5c09012SAndroid Build Coastguard Worker 1120*d5c09012SAndroid Build Coastguard Worker// Specifies the cluster auto-delete schedule configuration. 1121*d5c09012SAndroid Build Coastguard Workermessage LifecycleConfig { 1122*d5c09012SAndroid Build Coastguard Worker // Optional. The duration to keep the cluster alive while idling (when no jobs 1123*d5c09012SAndroid Build Coastguard Worker // are running). Passing this threshold will cause the cluster to be 1124*d5c09012SAndroid Build Coastguard Worker // deleted. Minimum value is 5 minutes; maximum value is 14 days (see JSON 1125*d5c09012SAndroid Build Coastguard Worker // representation of 1126*d5c09012SAndroid Build Coastguard Worker // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). 1127*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration idle_delete_ttl = 1 1128*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1129*d5c09012SAndroid Build Coastguard Worker 1130*d5c09012SAndroid Build Coastguard Worker // Either the exact time the cluster should be deleted at or 1131*d5c09012SAndroid Build Coastguard Worker // the cluster maximum age. 1132*d5c09012SAndroid Build Coastguard Worker oneof ttl { 1133*d5c09012SAndroid Build Coastguard Worker // Optional. The time when cluster will be auto-deleted (see JSON 1134*d5c09012SAndroid Build Coastguard Worker // representation of 1135*d5c09012SAndroid Build Coastguard Worker // [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)). 1136*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp auto_delete_time = 2 1137*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1138*d5c09012SAndroid Build Coastguard Worker 1139*d5c09012SAndroid Build Coastguard Worker // Optional. The lifetime duration of cluster. The cluster will be 1140*d5c09012SAndroid Build Coastguard Worker // auto-deleted at the end of this period. Minimum value is 10 minutes; 1141*d5c09012SAndroid Build Coastguard Worker // maximum value is 14 days (see JSON representation of 1142*d5c09012SAndroid Build Coastguard Worker // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). 1143*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration auto_delete_ttl = 3 1144*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1145*d5c09012SAndroid Build Coastguard Worker } 1146*d5c09012SAndroid Build Coastguard Worker 1147*d5c09012SAndroid Build Coastguard Worker // Output only. The time when cluster became idle (most recent job finished) 1148*d5c09012SAndroid Build Coastguard Worker // and became eligible for deletion due to idleness (see JSON representation 1149*d5c09012SAndroid Build Coastguard Worker // of 1150*d5c09012SAndroid Build Coastguard Worker // [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)). 1151*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp idle_start_time = 4 1152*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1153*d5c09012SAndroid Build Coastguard Worker} 1154*d5c09012SAndroid Build Coastguard Worker 1155*d5c09012SAndroid Build Coastguard Worker// Specifies a Metastore configuration. 1156*d5c09012SAndroid Build Coastguard Workermessage MetastoreConfig { 1157*d5c09012SAndroid Build Coastguard Worker // Required. Resource name of an existing Dataproc Metastore service. 1158*d5c09012SAndroid Build Coastguard Worker // 1159*d5c09012SAndroid Build Coastguard Worker // Example: 1160*d5c09012SAndroid Build Coastguard Worker // 1161*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/locations/[dataproc_region]/services/[service-name]` 1162*d5c09012SAndroid Build Coastguard Worker string dataproc_metastore_service = 1 [ 1163*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1164*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1165*d5c09012SAndroid Build Coastguard Worker type: "metastore.googleapis.com/Service" 1166*d5c09012SAndroid Build Coastguard Worker } 1167*d5c09012SAndroid Build Coastguard Worker ]; 1168*d5c09012SAndroid Build Coastguard Worker} 1169*d5c09012SAndroid Build Coastguard Worker 1170*d5c09012SAndroid Build Coastguard Worker// Contains cluster daemon metrics, such as HDFS and YARN stats. 1171*d5c09012SAndroid Build Coastguard Worker// 1172*d5c09012SAndroid Build Coastguard Worker// **Beta Feature**: This report is available for testing purposes only. It may 1173*d5c09012SAndroid Build Coastguard Worker// be changed before final release. 1174*d5c09012SAndroid Build Coastguard Workermessage ClusterMetrics { 1175*d5c09012SAndroid Build Coastguard Worker // The HDFS metrics. 1176*d5c09012SAndroid Build Coastguard Worker map<string, int64> hdfs_metrics = 1; 1177*d5c09012SAndroid Build Coastguard Worker 1178*d5c09012SAndroid Build Coastguard Worker // YARN metrics. 1179*d5c09012SAndroid Build Coastguard Worker map<string, int64> yarn_metrics = 2; 1180*d5c09012SAndroid Build Coastguard Worker} 1181*d5c09012SAndroid Build Coastguard Worker 1182*d5c09012SAndroid Build Coastguard Worker// Dataproc metric config. 1183*d5c09012SAndroid Build Coastguard Workermessage DataprocMetricConfig { 1184*d5c09012SAndroid Build Coastguard Worker // A source for the collection of Dataproc custom metrics (see [Custom 1185*d5c09012SAndroid Build Coastguard Worker // metrics] 1186*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com//dataproc/docs/guides/dataproc-metrics#custom_metrics)). 1187*d5c09012SAndroid Build Coastguard Worker enum MetricSource { 1188*d5c09012SAndroid Build Coastguard Worker // Required unspecified metric source. 1189*d5c09012SAndroid Build Coastguard Worker METRIC_SOURCE_UNSPECIFIED = 0; 1190*d5c09012SAndroid Build Coastguard Worker 1191*d5c09012SAndroid Build Coastguard Worker // Monitoring agent metrics. If this source is enabled, 1192*d5c09012SAndroid Build Coastguard Worker // Dataproc enables the monitoring agent in Compute Engine, 1193*d5c09012SAndroid Build Coastguard Worker // and collects monitoring agent metrics, which are published 1194*d5c09012SAndroid Build Coastguard Worker // with an `agent.googleapis.com` prefix. 1195*d5c09012SAndroid Build Coastguard Worker MONITORING_AGENT_DEFAULTS = 1; 1196*d5c09012SAndroid Build Coastguard Worker 1197*d5c09012SAndroid Build Coastguard Worker // HDFS metric source. 1198*d5c09012SAndroid Build Coastguard Worker HDFS = 2; 1199*d5c09012SAndroid Build Coastguard Worker 1200*d5c09012SAndroid Build Coastguard Worker // Spark metric source. 1201*d5c09012SAndroid Build Coastguard Worker SPARK = 3; 1202*d5c09012SAndroid Build Coastguard Worker 1203*d5c09012SAndroid Build Coastguard Worker // YARN metric source. 1204*d5c09012SAndroid Build Coastguard Worker YARN = 4; 1205*d5c09012SAndroid Build Coastguard Worker 1206*d5c09012SAndroid Build Coastguard Worker // Spark History Server metric source. 1207*d5c09012SAndroid Build Coastguard Worker SPARK_HISTORY_SERVER = 5; 1208*d5c09012SAndroid Build Coastguard Worker 1209*d5c09012SAndroid Build Coastguard Worker // Hiveserver2 metric source. 1210*d5c09012SAndroid Build Coastguard Worker HIVESERVER2 = 6; 1211*d5c09012SAndroid Build Coastguard Worker 1212*d5c09012SAndroid Build Coastguard Worker // hivemetastore metric source 1213*d5c09012SAndroid Build Coastguard Worker HIVEMETASTORE = 7; 1214*d5c09012SAndroid Build Coastguard Worker } 1215*d5c09012SAndroid Build Coastguard Worker 1216*d5c09012SAndroid Build Coastguard Worker // A Dataproc custom metric. 1217*d5c09012SAndroid Build Coastguard Worker message Metric { 1218*d5c09012SAndroid Build Coastguard Worker // Required. A standard set of metrics is collected unless `metricOverrides` 1219*d5c09012SAndroid Build Coastguard Worker // are specified for the metric source (see [Custom metrics] 1220*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/dataproc/docs/guides/dataproc-metrics#custom_metrics) 1221*d5c09012SAndroid Build Coastguard Worker // for more information). 1222*d5c09012SAndroid Build Coastguard Worker MetricSource metric_source = 1 [(google.api.field_behavior) = REQUIRED]; 1223*d5c09012SAndroid Build Coastguard Worker 1224*d5c09012SAndroid Build Coastguard Worker // Optional. Specify one or more [Custom metrics] 1225*d5c09012SAndroid Build Coastguard Worker // (https://cloud.google.com/dataproc/docs/guides/dataproc-metrics#custom_metrics) 1226*d5c09012SAndroid Build Coastguard Worker // to collect for the metric course (for the `SPARK` metric source (any 1227*d5c09012SAndroid Build Coastguard Worker // [Spark metric] 1228*d5c09012SAndroid Build Coastguard Worker // (https://spark.apache.org/docs/latest/monitoring.html#metrics) can be 1229*d5c09012SAndroid Build Coastguard Worker // specified). 1230*d5c09012SAndroid Build Coastguard Worker // 1231*d5c09012SAndroid Build Coastguard Worker // Provide metrics in the following format: 1232*d5c09012SAndroid Build Coastguard Worker // <code><var>METRIC_SOURCE</var>:<var>INSTANCE</var>:<var>GROUP</var>:<var>METRIC</var></code> 1233*d5c09012SAndroid Build Coastguard Worker // Use camelcase as appropriate. 1234*d5c09012SAndroid Build Coastguard Worker // 1235*d5c09012SAndroid Build Coastguard Worker // Examples: 1236*d5c09012SAndroid Build Coastguard Worker // 1237*d5c09012SAndroid Build Coastguard Worker // ``` 1238*d5c09012SAndroid Build Coastguard Worker // yarn:ResourceManager:QueueMetrics:AppsCompleted 1239*d5c09012SAndroid Build Coastguard Worker // spark:driver:DAGScheduler:job.allJobs 1240*d5c09012SAndroid Build Coastguard Worker // sparkHistoryServer:JVM:Memory:NonHeapMemoryUsage.committed 1241*d5c09012SAndroid Build Coastguard Worker // hiveserver2:JVM:Memory:NonHeapMemoryUsage.used 1242*d5c09012SAndroid Build Coastguard Worker // ``` 1243*d5c09012SAndroid Build Coastguard Worker // 1244*d5c09012SAndroid Build Coastguard Worker // Notes: 1245*d5c09012SAndroid Build Coastguard Worker // 1246*d5c09012SAndroid Build Coastguard Worker // * Only the specified overridden metrics are collected for the 1247*d5c09012SAndroid Build Coastguard Worker // metric source. For example, if one or more `spark:executive` metrics 1248*d5c09012SAndroid Build Coastguard Worker // are listed as metric overrides, other `SPARK` metrics are not 1249*d5c09012SAndroid Build Coastguard Worker // collected. The collection of the metrics for other enabled custom 1250*d5c09012SAndroid Build Coastguard Worker // metric sources is unaffected. For example, if both `SPARK` andd `YARN` 1251*d5c09012SAndroid Build Coastguard Worker // metric sources are enabled, and overrides are provided for Spark 1252*d5c09012SAndroid Build Coastguard Worker // metrics only, all YARN metrics are collected. 1253*d5c09012SAndroid Build Coastguard Worker repeated string metric_overrides = 2 1254*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1255*d5c09012SAndroid Build Coastguard Worker } 1256*d5c09012SAndroid Build Coastguard Worker 1257*d5c09012SAndroid Build Coastguard Worker // Required. Metrics sources to enable. 1258*d5c09012SAndroid Build Coastguard Worker repeated Metric metrics = 1 [(google.api.field_behavior) = REQUIRED]; 1259*d5c09012SAndroid Build Coastguard Worker} 1260*d5c09012SAndroid Build Coastguard Worker 1261*d5c09012SAndroid Build Coastguard Worker// A request to create a cluster. 1262*d5c09012SAndroid Build Coastguard Workermessage CreateClusterRequest { 1263*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project that the cluster 1264*d5c09012SAndroid Build Coastguard Worker // belongs to. 1265*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1266*d5c09012SAndroid Build Coastguard Worker 1267*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1268*d5c09012SAndroid Build Coastguard Worker string region = 3 [(google.api.field_behavior) = REQUIRED]; 1269*d5c09012SAndroid Build Coastguard Worker 1270*d5c09012SAndroid Build Coastguard Worker // Required. The cluster to create. 1271*d5c09012SAndroid Build Coastguard Worker Cluster cluster = 2 [(google.api.field_behavior) = REQUIRED]; 1272*d5c09012SAndroid Build Coastguard Worker 1273*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the server receives 1274*d5c09012SAndroid Build Coastguard Worker // two 1275*d5c09012SAndroid Build Coastguard Worker // [CreateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateClusterRequest)s 1276*d5c09012SAndroid Build Coastguard Worker // with the same id, then the second request will be ignored and the 1277*d5c09012SAndroid Build Coastguard Worker // first [google.longrunning.Operation][google.longrunning.Operation] created 1278*d5c09012SAndroid Build Coastguard Worker // and stored in the backend is returned. 1279*d5c09012SAndroid Build Coastguard Worker // 1280*d5c09012SAndroid Build Coastguard Worker // It is recommended to always set this value to a 1281*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 1282*d5c09012SAndroid Build Coastguard Worker // 1283*d5c09012SAndroid Build Coastguard Worker // The ID must contain only letters (a-z, A-Z), numbers (0-9), 1284*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 1285*d5c09012SAndroid Build Coastguard Worker string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; 1286*d5c09012SAndroid Build Coastguard Worker 1287*d5c09012SAndroid Build Coastguard Worker // Optional. Failure action when primary worker creation fails. 1288*d5c09012SAndroid Build Coastguard Worker FailureAction action_on_failed_primary_workers = 5 1289*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1290*d5c09012SAndroid Build Coastguard Worker} 1291*d5c09012SAndroid Build Coastguard Worker 1292*d5c09012SAndroid Build Coastguard Worker// A request to update a cluster. 1293*d5c09012SAndroid Build Coastguard Workermessage UpdateClusterRequest { 1294*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project the 1295*d5c09012SAndroid Build Coastguard Worker // cluster belongs to. 1296*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1297*d5c09012SAndroid Build Coastguard Worker 1298*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1299*d5c09012SAndroid Build Coastguard Worker string region = 5 [(google.api.field_behavior) = REQUIRED]; 1300*d5c09012SAndroid Build Coastguard Worker 1301*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name. 1302*d5c09012SAndroid Build Coastguard Worker string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; 1303*d5c09012SAndroid Build Coastguard Worker 1304*d5c09012SAndroid Build Coastguard Worker // Required. The changes to the cluster. 1305*d5c09012SAndroid Build Coastguard Worker Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED]; 1306*d5c09012SAndroid Build Coastguard Worker 1307*d5c09012SAndroid Build Coastguard Worker // Optional. Timeout for graceful YARN decommissioning. Graceful 1308*d5c09012SAndroid Build Coastguard Worker // decommissioning allows removing nodes from the cluster without 1309*d5c09012SAndroid Build Coastguard Worker // interrupting jobs in progress. Timeout specifies how long to wait for jobs 1310*d5c09012SAndroid Build Coastguard Worker // in progress to finish before forcefully removing nodes (and potentially 1311*d5c09012SAndroid Build Coastguard Worker // interrupting jobs). Default timeout is 0 (for forceful decommission), and 1312*d5c09012SAndroid Build Coastguard Worker // the maximum allowed timeout is 1 day. (see JSON representation of 1313*d5c09012SAndroid Build Coastguard Worker // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). 1314*d5c09012SAndroid Build Coastguard Worker // 1315*d5c09012SAndroid Build Coastguard Worker // Only supported on Dataproc image versions 1.2 and higher. 1316*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration graceful_decommission_timeout = 6 1317*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1318*d5c09012SAndroid Build Coastguard Worker 1319*d5c09012SAndroid Build Coastguard Worker // Required. Specifies the path, relative to `Cluster`, of 1320*d5c09012SAndroid Build Coastguard Worker // the field to update. For example, to change the number of workers 1321*d5c09012SAndroid Build Coastguard Worker // in a cluster to 5, the `update_mask` parameter would be 1322*d5c09012SAndroid Build Coastguard Worker // specified as `config.worker_config.num_instances`, 1323*d5c09012SAndroid Build Coastguard Worker // and the `PATCH` request body would specify the new value, as follows: 1324*d5c09012SAndroid Build Coastguard Worker // 1325*d5c09012SAndroid Build Coastguard Worker // { 1326*d5c09012SAndroid Build Coastguard Worker // "config":{ 1327*d5c09012SAndroid Build Coastguard Worker // "workerConfig":{ 1328*d5c09012SAndroid Build Coastguard Worker // "numInstances":"5" 1329*d5c09012SAndroid Build Coastguard Worker // } 1330*d5c09012SAndroid Build Coastguard Worker // } 1331*d5c09012SAndroid Build Coastguard Worker // } 1332*d5c09012SAndroid Build Coastguard Worker // Similarly, to change the number of preemptible workers in a cluster to 5, 1333*d5c09012SAndroid Build Coastguard Worker // the `update_mask` parameter would be 1334*d5c09012SAndroid Build Coastguard Worker // `config.secondary_worker_config.num_instances`, and the `PATCH` request 1335*d5c09012SAndroid Build Coastguard Worker // body would be set as follows: 1336*d5c09012SAndroid Build Coastguard Worker // 1337*d5c09012SAndroid Build Coastguard Worker // { 1338*d5c09012SAndroid Build Coastguard Worker // "config":{ 1339*d5c09012SAndroid Build Coastguard Worker // "secondaryWorkerConfig":{ 1340*d5c09012SAndroid Build Coastguard Worker // "numInstances":"5" 1341*d5c09012SAndroid Build Coastguard Worker // } 1342*d5c09012SAndroid Build Coastguard Worker // } 1343*d5c09012SAndroid Build Coastguard Worker // } 1344*d5c09012SAndroid Build Coastguard Worker // <strong>Note:</strong> Currently, only the following fields can be updated: 1345*d5c09012SAndroid Build Coastguard Worker // 1346*d5c09012SAndroid Build Coastguard Worker // <table> 1347*d5c09012SAndroid Build Coastguard Worker // <tbody> 1348*d5c09012SAndroid Build Coastguard Worker // <tr> 1349*d5c09012SAndroid Build Coastguard Worker // <td><strong>Mask</strong></td> 1350*d5c09012SAndroid Build Coastguard Worker // <td><strong>Purpose</strong></td> 1351*d5c09012SAndroid Build Coastguard Worker // </tr> 1352*d5c09012SAndroid Build Coastguard Worker // <tr> 1353*d5c09012SAndroid Build Coastguard Worker // <td><strong><em>labels</em></strong></td> 1354*d5c09012SAndroid Build Coastguard Worker // <td>Update labels</td> 1355*d5c09012SAndroid Build Coastguard Worker // </tr> 1356*d5c09012SAndroid Build Coastguard Worker // <tr> 1357*d5c09012SAndroid Build Coastguard Worker // <td><strong><em>config.worker_config.num_instances</em></strong></td> 1358*d5c09012SAndroid Build Coastguard Worker // <td>Resize primary worker group</td> 1359*d5c09012SAndroid Build Coastguard Worker // </tr> 1360*d5c09012SAndroid Build Coastguard Worker // <tr> 1361*d5c09012SAndroid Build Coastguard Worker // <td><strong><em>config.secondary_worker_config.num_instances</em></strong></td> 1362*d5c09012SAndroid Build Coastguard Worker // <td>Resize secondary worker group</td> 1363*d5c09012SAndroid Build Coastguard Worker // </tr> 1364*d5c09012SAndroid Build Coastguard Worker // <tr> 1365*d5c09012SAndroid Build Coastguard Worker // <td>config.autoscaling_config.policy_uri</td><td>Use, stop using, or 1366*d5c09012SAndroid Build Coastguard Worker // change autoscaling policies</td> 1367*d5c09012SAndroid Build Coastguard Worker // </tr> 1368*d5c09012SAndroid Build Coastguard Worker // </tbody> 1369*d5c09012SAndroid Build Coastguard Worker // </table> 1370*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 4 1371*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 1372*d5c09012SAndroid Build Coastguard Worker 1373*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the server 1374*d5c09012SAndroid Build Coastguard Worker // receives two 1375*d5c09012SAndroid Build Coastguard Worker // [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s 1376*d5c09012SAndroid Build Coastguard Worker // with the same id, then the second request will be ignored and the 1377*d5c09012SAndroid Build Coastguard Worker // first [google.longrunning.Operation][google.longrunning.Operation] created 1378*d5c09012SAndroid Build Coastguard Worker // and stored in the backend is returned. 1379*d5c09012SAndroid Build Coastguard Worker // 1380*d5c09012SAndroid Build Coastguard Worker // It is recommended to always set this value to a 1381*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 1382*d5c09012SAndroid Build Coastguard Worker // 1383*d5c09012SAndroid Build Coastguard Worker // The ID must contain only letters (a-z, A-Z), numbers (0-9), 1384*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 1385*d5c09012SAndroid Build Coastguard Worker string request_id = 7 [(google.api.field_behavior) = OPTIONAL]; 1386*d5c09012SAndroid Build Coastguard Worker} 1387*d5c09012SAndroid Build Coastguard Worker 1388*d5c09012SAndroid Build Coastguard Worker// A request to stop a cluster. 1389*d5c09012SAndroid Build Coastguard Workermessage StopClusterRequest { 1390*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project the 1391*d5c09012SAndroid Build Coastguard Worker // cluster belongs to. 1392*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1393*d5c09012SAndroid Build Coastguard Worker 1394*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1395*d5c09012SAndroid Build Coastguard Worker string region = 2 [(google.api.field_behavior) = REQUIRED]; 1396*d5c09012SAndroid Build Coastguard Worker 1397*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name. 1398*d5c09012SAndroid Build Coastguard Worker string cluster_name = 3 [(google.api.field_behavior) = REQUIRED]; 1399*d5c09012SAndroid Build Coastguard Worker 1400*d5c09012SAndroid Build Coastguard Worker // Optional. Specifying the `cluster_uuid` means the RPC will fail 1401*d5c09012SAndroid Build Coastguard Worker // (with error NOT_FOUND) if a cluster with the specified UUID does not exist. 1402*d5c09012SAndroid Build Coastguard Worker string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; 1403*d5c09012SAndroid Build Coastguard Worker 1404*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the server 1405*d5c09012SAndroid Build Coastguard Worker // receives two 1406*d5c09012SAndroid Build Coastguard Worker // [StopClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StopClusterRequest)s 1407*d5c09012SAndroid Build Coastguard Worker // with the same id, then the second request will be ignored and the 1408*d5c09012SAndroid Build Coastguard Worker // first [google.longrunning.Operation][google.longrunning.Operation] created 1409*d5c09012SAndroid Build Coastguard Worker // and stored in the backend is returned. 1410*d5c09012SAndroid Build Coastguard Worker // 1411*d5c09012SAndroid Build Coastguard Worker // Recommendation: Set this value to a 1412*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 1413*d5c09012SAndroid Build Coastguard Worker // 1414*d5c09012SAndroid Build Coastguard Worker // The ID must contain only letters (a-z, A-Z), numbers (0-9), 1415*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 1416*d5c09012SAndroid Build Coastguard Worker string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; 1417*d5c09012SAndroid Build Coastguard Worker} 1418*d5c09012SAndroid Build Coastguard Worker 1419*d5c09012SAndroid Build Coastguard Worker// A request to start a cluster. 1420*d5c09012SAndroid Build Coastguard Workermessage StartClusterRequest { 1421*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project the 1422*d5c09012SAndroid Build Coastguard Worker // cluster belongs to. 1423*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1424*d5c09012SAndroid Build Coastguard Worker 1425*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1426*d5c09012SAndroid Build Coastguard Worker string region = 2 [(google.api.field_behavior) = REQUIRED]; 1427*d5c09012SAndroid Build Coastguard Worker 1428*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name. 1429*d5c09012SAndroid Build Coastguard Worker string cluster_name = 3 [(google.api.field_behavior) = REQUIRED]; 1430*d5c09012SAndroid Build Coastguard Worker 1431*d5c09012SAndroid Build Coastguard Worker // Optional. Specifying the `cluster_uuid` means the RPC will fail 1432*d5c09012SAndroid Build Coastguard Worker // (with error NOT_FOUND) if a cluster with the specified UUID does not exist. 1433*d5c09012SAndroid Build Coastguard Worker string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; 1434*d5c09012SAndroid Build Coastguard Worker 1435*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the server 1436*d5c09012SAndroid Build Coastguard Worker // receives two 1437*d5c09012SAndroid Build Coastguard Worker // [StartClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StartClusterRequest)s 1438*d5c09012SAndroid Build Coastguard Worker // with the same id, then the second request will be ignored and the 1439*d5c09012SAndroid Build Coastguard Worker // first [google.longrunning.Operation][google.longrunning.Operation] created 1440*d5c09012SAndroid Build Coastguard Worker // and stored in the backend is returned. 1441*d5c09012SAndroid Build Coastguard Worker // 1442*d5c09012SAndroid Build Coastguard Worker // Recommendation: Set this value to a 1443*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 1444*d5c09012SAndroid Build Coastguard Worker // 1445*d5c09012SAndroid Build Coastguard Worker // The ID must contain only letters (a-z, A-Z), numbers (0-9), 1446*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 1447*d5c09012SAndroid Build Coastguard Worker string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; 1448*d5c09012SAndroid Build Coastguard Worker} 1449*d5c09012SAndroid Build Coastguard Worker 1450*d5c09012SAndroid Build Coastguard Worker// A request to delete a cluster. 1451*d5c09012SAndroid Build Coastguard Workermessage DeleteClusterRequest { 1452*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project that the cluster 1453*d5c09012SAndroid Build Coastguard Worker // belongs to. 1454*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1455*d5c09012SAndroid Build Coastguard Worker 1456*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1457*d5c09012SAndroid Build Coastguard Worker string region = 3 [(google.api.field_behavior) = REQUIRED]; 1458*d5c09012SAndroid Build Coastguard Worker 1459*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name. 1460*d5c09012SAndroid Build Coastguard Worker string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; 1461*d5c09012SAndroid Build Coastguard Worker 1462*d5c09012SAndroid Build Coastguard Worker // Optional. Specifying the `cluster_uuid` means the RPC should fail 1463*d5c09012SAndroid Build Coastguard Worker // (with error NOT_FOUND) if cluster with specified UUID does not exist. 1464*d5c09012SAndroid Build Coastguard Worker string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; 1465*d5c09012SAndroid Build Coastguard Worker 1466*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the server 1467*d5c09012SAndroid Build Coastguard Worker // receives two 1468*d5c09012SAndroid Build Coastguard Worker // [DeleteClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteClusterRequest)s 1469*d5c09012SAndroid Build Coastguard Worker // with the same id, then the second request will be ignored and the 1470*d5c09012SAndroid Build Coastguard Worker // first [google.longrunning.Operation][google.longrunning.Operation] created 1471*d5c09012SAndroid Build Coastguard Worker // and stored in the backend is returned. 1472*d5c09012SAndroid Build Coastguard Worker // 1473*d5c09012SAndroid Build Coastguard Worker // It is recommended to always set this value to a 1474*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 1475*d5c09012SAndroid Build Coastguard Worker // 1476*d5c09012SAndroid Build Coastguard Worker // The ID must contain only letters (a-z, A-Z), numbers (0-9), 1477*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 1478*d5c09012SAndroid Build Coastguard Worker string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; 1479*d5c09012SAndroid Build Coastguard Worker} 1480*d5c09012SAndroid Build Coastguard Worker 1481*d5c09012SAndroid Build Coastguard Worker// Request to get the resource representation for a cluster in a project. 1482*d5c09012SAndroid Build Coastguard Workermessage GetClusterRequest { 1483*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project that the cluster 1484*d5c09012SAndroid Build Coastguard Worker // belongs to. 1485*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1486*d5c09012SAndroid Build Coastguard Worker 1487*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1488*d5c09012SAndroid Build Coastguard Worker string region = 3 [(google.api.field_behavior) = REQUIRED]; 1489*d5c09012SAndroid Build Coastguard Worker 1490*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name. 1491*d5c09012SAndroid Build Coastguard Worker string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; 1492*d5c09012SAndroid Build Coastguard Worker} 1493*d5c09012SAndroid Build Coastguard Worker 1494*d5c09012SAndroid Build Coastguard Worker// A request to list the clusters in a project. 1495*d5c09012SAndroid Build Coastguard Workermessage ListClustersRequest { 1496*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project that the cluster 1497*d5c09012SAndroid Build Coastguard Worker // belongs to. 1498*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1499*d5c09012SAndroid Build Coastguard Worker 1500*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1501*d5c09012SAndroid Build Coastguard Worker string region = 4 [(google.api.field_behavior) = REQUIRED]; 1502*d5c09012SAndroid Build Coastguard Worker 1503*d5c09012SAndroid Build Coastguard Worker // Optional. A filter constraining the clusters to list. Filters are 1504*d5c09012SAndroid Build Coastguard Worker // case-sensitive and have the following syntax: 1505*d5c09012SAndroid Build Coastguard Worker // 1506*d5c09012SAndroid Build Coastguard Worker // field = value [AND [field = value]] ... 1507*d5c09012SAndroid Build Coastguard Worker // 1508*d5c09012SAndroid Build Coastguard Worker // where **field** is one of `status.state`, `clusterName`, or `labels.[KEY]`, 1509*d5c09012SAndroid Build Coastguard Worker // and `[KEY]` is a label key. **value** can be `*` to match all values. 1510*d5c09012SAndroid Build Coastguard Worker // `status.state` can be one of the following: `ACTIVE`, `INACTIVE`, 1511*d5c09012SAndroid Build Coastguard Worker // `CREATING`, `RUNNING`, `ERROR`, `DELETING`, or `UPDATING`. `ACTIVE` 1512*d5c09012SAndroid Build Coastguard Worker // contains the `CREATING`, `UPDATING`, and `RUNNING` states. `INACTIVE` 1513*d5c09012SAndroid Build Coastguard Worker // contains the `DELETING` and `ERROR` states. 1514*d5c09012SAndroid Build Coastguard Worker // `clusterName` is the name of the cluster provided at creation time. 1515*d5c09012SAndroid Build Coastguard Worker // Only the logical `AND` operator is supported; space-separated items are 1516*d5c09012SAndroid Build Coastguard Worker // treated as having an implicit `AND` operator. 1517*d5c09012SAndroid Build Coastguard Worker // 1518*d5c09012SAndroid Build Coastguard Worker // Example filter: 1519*d5c09012SAndroid Build Coastguard Worker // 1520*d5c09012SAndroid Build Coastguard Worker // status.state = ACTIVE AND clusterName = mycluster 1521*d5c09012SAndroid Build Coastguard Worker // AND labels.env = staging AND labels.starred = * 1522*d5c09012SAndroid Build Coastguard Worker string filter = 5 [(google.api.field_behavior) = OPTIONAL]; 1523*d5c09012SAndroid Build Coastguard Worker 1524*d5c09012SAndroid Build Coastguard Worker // Optional. The standard List page size. 1525*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; 1526*d5c09012SAndroid Build Coastguard Worker 1527*d5c09012SAndroid Build Coastguard Worker // Optional. The standard List page token. 1528*d5c09012SAndroid Build Coastguard Worker string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; 1529*d5c09012SAndroid Build Coastguard Worker} 1530*d5c09012SAndroid Build Coastguard Worker 1531*d5c09012SAndroid Build Coastguard Worker// The list of all clusters in a project. 1532*d5c09012SAndroid Build Coastguard Workermessage ListClustersResponse { 1533*d5c09012SAndroid Build Coastguard Worker // Output only. The clusters in the project. 1534*d5c09012SAndroid Build Coastguard Worker repeated Cluster clusters = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1535*d5c09012SAndroid Build Coastguard Worker 1536*d5c09012SAndroid Build Coastguard Worker // Output only. This token is included in the response if there are more 1537*d5c09012SAndroid Build Coastguard Worker // results to fetch. To fetch additional results, provide this value as the 1538*d5c09012SAndroid Build Coastguard Worker // `page_token` in a subsequent `ListClustersRequest`. 1539*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 1540*d5c09012SAndroid Build Coastguard Worker} 1541*d5c09012SAndroid Build Coastguard Worker 1542*d5c09012SAndroid Build Coastguard Worker// A request to collect cluster diagnostic information. 1543*d5c09012SAndroid Build Coastguard Workermessage DiagnoseClusterRequest { 1544*d5c09012SAndroid Build Coastguard Worker // Required. The ID of the Google Cloud Platform project that the cluster 1545*d5c09012SAndroid Build Coastguard Worker // belongs to. 1546*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 1547*d5c09012SAndroid Build Coastguard Worker 1548*d5c09012SAndroid Build Coastguard Worker // Required. The Dataproc region in which to handle the request. 1549*d5c09012SAndroid Build Coastguard Worker string region = 3 [(google.api.field_behavior) = REQUIRED]; 1550*d5c09012SAndroid Build Coastguard Worker 1551*d5c09012SAndroid Build Coastguard Worker // Required. The cluster name. 1552*d5c09012SAndroid Build Coastguard Worker string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; 1553*d5c09012SAndroid Build Coastguard Worker 1554*d5c09012SAndroid Build Coastguard Worker // Optional. The output Cloud Storage directory for the diagnostic 1555*d5c09012SAndroid Build Coastguard Worker // tarball. If not specified, a task-specific directory in the cluster's 1556*d5c09012SAndroid Build Coastguard Worker // staging bucket will be used. 1557*d5c09012SAndroid Build Coastguard Worker string tarball_gcs_dir = 4 [(google.api.field_behavior) = OPTIONAL]; 1558*d5c09012SAndroid Build Coastguard Worker 1559*d5c09012SAndroid Build Coastguard Worker // Optional. Time interval in which diagnosis should be carried out on the 1560*d5c09012SAndroid Build Coastguard Worker // cluster. 1561*d5c09012SAndroid Build Coastguard Worker google.type.Interval diagnosis_interval = 6 1562*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1563*d5c09012SAndroid Build Coastguard Worker 1564*d5c09012SAndroid Build Coastguard Worker // Optional. Specifies a list of jobs on which diagnosis is to be performed. 1565*d5c09012SAndroid Build Coastguard Worker // Format: projects/{project}/regions/{region}/jobs/{job} 1566*d5c09012SAndroid Build Coastguard Worker repeated string jobs = 10 [(google.api.field_behavior) = OPTIONAL]; 1567*d5c09012SAndroid Build Coastguard Worker 1568*d5c09012SAndroid Build Coastguard Worker // Optional. Specifies a list of yarn applications on which diagnosis is to be 1569*d5c09012SAndroid Build Coastguard Worker // performed. 1570*d5c09012SAndroid Build Coastguard Worker repeated string yarn_application_ids = 11 1571*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1572*d5c09012SAndroid Build Coastguard Worker} 1573*d5c09012SAndroid Build Coastguard Worker 1574*d5c09012SAndroid Build Coastguard Worker// The location of diagnostic output. 1575*d5c09012SAndroid Build Coastguard Workermessage DiagnoseClusterResults { 1576*d5c09012SAndroid Build Coastguard Worker // Output only. The Cloud Storage URI of the diagnostic output. 1577*d5c09012SAndroid Build Coastguard Worker // The output report is a plain text file with a summary of collected 1578*d5c09012SAndroid Build Coastguard Worker // diagnostics. 1579*d5c09012SAndroid Build Coastguard Worker string output_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1580*d5c09012SAndroid Build Coastguard Worker} 1581*d5c09012SAndroid Build Coastguard Worker 1582*d5c09012SAndroid Build Coastguard Worker// Reservation Affinity for consuming Zonal reservation. 1583*d5c09012SAndroid Build Coastguard Workermessage ReservationAffinity { 1584*d5c09012SAndroid Build Coastguard Worker // Indicates whether to consume capacity from an reservation or not. 1585*d5c09012SAndroid Build Coastguard Worker enum Type { 1586*d5c09012SAndroid Build Coastguard Worker TYPE_UNSPECIFIED = 0; 1587*d5c09012SAndroid Build Coastguard Worker 1588*d5c09012SAndroid Build Coastguard Worker // Do not consume from any allocated capacity. 1589*d5c09012SAndroid Build Coastguard Worker NO_RESERVATION = 1; 1590*d5c09012SAndroid Build Coastguard Worker 1591*d5c09012SAndroid Build Coastguard Worker // Consume any reservation available. 1592*d5c09012SAndroid Build Coastguard Worker ANY_RESERVATION = 2; 1593*d5c09012SAndroid Build Coastguard Worker 1594*d5c09012SAndroid Build Coastguard Worker // Must consume from a specific reservation. Must specify key value fields 1595*d5c09012SAndroid Build Coastguard Worker // for specifying the reservations. 1596*d5c09012SAndroid Build Coastguard Worker SPECIFIC_RESERVATION = 3; 1597*d5c09012SAndroid Build Coastguard Worker } 1598*d5c09012SAndroid Build Coastguard Worker 1599*d5c09012SAndroid Build Coastguard Worker // Optional. Type of reservation to consume 1600*d5c09012SAndroid Build Coastguard Worker Type consume_reservation_type = 1 [(google.api.field_behavior) = OPTIONAL]; 1601*d5c09012SAndroid Build Coastguard Worker 1602*d5c09012SAndroid Build Coastguard Worker // Optional. Corresponds to the label key of reservation resource. 1603*d5c09012SAndroid Build Coastguard Worker string key = 2 [(google.api.field_behavior) = OPTIONAL]; 1604*d5c09012SAndroid Build Coastguard Worker 1605*d5c09012SAndroid Build Coastguard Worker // Optional. Corresponds to the label values of reservation resource. 1606*d5c09012SAndroid Build Coastguard Worker repeated string values = 3 [(google.api.field_behavior) = OPTIONAL]; 1607*d5c09012SAndroid Build Coastguard Worker} 1608