google-cloud-dataproc-v1 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -42,6 +42,10 @@ module Google
42
42
  # [Operation.metadata][google.longrunning.Operation.metadata] will be
43
43
  # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
44
44
  rpc :UpdateCluster, ::Google::Cloud::Dataproc::V1::UpdateClusterRequest, ::Google::Longrunning::Operation
45
+ # Stops a cluster in a project.
46
+ rpc :StopCluster, ::Google::Cloud::Dataproc::V1::StopClusterRequest, ::Google::Longrunning::Operation
47
+ # Starts a cluster in a project.
48
+ rpc :StartCluster, ::Google::Cloud::Dataproc::V1::StartClusterRequest, ::Google::Longrunning::Operation
45
49
  # Deletes a cluster in a project. The returned
46
50
  # [Operation.metadata][google.longrunning.Operation.metadata] will be
47
51
  # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
@@ -243,8 +243,9 @@ module Google
243
243
  # Required. The job resource.
244
244
  # @param request_id [::String]
245
245
  # Optional. A unique id used to identify the request. If the server
246
- # receives two {::Google::Cloud::Dataproc::V1::SubmitJobRequest SubmitJobRequest} requests with the same
247
- # id, then the second request will be ignored and the
246
+ # receives two
247
+ # [SubmitJobRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.SubmitJobRequest)s
248
+ # with the same id, then the second request will be ignored and the
248
249
  # first {::Google::Cloud::Dataproc::V1::Job Job} created and stored in the backend
249
250
  # is returned.
250
251
  #
@@ -327,8 +328,9 @@ module Google
327
328
  # Required. The job resource.
328
329
  # @param request_id [::String]
329
330
  # Optional. A unique id used to identify the request. If the server
330
- # receives two {::Google::Cloud::Dataproc::V1::SubmitJobRequest SubmitJobRequest} requests with the same
331
- # id, then the second request will be ignored and the
331
+ # receives two
332
+ # [SubmitJobRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.SubmitJobRequest)s
333
+ # with the same id, then the second request will be ignored and the
332
334
  # first {::Google::Cloud::Dataproc::V1::Job Job} created and stored in the backend
333
335
  # is returned.
334
336
  #
@@ -116,6 +116,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
116
116
  add_message "google.cloud.dataproc.v1.JobPlacement" do
117
117
  optional :cluster_name, :string, 1
118
118
  optional :cluster_uuid, :string, 2
119
+ map :cluster_labels, :string, :string, 3
119
120
  end
120
121
  add_message "google.cloud.dataproc.v1.JobStatus" do
121
122
  optional :state, :enum, 1, "google.cloud.dataproc.v1.JobStatus.State"
@@ -187,6 +188,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
187
188
  end
188
189
  add_message "google.cloud.dataproc.v1.JobScheduling" do
189
190
  optional :max_failures_per_hour, :int32, 1
191
+ optional :max_failures_total, :int32, 2
190
192
  end
191
193
  add_message "google.cloud.dataproc.v1.SubmitJobRequest" do
192
194
  optional :project_id, :string, 1
@@ -4,14 +4,21 @@
4
4
  require 'google/protobuf'
5
5
 
6
6
  require 'google/api/annotations_pb'
7
+ require 'google/api/field_behavior_pb'
7
8
  Google::Protobuf::DescriptorPool.generated_pool.build do
8
9
  add_file("google/cloud/dataproc/v1/shared.proto", :syntax => :proto3) do
9
10
  add_enum "google.cloud.dataproc.v1.Component" do
10
11
  value :COMPONENT_UNSPECIFIED, 0
11
12
  value :ANACONDA, 5
13
+ value :DOCKER, 13
14
+ value :DRUID, 9
15
+ value :FLINK, 14
16
+ value :HBASE, 11
12
17
  value :HIVE_WEBHCAT, 3
13
18
  value :JUPYTER, 1
14
19
  value :PRESTO, 6
20
+ value :RANGER, 12
21
+ value :SOLR, 10
15
22
  value :ZEPPELIN, 4
16
23
  value :ZOOKEEPER, 8
17
24
  end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Dataproc
23
23
  module V1
24
- VERSION = "0.5.0"
24
+ VERSION = "0.6.0"
25
25
  end
26
26
  end
27
27
  end
@@ -446,7 +446,7 @@ module Google
446
446
  # underscores (_), and hyphens (-). The maximum length is 40 characters.
447
447
  # @param parameters [::Hash{::String => ::String}]
448
448
  # Optional. Map from parameter names to values that should be used for those
449
- # parameters. Values may not exceed 100 characters.
449
+ # parameters. Values may not exceed 1000 characters.
450
450
  #
451
451
  # @yield [response, operation] Access the result along with the RPC operation
452
452
  # @yieldparam response [::Gapic::Operation]
@@ -498,7 +498,8 @@ module Google
498
498
  # Instantiates a template and begins execution.
499
499
  #
500
500
  # This method is equivalent to executing the sequence
501
- # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#create_workflow_template CreateWorkflowTemplate}, {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#instantiate_workflow_template InstantiateWorkflowTemplate},
501
+ # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#create_workflow_template CreateWorkflowTemplate},
502
+ # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#instantiate_workflow_template InstantiateWorkflowTemplate},
502
503
  # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#delete_workflow_template DeleteWorkflowTemplate}.
503
504
  #
504
505
  # The returned Operation can be used to track execution of
@@ -24,6 +24,25 @@ module Google
24
24
  module WorkflowTemplateService
25
25
  # Path helper methods for the WorkflowTemplateService API.
26
26
  module Paths
27
+ ##
28
+ # Create a fully-qualified Cluster resource string.
29
+ #
30
+ # The resource will be in the following format:
31
+ #
32
+ # `projects/{project}/locations/{location}/clusters/{cluster}`
33
+ #
34
+ # @param project [String]
35
+ # @param location [String]
36
+ # @param cluster [String]
37
+ #
38
+ # @return [::String]
39
+ def cluster_path project:, location:, cluster:
40
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
41
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
42
+
43
+ "projects/#{project}/locations/#{location}/clusters/#{cluster}"
44
+ end
45
+
27
46
  ##
28
47
  # Create a fully-qualified Location resource string.
29
48
  #
@@ -58,6 +77,25 @@ module Google
58
77
  "projects/#{project}/regions/#{region}"
59
78
  end
60
79
 
80
+ ##
81
+ # Create a fully-qualified Service resource string.
82
+ #
83
+ # The resource will be in the following format:
84
+ #
85
+ # `projects/{project}/locations/{location}/services/{service}`
86
+ #
87
+ # @param project [String]
88
+ # @param location [String]
89
+ # @param service [String]
90
+ #
91
+ # @return [::String]
92
+ def service_path project:, location:, service:
93
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
94
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
95
+
96
+ "projects/#{project}/locations/#{location}/services/#{service}"
97
+ end
98
+
61
99
  ##
62
100
  # Create a fully-qualified WorkflowTemplate resource string.
63
101
  #
@@ -10,6 +10,7 @@ require 'google/api/resource_pb'
10
10
  require 'google/cloud/dataproc/v1/clusters_pb'
11
11
  require 'google/cloud/dataproc/v1/jobs_pb'
12
12
  require 'google/longrunning/operations_pb'
13
+ require 'google/protobuf/duration_pb'
13
14
  require 'google/protobuf/empty_pb'
14
15
  require 'google/protobuf/timestamp_pb'
15
16
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -24,6 +25,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
24
25
  optional :placement, :message, 7, "google.cloud.dataproc.v1.WorkflowTemplatePlacement"
25
26
  repeated :jobs, :message, 8, "google.cloud.dataproc.v1.OrderedJob"
26
27
  repeated :parameters, :message, 9, "google.cloud.dataproc.v1.TemplateParameter"
28
+ optional :dag_timeout, :message, 10, "google.protobuf.Duration"
27
29
  end
28
30
  add_message "google.cloud.dataproc.v1.WorkflowTemplatePlacement" do
29
31
  oneof :placement do
@@ -86,6 +88,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
86
88
  optional :start_time, :message, 9, "google.protobuf.Timestamp"
87
89
  optional :end_time, :message, 10, "google.protobuf.Timestamp"
88
90
  optional :cluster_uuid, :string, 11
91
+ optional :dag_timeout, :message, 12, "google.protobuf.Duration"
92
+ optional :dag_start_time, :message, 13, "google.protobuf.Timestamp"
93
+ optional :dag_end_time, :message, 14, "google.protobuf.Timestamp"
89
94
  end
90
95
  add_enum "google.cloud.dataproc.v1.WorkflowMetadata.State" do
91
96
  value :UNKNOWN, 0
@@ -65,7 +65,8 @@ module Google
65
65
  # Instantiates a template and begins execution.
66
66
  #
67
67
  # This method is equivalent to executing the sequence
68
- # [CreateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate], [InstantiateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate],
68
+ # [CreateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate],
69
+ # [InstantiateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate],
69
70
  # [DeleteWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.DeleteWorkflowTemplate].
70
71
  #
71
72
  # The returned Operation can be used to track execution of
@@ -85,6 +85,8 @@ module Google
85
85
  # and manage this project-level, per-location bucket (see
86
86
  # [Dataproc staging
87
87
  # bucket](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)).
88
+ # **This field requires a Cloud Storage bucket name, not a URI to a Cloud
89
+ # Storage bucket.**
88
90
  # @!attribute [rw] temp_bucket
89
91
  # @return [::String]
90
92
  # Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs data,
@@ -96,6 +98,8 @@ module Google
96
98
  # and manage this project-level, per-location bucket. The default bucket has
97
99
  # a TTL of 90 days, but you can use any TTL (or none) if you specify a
98
100
  # bucket.
101
+ # **This field requires a Cloud Storage bucket name, not a URI to a Cloud
102
+ # Storage bucket.**
99
103
  # @!attribute [rw] gce_cluster_config
100
104
  # @return [::Google::Cloud::Dataproc::V1::GceClusterConfig]
101
105
  # Optional. The shared Compute Engine config settings for
@@ -146,11 +150,42 @@ module Google
146
150
  # @!attribute [rw] endpoint_config
147
151
  # @return [::Google::Cloud::Dataproc::V1::EndpointConfig]
148
152
  # Optional. Port/endpoint configuration for this cluster
153
+ # @!attribute [rw] metastore_config
154
+ # @return [::Google::Cloud::Dataproc::V1::MetastoreConfig]
155
+ # Optional. Metastore configuration.
156
+ # @!attribute [rw] gke_cluster_config
157
+ # @return [::Google::Cloud::Dataproc::V1::GkeClusterConfig]
158
+ # Optional. BETA. The Kubernetes Engine config for Dataproc clusters deployed to
159
+ # Kubernetes. Setting this is considered mutually exclusive with Compute
160
+ # Engine-based options such as `gce_cluster_config`, `master_config`,
161
+ # `worker_config`, `secondary_worker_config`, and `autoscaling_config`.
149
162
  class ClusterConfig
150
163
  include ::Google::Protobuf::MessageExts
151
164
  extend ::Google::Protobuf::MessageExts::ClassMethods
152
165
  end
153
166
 
167
+ # The GKE config for this cluster.
168
+ # @!attribute [rw] namespaced_gke_deployment_target
169
+ # @return [::Google::Cloud::Dataproc::V1::GkeClusterConfig::NamespacedGkeDeploymentTarget]
170
+ # Optional. A target for the deployment.
171
+ class GkeClusterConfig
172
+ include ::Google::Protobuf::MessageExts
173
+ extend ::Google::Protobuf::MessageExts::ClassMethods
174
+
175
+ # A full, namespace-isolated deployment target for an existing GKE cluster.
176
+ # @!attribute [rw] target_gke_cluster
177
+ # @return [::String]
178
+ # Optional. The target GKE cluster to deploy to.
179
+ # Format: 'projects/\\{project}/locations/\\{location}/clusters/\\{cluster_id}'
180
+ # @!attribute [rw] cluster_namespace
181
+ # @return [::String]
182
+ # Optional. A namespace within the GKE cluster to deploy into.
183
+ class NamespacedGkeDeploymentTarget
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
187
+ end
188
+
154
189
  # Endpoint config for this cluster
155
190
  # @!attribute [r] http_ports
156
191
  # @return [::Google::Protobuf::Map{::String => ::String}]
@@ -248,6 +283,9 @@ module Google
248
283
  # instance. This `internal_ip_only` restriction can only be enabled for
249
284
  # subnetwork enabled networks, and all off-cluster dependencies must be
250
285
  # configured to be accessible without external IP addresses.
286
+ # @!attribute [rw] private_ipv6_google_access
287
+ # @return [::Google::Cloud::Dataproc::V1::GceClusterConfig::PrivateIpv6GoogleAccess]
288
+ # Optional. The type of IPv6 access for a cluster.
251
289
  # @!attribute [rw] service_account
252
290
  # @return [::String]
253
291
  # Optional. The [Dataproc service
@@ -289,6 +327,13 @@ module Google
289
327
  # @!attribute [rw] reservation_affinity
290
328
  # @return [::Google::Cloud::Dataproc::V1::ReservationAffinity]
291
329
  # Optional. Reservation Affinity for consuming Zonal reservation.
330
+ # @!attribute [rw] node_group_affinity
331
+ # @return [::Google::Cloud::Dataproc::V1::NodeGroupAffinity]
332
+ # Optional. Node Group Affinity for sole-tenant clusters.
333
+ # @!attribute [rw] shielded_instance_config
334
+ # @return [::Google::Cloud::Dataproc::V1::ShieldedInstanceConfig]
335
+ # Optional. Shielded Instance Config for clusters using [Compute Engine Shielded
336
+ # VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm).
292
337
  class GceClusterConfig
293
338
  include ::Google::Protobuf::MessageExts
294
339
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -301,6 +346,64 @@ module Google
301
346
  include ::Google::Protobuf::MessageExts
302
347
  extend ::Google::Protobuf::MessageExts::ClassMethods
303
348
  end
349
+
350
+ # `PrivateIpv6GoogleAccess` controls whether and how Dataproc cluster nodes
351
+ # can communicate with Google Services through gRPC over IPv6.
352
+ # These values are directly mapped to corresponding values in the
353
+ # [Compute Engine Instance
354
+ # fields](https://cloud.google.com/compute/docs/reference/rest/v1/instances).
355
+ module PrivateIpv6GoogleAccess
356
+ # If unspecified, Compute Engine default behavior will apply, which
357
+ # is the same as {::Google::Cloud::Dataproc::V1::GceClusterConfig::PrivateIpv6GoogleAccess::INHERIT_FROM_SUBNETWORK INHERIT_FROM_SUBNETWORK}.
358
+ PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0
359
+
360
+ # Private access to and from Google Services configuration
361
+ # inherited from the subnetwork configuration. This is the
362
+ # default Compute Engine behavior.
363
+ INHERIT_FROM_SUBNETWORK = 1
364
+
365
+ # Enables outbound private IPv6 access to Google Services from the Dataproc
366
+ # cluster.
367
+ OUTBOUND = 2
368
+
369
+ # Enables bidirectional private IPv6 access between Google Services and the
370
+ # Dataproc cluster.
371
+ BIDIRECTIONAL = 3
372
+ end
373
+ end
374
+
375
+ # Node Group Affinity for clusters using sole-tenant node groups.
376
+ # @!attribute [rw] node_group_uri
377
+ # @return [::String]
378
+ # Required. The URI of a
379
+ # sole-tenant [node group
380
+ # resource](https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups)
381
+ # that the cluster will be created on.
382
+ #
383
+ # A full URL, partial URI, or node group name are valid. Examples:
384
+ #
385
+ # * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1`
386
+ # * `projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1`
387
+ # * `node-group-1`
388
+ class NodeGroupAffinity
389
+ include ::Google::Protobuf::MessageExts
390
+ extend ::Google::Protobuf::MessageExts::ClassMethods
391
+ end
392
+
393
+ # Shielded Instance Config for clusters using [Compute Engine Shielded
394
+ # VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm).
395
+ # @!attribute [rw] enable_secure_boot
396
+ # @return [::Boolean]
397
+ # Optional. Defines whether instances have Secure Boot enabled.
398
+ # @!attribute [rw] enable_vtpm
399
+ # @return [::Boolean]
400
+ # Optional. Defines whether instances have the vTPM enabled.
401
+ # @!attribute [rw] enable_integrity_monitoring
402
+ # @return [::Boolean]
403
+ # Optional. Defines whether instances have integrity monitoring enabled.
404
+ class ShieldedInstanceConfig
405
+ include ::Google::Protobuf::MessageExts
406
+ extend ::Google::Protobuf::MessageExts::ClassMethods
304
407
  end
305
408
 
306
409
  # The config settings for Compute Engine resources in
@@ -308,7 +411,11 @@ module Google
308
411
  # @!attribute [rw] num_instances
309
412
  # @return [::Integer]
310
413
  # Optional. The number of VM instances in the instance group.
311
- # For master instance groups, must be set to 1.
414
+ # For [HA
415
+ # cluster](/dataproc/docs/concepts/configuring-clusters/high-availability)
416
+ # [master_config](#FIELDS.master_config) groups, **must be set to 3**.
417
+ # For standard cluster [master_config](#FIELDS.master_config) groups,
418
+ # **must be set to 1**.
312
419
  # @!attribute [r] instance_names
313
420
  # @return [::Array<::String>]
314
421
  # Output only. The list of instance names. Dataproc derives the names
@@ -450,8 +557,10 @@ module Google
450
557
  # @!attribute [rw] boot_disk_type
451
558
  # @return [::String]
452
559
  # Optional. Type of the boot disk (default is "pd-standard").
453
- # Valid values: "pd-ssd" (Persistent Disk Solid State Drive) or
454
- # "pd-standard" (Persistent Disk Hard Disk Drive).
560
+ # Valid values: "pd-balanced" (Persistent Disk Balanced Solid State Drive),
561
+ # "pd-ssd" (Persistent Disk Solid State Drive),
562
+ # or "pd-standard" (Persistent Disk Hard Disk Drive).
563
+ # See [Disk types](https://cloud.google.com/compute/docs/disks#disk-types).
455
564
  # @!attribute [rw] boot_disk_size_gb
456
565
  # @return [::Integer]
457
566
  # Optional. Size in GB of the boot disk (default is 500GB).
@@ -525,6 +634,15 @@ module Google
525
634
 
526
635
  # The cluster is being updated. It continues to accept and process jobs.
527
636
  UPDATING = 5
637
+
638
+ # The cluster is being stopped. It cannot be used.
639
+ STOPPING = 6
640
+
641
+ # The cluster is currently stopped. It is not ready for use.
642
+ STOPPED = 7
643
+
644
+ # The cluster is being started. It is not ready for use.
645
+ STARTING = 8
528
646
  end
529
647
 
530
648
  # The cluster substate.
@@ -547,10 +665,14 @@ module Google
547
665
  end
548
666
  end
549
667
 
550
- # Security related configuration, including Kerberos.
668
+ # Security related configuration, including encryption, Kerberos, etc.
551
669
  # @!attribute [rw] kerberos_config
552
670
  # @return [::Google::Cloud::Dataproc::V1::KerberosConfig]
553
- # Kerberos related configuration.
671
+ # Optional. Kerberos related configuration.
672
+ # @!attribute [rw] identity_config
673
+ # @return [::Google::Cloud::Dataproc::V1::IdentityConfig]
674
+ # Optional. Identity related configuration, including service account based
675
+ # secure multi-tenancy user mappings.
554
676
  class SecurityConfig
555
677
  include ::Google::Protobuf::MessageExts
556
678
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -563,11 +685,11 @@ module Google
563
685
  # this field to true to enable Kerberos on a cluster.
564
686
  # @!attribute [rw] root_principal_password_uri
565
687
  # @return [::String]
566
- # Required. The Cloud Storage URI of a KMS encrypted file containing the root
688
+ # Optional. The Cloud Storage URI of a KMS encrypted file containing the root
567
689
  # principal password.
568
690
  # @!attribute [rw] kms_key_uri
569
691
  # @return [::String]
570
- # Required. The uri of the KMS key used to encrypt various sensitive
692
+ # Optional. The uri of the KMS key used to encrypt various sensitive
571
693
  # files.
572
694
  # @!attribute [rw] keystore_uri
573
695
  # @return [::String]
@@ -629,6 +751,25 @@ module Google
629
751
  extend ::Google::Protobuf::MessageExts::ClassMethods
630
752
  end
631
753
 
754
+ # Identity related configuration, including service account based
755
+ # secure multi-tenancy user mappings.
756
+ # @!attribute [rw] user_service_account_mapping
757
+ # @return [::Google::Protobuf::Map{::String => ::String}]
758
+ # Required. Map of user to service account.
759
+ class IdentityConfig
760
+ include ::Google::Protobuf::MessageExts
761
+ extend ::Google::Protobuf::MessageExts::ClassMethods
762
+
763
+ # @!attribute [rw] key
764
+ # @return [::String]
765
+ # @!attribute [rw] value
766
+ # @return [::String]
767
+ class UserServiceAccountMappingEntry
768
+ include ::Google::Protobuf::MessageExts
769
+ extend ::Google::Protobuf::MessageExts::ClassMethods
770
+ end
771
+ end
772
+
632
773
  # Specifies the selection and config of software inside the cluster.
633
774
  # @!attribute [rw] image_version
634
775
  # @return [::String]
@@ -681,9 +822,9 @@ module Google
681
822
  # @return [::Google::Protobuf::Duration]
682
823
  # Optional. The duration to keep the cluster alive while idling (when no jobs
683
824
  # are running). Passing this threshold will cause the cluster to be
684
- # deleted. Minimum value is 10 minutes; maximum value is 14 days (see JSON
825
+ # deleted. Minimum value is 5 minutes; maximum value is 14 days (see JSON
685
826
  # representation of
686
- # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json).
827
+ # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
687
828
  # @!attribute [rw] auto_delete_time
688
829
  # @return [::Google::Protobuf::Timestamp]
689
830
  # Optional. The time when cluster will be auto-deleted (see JSON representation of
@@ -705,6 +846,19 @@ module Google
705
846
  extend ::Google::Protobuf::MessageExts::ClassMethods
706
847
  end
707
848
 
849
+ # Specifies a Metastore configuration.
850
+ # @!attribute [rw] dataproc_metastore_service
851
+ # @return [::String]
852
+ # Required. Resource name of an existing Dataproc Metastore service.
853
+ #
854
+ # Example:
855
+ #
856
+ # * `projects/[project_id]/locations/[dataproc_region]/services/[service-name]`
857
+ class MetastoreConfig
858
+ include ::Google::Protobuf::MessageExts
859
+ extend ::Google::Protobuf::MessageExts::ClassMethods
860
+ end
861
+
708
862
  # Contains cluster daemon metrics, such as HDFS and YARN stats.
709
863
  #
710
864
  # **Beta Feature**: This report is available for testing purposes only. It may
@@ -751,9 +905,9 @@ module Google
751
905
  # Required. The cluster to create.
752
906
  # @!attribute [rw] request_id
753
907
  # @return [::String]
754
- # Optional. A unique id used to identify the request. If the server
755
- # receives two {::Google::Cloud::Dataproc::V1::CreateClusterRequest CreateClusterRequest} requests with the same
756
- # id, then the second request will be ignored and the
908
+ # Optional. A unique id used to identify the request. If the server receives two
909
+ # [CreateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateClusterRequest)s
910
+ # with the same id, then the second request will be ignored and the
757
911
  # first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the backend
758
912
  # is returned.
759
913
  #
@@ -848,8 +1002,9 @@ module Google
848
1002
  # @!attribute [rw] request_id
849
1003
  # @return [::String]
850
1004
  # Optional. A unique id used to identify the request. If the server
851
- # receives two {::Google::Cloud::Dataproc::V1::UpdateClusterRequest UpdateClusterRequest} requests with the same
852
- # id, then the second request will be ignored and the
1005
+ # receives two
1006
+ # [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
1007
+ # with the same id, then the second request will be ignored and the
853
1008
  # first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
854
1009
  # backend is returned.
855
1010
  #
@@ -863,6 +1018,74 @@ module Google
863
1018
  extend ::Google::Protobuf::MessageExts::ClassMethods
864
1019
  end
865
1020
 
1021
+ # A request to stop a cluster.
1022
+ # @!attribute [rw] project_id
1023
+ # @return [::String]
1024
+ # Required. The ID of the Google Cloud Platform project the
1025
+ # cluster belongs to.
1026
+ # @!attribute [rw] region
1027
+ # @return [::String]
1028
+ # Required. The Dataproc region in which to handle the request.
1029
+ # @!attribute [rw] cluster_name
1030
+ # @return [::String]
1031
+ # Required. The cluster name.
1032
+ # @!attribute [rw] cluster_uuid
1033
+ # @return [::String]
1034
+ # Optional. Specifying the `cluster_uuid` means the RPC will fail
1035
+ # (with error NOT_FOUND) if a cluster with the specified UUID does not exist.
1036
+ # @!attribute [rw] request_id
1037
+ # @return [::String]
1038
+ # Optional. A unique id used to identify the request. If the server
1039
+ # receives two
1040
+ # [StopClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StopClusterRequest)s
1041
+ # with the same id, then the second request will be ignored and the
1042
+ # first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
1043
+ # backend is returned.
1044
+ #
1045
+ # Recommendation: Set this value to a
1046
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
1047
+ #
1048
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
1049
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
1050
+ class StopClusterRequest
1051
+ include ::Google::Protobuf::MessageExts
1052
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1053
+ end
1054
+
1055
+ # A request to start a cluster.
1056
+ # @!attribute [rw] project_id
1057
+ # @return [::String]
1058
+ # Required. The ID of the Google Cloud Platform project the
1059
+ # cluster belongs to.
1060
+ # @!attribute [rw] region
1061
+ # @return [::String]
1062
+ # Required. The Dataproc region in which to handle the request.
1063
+ # @!attribute [rw] cluster_name
1064
+ # @return [::String]
1065
+ # Required. The cluster name.
1066
+ # @!attribute [rw] cluster_uuid
1067
+ # @return [::String]
1068
+ # Optional. Specifying the `cluster_uuid` means the RPC will fail
1069
+ # (with error NOT_FOUND) if a cluster with the specified UUID does not exist.
1070
+ # @!attribute [rw] request_id
1071
+ # @return [::String]
1072
+ # Optional. A unique id used to identify the request. If the server
1073
+ # receives two
1074
+ # [StartClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StartClusterRequest)s
1075
+ # with the same id, then the second request will be ignored and the
1076
+ # first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
1077
+ # backend is returned.
1078
+ #
1079
+ # Recommendation: Set this value to a
1080
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
1081
+ #
1082
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
1083
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
1084
+ class StartClusterRequest
1085
+ include ::Google::Protobuf::MessageExts
1086
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1087
+ end
1088
+
866
1089
  # A request to delete a cluster.
867
1090
  # @!attribute [rw] project_id
868
1091
  # @return [::String]
@@ -881,8 +1104,9 @@ module Google
881
1104
  # @!attribute [rw] request_id
882
1105
  # @return [::String]
883
1106
  # Optional. A unique id used to identify the request. If the server
884
- # receives two {::Google::Cloud::Dataproc::V1::DeleteClusterRequest DeleteClusterRequest} requests with the same
885
- # id, then the second request will be ignored and the
1107
+ # receives two
1108
+ # [DeleteClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteClusterRequest)s
1109
+ # with the same id, then the second request will be ignored and the
886
1110
  # first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
887
1111
  # backend is returned.
888
1112
  #