google-cloud-dataproc-v1beta2 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +203 -0
  5. data/README.md +71 -0
  6. data/lib/google-cloud-dataproc-v1beta2.rb +21 -0
  7. data/lib/google/cloud/common_resources_pb.rb +15 -0
  8. data/lib/google/cloud/dataproc/v1beta2.rb +38 -0
  9. data/lib/google/cloud/dataproc/v1beta2/autoscaling_policies_pb.rb +81 -0
  10. data/lib/google/cloud/dataproc/v1beta2/autoscaling_policies_services_pb.rb +58 -0
  11. data/lib/google/cloud/dataproc/v1beta2/autoscaling_policy_service.rb +50 -0
  12. data/lib/google/cloud/dataproc/v1beta2/autoscaling_policy_service/client.rb +734 -0
  13. data/lib/google/cloud/dataproc/v1beta2/autoscaling_policy_service/credentials.rb +51 -0
  14. data/lib/google/cloud/dataproc/v1beta2/autoscaling_policy_service/paths.rb +110 -0
  15. data/lib/google/cloud/dataproc/v1beta2/cluster_controller.rb +50 -0
  16. data/lib/google/cloud/dataproc/v1beta2/cluster_controller/client.rb +979 -0
  17. data/lib/google/cloud/dataproc/v1beta2/cluster_controller/credentials.rb +51 -0
  18. data/lib/google/cloud/dataproc/v1beta2/cluster_controller/operations.rb +564 -0
  19. data/lib/google/cloud/dataproc/v1beta2/clusters_pb.rb +255 -0
  20. data/lib/google/cloud/dataproc/v1beta2/clusters_services_pb.rb +68 -0
  21. data/lib/google/cloud/dataproc/v1beta2/job_controller.rb +49 -0
  22. data/lib/google/cloud/dataproc/v1beta2/job_controller/client.rb +980 -0
  23. data/lib/google/cloud/dataproc/v1beta2/job_controller/credentials.rb +51 -0
  24. data/lib/google/cloud/dataproc/v1beta2/job_controller/operations.rb +564 -0
  25. data/lib/google/cloud/dataproc/v1beta2/jobs_pb.rb +283 -0
  26. data/lib/google/cloud/dataproc/v1beta2/jobs_services_pb.rb +62 -0
  27. data/lib/google/cloud/dataproc/v1beta2/operations_pb.rb +45 -0
  28. data/lib/google/cloud/dataproc/v1beta2/shared_pb.rb +35 -0
  29. data/lib/google/cloud/dataproc/v1beta2/version.rb +28 -0
  30. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service.rb +51 -0
  31. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service/client.rb +1028 -0
  32. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service/credentials.rb +51 -0
  33. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service/operations.rb +564 -0
  34. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service/paths.rb +110 -0
  35. data/lib/google/cloud/dataproc/v1beta2/workflow_templates_pb.rb +189 -0
  36. data/lib/google/cloud/dataproc/v1beta2/workflow_templates_services_pb.rb +104 -0
  37. data/proto_docs/README.md +4 -0
  38. data/proto_docs/google/api/field_behavior.rb +59 -0
  39. data/proto_docs/google/api/resource.rb +247 -0
  40. data/proto_docs/google/cloud/dataproc/v1beta2/autoscaling_policies.rb +272 -0
  41. data/proto_docs/google/cloud/dataproc/v1beta2/clusters.rb +1032 -0
  42. data/proto_docs/google/cloud/dataproc/v1beta2/jobs.rb +984 -0
  43. data/proto_docs/google/cloud/dataproc/v1beta2/operations.rb +98 -0
  44. data/proto_docs/google/cloud/dataproc/v1beta2/shared.rb +68 -0
  45. data/proto_docs/google/cloud/dataproc/v1beta2/workflow_templates.rb +706 -0
  46. data/proto_docs/google/longrunning/operations.rb +150 -0
  47. data/proto_docs/google/protobuf/any.rb +138 -0
  48. data/proto_docs/google/protobuf/duration.rb +98 -0
  49. data/proto_docs/google/protobuf/empty.rb +36 -0
  50. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  51. data/proto_docs/google/protobuf/timestamp.rb +120 -0
  52. data/proto_docs/google/rpc/status.rb +46 -0
  53. metadata +205 -0
@@ -0,0 +1,1032 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Dataproc
23
+ module V1beta2
24
+ # Describes the identifying information, config, and status of
25
+ # a cluster of Compute Engine instances.
26
+ # @!attribute [rw] project_id
27
+ # @return [String]
28
+ # Required. The Google Cloud Platform project ID that the cluster belongs to.
29
+ # @!attribute [rw] cluster_name
30
+ # @return [String]
31
+ # Required. The cluster name. Cluster names within a project must be
32
+ # unique. Names of deleted clusters can be reused.
33
+ # @!attribute [rw] config
34
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterConfig]
35
+ # Required. The cluster config. Note that Dataproc may set
36
+ # default values, and values may change when clusters are updated.
37
+ # @!attribute [rw] labels
38
+ # @return [Google::Protobuf::Map{String => String}]
39
+ # Optional. The labels to associate with this cluster.
40
+ # Label **keys** must contain 1 to 63 characters, and must conform to
41
+ # [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
42
+ # Label **values** may be empty, but, if present, must contain 1 to 63
43
+ # characters, and must conform to [RFC
44
+ # 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be
45
+ # associated with a cluster.
46
+ # @!attribute [r] status
47
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterStatus]
48
+ # Output only. Cluster status.
49
+ # @!attribute [r] status_history
50
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::ClusterStatus>]
51
+ # Output only. The previous cluster status.
52
+ # @!attribute [r] cluster_uuid
53
+ # @return [String]
54
+ # Output only. A cluster UUID (Unique Universal Identifier). Dataproc
55
+ # generates this value when it creates the cluster.
56
+ # @!attribute [r] metrics
57
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterMetrics]
58
+ # Output only. Contains cluster daemon metrics such as HDFS and YARN stats.
59
+ #
60
+ # **Beta Feature**: This report is available for testing purposes only. It
61
+ # may be changed before final release.
62
+ class Cluster
63
+ include Google::Protobuf::MessageExts
64
+ extend Google::Protobuf::MessageExts::ClassMethods
65
+
66
+ # @!attribute [rw] key
67
+ # @return [String]
68
+ # @!attribute [rw] value
69
+ # @return [String]
70
+ class LabelsEntry
71
+ include Google::Protobuf::MessageExts
72
+ extend Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+ end
75
+
76
+ # The cluster config.
77
+ # @!attribute [rw] config_bucket
78
+ # @return [String]
79
+ # Optional. A Cloud Storage bucket used to stage job
80
+ # dependencies, config files, and job driver console output.
81
+ # If you do not specify a staging bucket, Cloud
82
+ # Dataproc will determine a Cloud Storage location (US,
83
+ # ASIA, or EU) for your cluster's staging bucket according to the
84
+ # Compute Engine zone where your cluster is deployed, and then create
85
+ # and manage this project-level, per-location bucket (see
86
+ # [Dataproc staging
87
+ # bucket](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)).
88
+ # @!attribute [rw] gce_cluster_config
89
+ # @return [Google::Cloud::Dataproc::V1beta2::GceClusterConfig]
90
+ # Optional. The shared Compute Engine config settings for
91
+ # all instances in a cluster.
92
+ # @!attribute [rw] master_config
93
+ # @return [Google::Cloud::Dataproc::V1beta2::InstanceGroupConfig]
94
+ # Optional. The Compute Engine config settings for
95
+ # the master instance in a cluster.
96
+ # @!attribute [rw] worker_config
97
+ # @return [Google::Cloud::Dataproc::V1beta2::InstanceGroupConfig]
98
+ # Optional. The Compute Engine config settings for
99
+ # worker instances in a cluster.
100
+ # @!attribute [rw] secondary_worker_config
101
+ # @return [Google::Cloud::Dataproc::V1beta2::InstanceGroupConfig]
102
+ # Optional. The Compute Engine config settings for
103
+ # additional worker instances in a cluster.
104
+ # @!attribute [rw] software_config
105
+ # @return [Google::Cloud::Dataproc::V1beta2::SoftwareConfig]
106
+ # Optional. The config settings for software inside the cluster.
107
+ # @!attribute [rw] lifecycle_config
108
+ # @return [Google::Cloud::Dataproc::V1beta2::LifecycleConfig]
109
+ # Optional. The config setting for auto delete cluster schedule.
110
+ # @!attribute [rw] initialization_actions
111
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::NodeInitializationAction>]
112
+ # Optional. Commands to execute on each node after config is
113
+ # completed. By default, executables are run on master and all worker nodes.
114
+ # You can test a node's <code>role</code> metadata to run an executable on
115
+ # a master or worker node, as shown below using `curl` (you can also use
116
+ # `wget`):
117
+ #
118
+ # ROLE=$(curl -H Metadata-Flavor:Google
119
+ # http://metadata/computeMetadata/v1beta2/instance/attributes/dataproc-role)
120
+ # if [[ "${ROLE}" == 'Master' ]]; then
121
+ # ... master specific actions ...
122
+ # else
123
+ # ... worker specific actions ...
124
+ # fi
125
+ # @!attribute [rw] encryption_config
126
+ # @return [Google::Cloud::Dataproc::V1beta2::EncryptionConfig]
127
+ # Optional. Encryption settings for the cluster.
128
+ # @!attribute [rw] autoscaling_config
129
+ # @return [Google::Cloud::Dataproc::V1beta2::AutoscalingConfig]
130
+ # Optional. Autoscaling config for the policy associated with the cluster.
131
+ # Cluster does not autoscale if this field is unset.
132
+ # @!attribute [rw] endpoint_config
133
+ # @return [Google::Cloud::Dataproc::V1beta2::EndpointConfig]
134
+ # Optional. Port/endpoint configuration for this cluster
135
+ # @!attribute [rw] security_config
136
+ # @return [Google::Cloud::Dataproc::V1beta2::SecurityConfig]
137
+ # Optional. Security related configuration.
138
+ # @!attribute [rw] gke_cluster_config
139
+ # @return [Google::Cloud::Dataproc::V1beta2::GkeClusterConfig]
140
+ # Optional. The Kubernetes Engine config for Dataproc clusters deployed to Kubernetes.
141
+ # Setting this is considered mutually exclusive with Compute Engine-based
142
+ # options such as `gce_cluster_config`, `master_config`, `worker_config`,
143
+ # `secondary_worker_config`, and `autoscaling_config`.
144
+ class ClusterConfig
145
+ include Google::Protobuf::MessageExts
146
+ extend Google::Protobuf::MessageExts::ClassMethods
147
+ end
148
+
149
+ # The GKE config for this cluster.
150
+ # @!attribute [rw] namespaced_gke_deployment_target
151
+ # @return [Google::Cloud::Dataproc::V1beta2::GkeClusterConfig::NamespacedGkeDeploymentTarget]
152
+ # Optional. A target for the deployment.
153
+ class GkeClusterConfig
154
+ include Google::Protobuf::MessageExts
155
+ extend Google::Protobuf::MessageExts::ClassMethods
156
+
157
+ # A full, namespace-isolated deployment target for an existing GKE cluster.
158
+ # @!attribute [rw] target_gke_cluster
159
+ # @return [String]
160
+ # Optional. The target GKE cluster to deploy to.
161
+ # Format: 'projects/\\{project}/locations/\\{location}/clusters/\\{cluster_id}'
162
+ # @!attribute [rw] cluster_namespace
163
+ # @return [String]
164
+ # Optional. A namespace within the GKE cluster to deploy into.
165
+ class NamespacedGkeDeploymentTarget
166
+ include Google::Protobuf::MessageExts
167
+ extend Google::Protobuf::MessageExts::ClassMethods
168
+ end
169
+ end
170
+
171
+ # Endpoint config for this cluster
172
+ # @!attribute [r] http_ports
173
+ # @return [Google::Protobuf::Map{String => String}]
174
+ # Output only. The map of port descriptions to URLs. Will only be populated
175
+ # if enable_http_port_access is true.
176
+ # @!attribute [rw] enable_http_port_access
177
+ # @return [Boolean]
178
+ # Optional. If true, enable http access to specific ports on the cluster
179
+ # from external sources. Defaults to false.
180
+ class EndpointConfig
181
+ include Google::Protobuf::MessageExts
182
+ extend Google::Protobuf::MessageExts::ClassMethods
183
+
184
+ # @!attribute [rw] key
185
+ # @return [String]
186
+ # @!attribute [rw] value
187
+ # @return [String]
188
+ class HttpPortsEntry
189
+ include Google::Protobuf::MessageExts
190
+ extend Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+ end
193
+
194
+ # Autoscaling Policy config associated with the cluster.
195
+ # @!attribute [rw] policy_uri
196
+ # @return [String]
197
+ # Optional. The autoscaling policy used by the cluster.
198
+ #
199
+ # Only resource names including projectid and location (region) are valid.
200
+ # Examples:
201
+ #
202
+ # * `https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]`
203
+ # * `projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]`
204
+ #
205
+ # Note that the policy must be in the same project and Dataproc region.
206
+ class AutoscalingConfig
207
+ include Google::Protobuf::MessageExts
208
+ extend Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Encryption settings for the cluster.
212
+ # @!attribute [rw] gce_pd_kms_key_name
213
+ # @return [String]
214
+ # Optional. The Cloud KMS key name to use for PD disk encryption for all
215
+ # instances in the cluster.
216
+ class EncryptionConfig
217
+ include Google::Protobuf::MessageExts
218
+ extend Google::Protobuf::MessageExts::ClassMethods
219
+ end
220
+
221
+ # Common config settings for resources of Compute Engine cluster
222
+ # instances, applicable to all instances in the cluster.
223
+ # @!attribute [rw] zone_uri
224
+ # @return [String]
225
+ # Optional. The zone where the Compute Engine cluster will be located.
226
+ # On a create request, it is required in the "global" region. If omitted
227
+ # in a non-global Dataproc region, the service will pick a zone in the
228
+ # corresponding Compute Engine region. On a get request, zone will always be
229
+ # present.
230
+ #
231
+ # A full URL, partial URI, or short name are valid. Examples:
232
+ #
233
+ # * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]`
234
+ # * `projects/[project_id]/zones/[zone]`
235
+ # * `us-central1-f`
236
+ # @!attribute [rw] network_uri
237
+ # @return [String]
238
+ # Optional. The Compute Engine network to be used for machine
239
+ # communications. Cannot be specified with subnetwork_uri. If neither
240
+ # `network_uri` nor `subnetwork_uri` is specified, the "default" network of
241
+ # the project is used, if it exists. Cannot be a "Custom Subnet Network" (see
242
+ # [Using Subnetworks](https://cloud.google.com/compute/docs/subnetworks) for
243
+ # more information).
244
+ #
245
+ # A full URL, partial URI, or short name are valid. Examples:
246
+ #
247
+ # * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default`
248
+ # * `projects/[project_id]/regions/global/default`
249
+ # * `default`
250
+ # @!attribute [rw] subnetwork_uri
251
+ # @return [String]
252
+ # Optional. The Compute Engine subnetwork to be used for machine
253
+ # communications. Cannot be specified with network_uri.
254
+ #
255
+ # A full URL, partial URI, or short name are valid. Examples:
256
+ #
257
+ # * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/subnetworks/sub0`
258
+ # * `projects/[project_id]/regions/us-east1/subnetworks/sub0`
259
+ # * `sub0`
260
+ # @!attribute [rw] internal_ip_only
261
+ # @return [Boolean]
262
+ # Optional. If true, all instances in the cluster will only have internal IP
263
+ # addresses. By default, clusters are not restricted to internal IP
264
+ # addresses, and will have ephemeral external IP addresses assigned to each
265
+ # instance. This `internal_ip_only` restriction can only be enabled for
266
+ # subnetwork enabled networks, and all off-cluster dependencies must be
267
+ # configured to be accessible without external IP addresses.
268
+ # @!attribute [rw] service_account
269
+ # @return [String]
270
+ # Optional. The [Dataproc service
271
+ # account](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service-accounts#service_accounts_in_cloud_dataproc)
272
+ # (also see [VM Data Plane
273
+ # identity](https://cloud.google.com/dataproc/docs/concepts/iam/dataproc-principals#vm_service_account_data_plane_identity))
274
+ # used by Dataproc cluster VM instances to access Google Cloud Platform
275
+ # services.
276
+ #
277
+ # If not specified, the
278
+ # [Compute Engine default service
279
+ # account](https://cloud.google.com/compute/docs/access/service-accounts#default_service_account)
280
+ # is used.
281
+ # @!attribute [rw] service_account_scopes
282
+ # @return [Array<String>]
283
+ # Optional. The URIs of service account scopes to be included in
284
+ # Compute Engine instances. The following base set of scopes is always
285
+ # included:
286
+ #
287
+ # * https://www.googleapis.com/auth/cloud.useraccounts.readonly
288
+ # * https://www.googleapis.com/auth/devstorage.read_write
289
+ # * https://www.googleapis.com/auth/logging.write
290
+ #
291
+ # If no scopes are specified, the following defaults are also provided:
292
+ #
293
+ # * https://www.googleapis.com/auth/bigquery
294
+ # * https://www.googleapis.com/auth/bigtable.admin.table
295
+ # * https://www.googleapis.com/auth/bigtable.data
296
+ # * https://www.googleapis.com/auth/devstorage.full_control
297
+ # @!attribute [rw] tags
298
+ # @return [Array<String>]
299
+ # The Compute Engine tags to add to all instances (see [Tagging
300
+ # instances](https://cloud.google.com/compute/docs/label-or-tag-resources#tags)).
301
+ # @!attribute [rw] metadata
302
+ # @return [Google::Protobuf::Map{String => String}]
303
+ # The Compute Engine metadata entries to add to all instances (see
304
+ # [Project and instance
305
+ # metadata](https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).
306
+ # @!attribute [rw] reservation_affinity
307
+ # @return [Google::Cloud::Dataproc::V1beta2::ReservationAffinity]
308
+ # Optional. Reservation Affinity for consuming Zonal reservation.
309
+ class GceClusterConfig
310
+ include Google::Protobuf::MessageExts
311
+ extend Google::Protobuf::MessageExts::ClassMethods
312
+
313
+ # @!attribute [rw] key
314
+ # @return [String]
315
+ # @!attribute [rw] value
316
+ # @return [String]
317
+ class MetadataEntry
318
+ include Google::Protobuf::MessageExts
319
+ extend Google::Protobuf::MessageExts::ClassMethods
320
+ end
321
+ end
322
+
323
+ # The config settings for Compute Engine resources in
324
+ # an instance group, such as a master or worker group.
325
+ # @!attribute [rw] num_instances
326
+ # @return [Integer]
327
+ # Optional. The number of VM instances in the instance group.
328
+ # For master instance groups, must be set to 1.
329
+ # @!attribute [r] instance_names
330
+ # @return [Array<String>]
331
+ # Output only. The list of instance names. Dataproc derives the names
332
+ # from `cluster_name`, `num_instances`, and the instance group.
333
+ # @!attribute [rw] image_uri
334
+ # @return [String]
335
+ # Optional. The Compute Engine image resource used for cluster instances.
336
+ #
337
+ # The URI can represent an image or image family.
338
+ #
339
+ # Image examples:
340
+ #
341
+ # * `https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/[image-id]`
342
+ # * `projects/[project_id]/global/images/[image-id]`
343
+ # * `image-id`
344
+ #
345
+ # Image family examples. Dataproc will use the most recent
346
+ # image from the family:
347
+ #
348
+ # * `https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/family/[custom-image-family-name]`
349
+ # * `projects/[project_id]/global/images/family/[custom-image-family-name]`
350
+ #
351
+ # If the URI is unspecified, it will be inferred from
352
+ # `SoftwareConfig.image_version` or the system default.
353
+ # @!attribute [rw] machine_type_uri
354
+ # @return [String]
355
+ # Optional. The Compute Engine machine type used for cluster instances.
356
+ #
357
+ # A full URL, partial URI, or short name are valid. Examples:
358
+ #
359
+ # * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2`
360
+ # * `projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2`
361
+ # * `n1-standard-2`
362
+ #
363
+ # **Auto Zone Exception**: If you are using the Dataproc
364
+ # [Auto Zone
365
+ # Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
366
+ # feature, you must use the short name of the machine type
367
+ # resource, for example, `n1-standard-2`.
368
+ # @!attribute [rw] disk_config
369
+ # @return [Google::Cloud::Dataproc::V1beta2::DiskConfig]
370
+ # Optional. Disk option config settings.
371
+ # @!attribute [r] is_preemptible
372
+ # @return [Boolean]
373
+ # Output only. Specifies that this instance group contains preemptible
374
+ # instances.
375
+ # @!attribute [r] managed_group_config
376
+ # @return [Google::Cloud::Dataproc::V1beta2::ManagedGroupConfig]
377
+ # Output only. The config for Compute Engine Instance Group
378
+ # Manager that manages this group.
379
+ # This is only used for preemptible instance groups.
380
+ # @!attribute [rw] accelerators
381
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::AcceleratorConfig>]
382
+ # Optional. The Compute Engine accelerator configuration for these
383
+ # instances.
384
+ # @!attribute [rw] min_cpu_platform
385
+ # @return [String]
386
+ # Specifies the minimum cpu platform for the Instance Group.
387
+ # See [Dataproc -> Minimum CPU
388
+ # Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
389
+ class InstanceGroupConfig
390
+ include Google::Protobuf::MessageExts
391
+ extend Google::Protobuf::MessageExts::ClassMethods
392
+ end
393
+
394
+ # Specifies the resources used to actively manage an instance group.
395
+ # @!attribute [r] instance_template_name
396
+ # @return [String]
397
+ # Output only. The name of the Instance Template used for the Managed
398
+ # Instance Group.
399
+ # @!attribute [r] instance_group_manager_name
400
+ # @return [String]
401
+ # Output only. The name of the Instance Group Manager for this group.
402
+ class ManagedGroupConfig
403
+ include Google::Protobuf::MessageExts
404
+ extend Google::Protobuf::MessageExts::ClassMethods
405
+ end
406
+
407
+ # Specifies the type and number of accelerator cards attached to the instances
408
+ # of an instance group (see [GPUs on Compute
409
+ # Engine](https://cloud.google.com/compute/docs/gpus/)).
410
+ # @!attribute [rw] accelerator_type_uri
411
+ # @return [String]
412
+ # Full URL, partial URI, or short name of the accelerator type resource to
413
+ # expose to this instance. See
414
+ # [Compute Engine
415
+ # AcceleratorTypes](https://cloud.google.com/compute/docs/reference/beta/acceleratorTypes)
416
+ #
417
+ # Examples
418
+ # * `https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80`
419
+ # * `projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80`
420
+ # * `nvidia-tesla-k80`
421
+ #
422
+ # **Auto Zone Exception**: If you are using the Dataproc
423
+ # [Auto Zone
424
+ # Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
425
+ # feature, you must use the short name of the accelerator type
426
+ # resource, for example, `nvidia-tesla-k80`.
427
+ # @!attribute [rw] accelerator_count
428
+ # @return [Integer]
429
+ # The number of the accelerator cards of this type exposed to this instance.
430
+ class AcceleratorConfig
431
+ include Google::Protobuf::MessageExts
432
+ extend Google::Protobuf::MessageExts::ClassMethods
433
+ end
434
+
435
+ # Specifies the config of disk options for a group of VM instances.
436
+ # @!attribute [rw] boot_disk_type
437
+ # @return [String]
438
+ # Optional. Type of the boot disk (default is "pd-standard").
439
+ # Valid values: "pd-ssd" (Persistent Disk Solid State Drive) or
440
+ # "pd-standard" (Persistent Disk Hard Disk Drive).
441
+ # @!attribute [rw] boot_disk_size_gb
442
+ # @return [Integer]
443
+ # Optional. Size in GB of the boot disk (default is 500GB).
444
+ # @!attribute [rw] num_local_ssds
445
+ # @return [Integer]
446
+ # Number of attached SSDs, from 0 to 4 (default is 0).
447
+ # If SSDs are not attached, the boot disk is used to store runtime logs and
448
+ # [HDFS](https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data.
449
+ # If one or more SSDs are attached, this runtime bulk
450
+ # data is spread across them, and the boot disk contains only basic
451
+ # config and installed binaries.
452
+ class DiskConfig
453
+ include Google::Protobuf::MessageExts
454
+ extend Google::Protobuf::MessageExts::ClassMethods
455
+ end
456
+
457
+ # Specifies the cluster auto-delete schedule configuration.
458
+ # @!attribute [rw] idle_delete_ttl
459
+ # @return [Google::Protobuf::Duration]
460
+ # Optional. The duration to keep the cluster alive while idling (when no jobs
461
+ # are running). Passing this threshold will cause the cluster to be
462
+ # deleted. Minimum value is 10 minutes; maximum value is 14 days (see JSON
463
+ # representation of
464
+ # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json).
465
+ # @!attribute [rw] auto_delete_time
466
+ # @return [Google::Protobuf::Timestamp]
467
+ # Optional. The time when cluster will be auto-deleted. (see JSON representation of
468
+ # [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)).
469
+ # @!attribute [rw] auto_delete_ttl
470
+ # @return [Google::Protobuf::Duration]
471
+ # Optional. The lifetime duration of cluster. The cluster will be
472
+ # auto-deleted at the end of this period. Minimum value is 10 minutes;
473
+ # maximum value is 14 days (see JSON representation of
474
+ # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
475
+ # @!attribute [r] idle_start_time
476
+ # @return [Google::Protobuf::Timestamp]
477
+ # Output only. The time when cluster became idle (most recent job finished)
478
+ # and became eligible for deletion due to idleness (see JSON representation
479
+ # of
480
+ # [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)).
481
+ class LifecycleConfig
482
+ include Google::Protobuf::MessageExts
483
+ extend Google::Protobuf::MessageExts::ClassMethods
484
+ end
485
+
486
+ # Security related configuration, including encryption, Kerberos, etc.
487
+ # @!attribute [rw] kerberos_config
488
+ # @return [Google::Cloud::Dataproc::V1beta2::KerberosConfig]
489
+ # Kerberos related configuration.
490
+ class SecurityConfig
491
+ include Google::Protobuf::MessageExts
492
+ extend Google::Protobuf::MessageExts::ClassMethods
493
+ end
494
+
495
+ # Specifies Kerberos related configuration.
496
+ # @!attribute [rw] enable_kerberos
497
+ # @return [Boolean]
498
+ # Optional. Flag to indicate whether to Kerberize the cluster (default: false). Set
499
+ # this field to true to enable Kerberos on a cluster.
500
+ # @!attribute [rw] root_principal_password_uri
501
+ # @return [String]
502
+ # Required. The Cloud Storage URI of a KMS encrypted file containing the root
503
+ # principal password.
504
+ # @!attribute [rw] kms_key_uri
505
+ # @return [String]
506
+ # Required. The uri of the KMS key used to encrypt various sensitive
507
+ # files.
508
+ # @!attribute [rw] keystore_uri
509
+ # @return [String]
510
+ # Optional. The Cloud Storage URI of the keystore file used for SSL
511
+ # encryption. If not provided, Dataproc will provide a self-signed
512
+ # certificate.
513
+ # @!attribute [rw] truststore_uri
514
+ # @return [String]
515
+ # Optional. The Cloud Storage URI of the truststore file used for SSL
516
+ # encryption. If not provided, Dataproc will provide a self-signed
517
+ # certificate.
518
+ # @!attribute [rw] keystore_password_uri
519
+ # @return [String]
520
+ # Optional. The Cloud Storage URI of a KMS encrypted file containing the
521
+ # password to the user provided keystore. For the self-signed certificate,
522
+ # this password is generated by Dataproc.
523
+ # @!attribute [rw] key_password_uri
524
+ # @return [String]
525
+ # Optional. The Cloud Storage URI of a KMS encrypted file containing the
526
+ # password to the user provided key. For the self-signed certificate, this
527
+ # password is generated by Dataproc.
528
+ # @!attribute [rw] truststore_password_uri
529
+ # @return [String]
530
+ # Optional. The Cloud Storage URI of a KMS encrypted file containing the
531
+ # password to the user provided truststore. For the self-signed certificate,
532
+ # this password is generated by Dataproc.
533
+ # @!attribute [rw] cross_realm_trust_realm
534
+ # @return [String]
535
+ # Optional. The remote realm the Dataproc on-cluster KDC will trust, should
536
+ # the user enable cross realm trust.
537
+ # @!attribute [rw] cross_realm_trust_kdc
538
+ # @return [String]
539
+ # Optional. The KDC (IP or hostname) for the remote trusted realm in a cross
540
+ # realm trust relationship.
541
+ # @!attribute [rw] cross_realm_trust_admin_server
542
+ # @return [String]
543
+ # Optional. The admin server (IP or hostname) for the remote trusted realm in
544
+ # a cross realm trust relationship.
545
+ # @!attribute [rw] cross_realm_trust_shared_password_uri
546
+ # @return [String]
547
+ # Optional. The Cloud Storage URI of a KMS encrypted file containing the
548
+ # shared password between the on-cluster Kerberos realm and the remote
549
+ # trusted realm, in a cross realm trust relationship.
550
+ # @!attribute [rw] kdc_db_key_uri
551
+ # @return [String]
552
+ # Optional. The Cloud Storage URI of a KMS encrypted file containing the
553
+ # master key of the KDC database.
554
+ # @!attribute [rw] tgt_lifetime_hours
555
+ # @return [Integer]
556
+ # Optional. The lifetime of the ticket granting ticket, in hours.
557
+ # If not specified, or user specifies 0, then default value 10
558
+ # will be used.
559
+ # @!attribute [rw] realm
560
+ # @return [String]
561
+ # Optional. The name of the on-cluster Kerberos realm.
562
+ # If not specified, the uppercased domain of hostnames will be the realm.
563
+ class KerberosConfig
564
+ include Google::Protobuf::MessageExts
565
+ extend Google::Protobuf::MessageExts::ClassMethods
566
+ end
567
+
568
+ # Specifies an executable to run on a fully configured node and a
569
+ # timeout period for executable completion.
570
+ # @!attribute [rw] executable_file
571
+ # @return [String]
572
+ # Required. Cloud Storage URI of executable file.
573
+ # @!attribute [rw] execution_timeout
574
+ # @return [Google::Protobuf::Duration]
575
+ # Optional. Amount of time executable has to complete. Default is
576
+ # 10 minutes (see JSON representation of
577
+ # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
578
+ #
579
+ # Cluster creation fails with an explanatory error message (the
580
+ # name of the executable that caused the error and the exceeded timeout
581
+ # period) if the executable is not completed at end of the timeout period.
582
+ class NodeInitializationAction
583
+ include Google::Protobuf::MessageExts
584
+ extend Google::Protobuf::MessageExts::ClassMethods
585
+ end
586
+
587
+ # The status of a cluster and its instances.
588
+ # @!attribute [r] state
589
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterStatus::State]
590
+ # Output only. The cluster's state.
591
+ # @!attribute [r] detail
592
+ # @return [String]
593
+ # Output only. Optional details of cluster's state.
594
+ # @!attribute [r] state_start_time
595
+ # @return [Google::Protobuf::Timestamp]
596
+ # Output only. Time when this state was entered (see JSON representation of
597
+ # [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)).
598
+ # @!attribute [r] substate
599
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterStatus::Substate]
600
+ # Output only. Additional state information that includes
601
+ # status reported by the agent.
602
+ class ClusterStatus
603
+ include Google::Protobuf::MessageExts
604
+ extend Google::Protobuf::MessageExts::ClassMethods
605
+
606
+ # The cluster state.
607
+ module State
608
+ # The cluster state is unknown.
609
+ UNKNOWN = 0
610
+
611
+ # The cluster is being created and set up. It is not ready for use.
612
+ CREATING = 1
613
+
614
+ # The cluster is currently running and healthy. It is ready for use.
615
+ RUNNING = 2
616
+
617
+ # The cluster encountered an error. It is not ready for use.
618
+ ERROR = 3
619
+
620
+ # The cluster is being deleted. It cannot be used.
621
+ DELETING = 4
622
+
623
+ # The cluster is being updated. It continues to accept and process jobs.
624
+ UPDATING = 5
625
+
626
+ # The cluster is being stopped. It cannot be used.
627
+ STOPPING = 6
628
+
629
+ # The cluster is currently stopped. It is not ready for use.
630
+ STOPPED = 7
631
+
632
+ # The cluster is being started. It is not ready for use.
633
+ STARTING = 8
634
+ end
635
+
636
+ # The cluster substate.
637
+ module Substate
638
+ # The cluster substate is unknown.
639
+ UNSPECIFIED = 0
640
+
641
+ # The cluster is known to be in an unhealthy state
642
+ # (for example, critical daemons are not running or HDFS capacity is
643
+ # exhausted).
644
+ #
645
+ # Applies to RUNNING state.
646
+ UNHEALTHY = 1
647
+
648
+ # The agent-reported status is out of date (may occur if
649
+ # Dataproc loses communication with Agent).
650
+ #
651
+ # Applies to RUNNING state.
652
+ STALE_STATUS = 2
653
+ end
654
+ end
655
+
656
+ # Specifies the selection and config of software inside the cluster.
657
+ # @!attribute [rw] image_version
658
+ # @return [String]
659
+ # Optional. The version of software inside the cluster. It must be one of the
660
+ # supported [Dataproc
661
+ # Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_cloud_dataproc_versions),
662
+ # such as "1.2" (including a subminor version, such as "1.2.29"), or the
663
+ # ["preview"
664
+ # version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
665
+ # If unspecified, it defaults to the latest Debian version.
666
+ # @!attribute [rw] properties
667
+ # @return [Google::Protobuf::Map{String => String}]
668
+ # Optional. The properties to set on daemon config files.
669
+ #
670
+ # Property keys are specified in `prefix:property` format, for example
671
+ # `core:hadoop.tmp.dir`. The following are supported prefixes
672
+ # and their mappings:
673
+ #
674
+ # * capacity-scheduler: `capacity-scheduler.xml`
675
+ # * core: `core-site.xml`
676
+ # * distcp: `distcp-default.xml`
677
+ # * hdfs: `hdfs-site.xml`
678
+ # * hive: `hive-site.xml`
679
+ # * mapred: `mapred-site.xml`
680
+ # * pig: `pig.properties`
681
+ # * spark: `spark-defaults.conf`
682
+ # * yarn: `yarn-site.xml`
683
+ #
684
+ # For more information, see [Cluster
685
+ # properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
686
+ # @!attribute [rw] optional_components
687
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::Component>]
688
+ # The set of optional components to activate on the cluster.
689
+ class SoftwareConfig
690
+ include Google::Protobuf::MessageExts
691
+ extend Google::Protobuf::MessageExts::ClassMethods
692
+
693
+ # @!attribute [rw] key
694
+ # @return [String]
695
+ # @!attribute [rw] value
696
+ # @return [String]
697
+ class PropertiesEntry
698
+ include Google::Protobuf::MessageExts
699
+ extend Google::Protobuf::MessageExts::ClassMethods
700
+ end
701
+ end
702
+
703
+ # Contains cluster daemon metrics, such as HDFS and YARN stats.
704
+ #
705
+ # **Beta Feature**: This report is available for testing purposes only. It may
706
+ # be changed before final release.
707
+ # @!attribute [rw] hdfs_metrics
708
+ # @return [Google::Protobuf::Map{String => Integer}]
709
+ # The HDFS metrics.
710
+ # @!attribute [rw] yarn_metrics
711
+ # @return [Google::Protobuf::Map{String => Integer}]
712
+ # The YARN metrics.
713
+ class ClusterMetrics
714
+ include Google::Protobuf::MessageExts
715
+ extend Google::Protobuf::MessageExts::ClassMethods
716
+
717
+ # @!attribute [rw] key
718
+ # @return [String]
719
+ # @!attribute [rw] value
720
+ # @return [Integer]
721
+ class HdfsMetricsEntry
722
+ include Google::Protobuf::MessageExts
723
+ extend Google::Protobuf::MessageExts::ClassMethods
724
+ end
725
+
726
+ # @!attribute [rw] key
727
+ # @return [String]
728
+ # @!attribute [rw] value
729
+ # @return [Integer]
730
+ class YarnMetricsEntry
731
+ include Google::Protobuf::MessageExts
732
+ extend Google::Protobuf::MessageExts::ClassMethods
733
+ end
734
+ end
735
+
736
+ # A request to create a cluster.
737
+ # @!attribute [rw] project_id
738
+ # @return [String]
739
+ # Required. The ID of the Google Cloud Platform project that the cluster
740
+ # belongs to.
741
+ # @!attribute [rw] region
742
+ # @return [String]
743
+ # Required. The Dataproc region in which to handle the request.
744
+ # @!attribute [rw] cluster
745
+ # @return [Google::Cloud::Dataproc::V1beta2::Cluster]
746
+ # Required. The cluster to create.
747
+ # @!attribute [rw] request_id
748
+ # @return [String]
749
+ # Optional. A unique id used to identify the request. If the server
750
+ # receives two {Google::Cloud::Dataproc::V1beta2::CreateClusterRequest CreateClusterRequest} requests with the same
751
+ # id, then the second request will be ignored and the
752
+ # first {Google::Longrunning::Operation google.longrunning.Operation} created and stored in the backend
753
+ # is returned.
754
+ #
755
+ # It is recommended to always set this value to a
756
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
757
+ #
758
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
759
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
760
+ class CreateClusterRequest
761
+ include Google::Protobuf::MessageExts
762
+ extend Google::Protobuf::MessageExts::ClassMethods
763
+ end
764
+
765
+ # A request to update a cluster.
766
+ # @!attribute [rw] project_id
767
+ # @return [String]
768
+ # Required. The ID of the Google Cloud Platform project the
769
+ # cluster belongs to.
770
+ # @!attribute [rw] region
771
+ # @return [String]
772
+ # Required. The Dataproc region in which to handle the request.
773
+ # @!attribute [rw] cluster_name
774
+ # @return [String]
775
+ # Required. The cluster name.
776
+ # @!attribute [rw] cluster
777
+ # @return [Google::Cloud::Dataproc::V1beta2::Cluster]
778
+ # Required. The changes to the cluster.
779
+ # @!attribute [rw] graceful_decommission_timeout
780
+ # @return [Google::Protobuf::Duration]
781
+ # Optional. Timeout for graceful YARN decomissioning. Graceful
782
+ # decommissioning allows removing nodes from the cluster without
783
+ # interrupting jobs in progress. Timeout specifies how long to wait for jobs
784
+ # in progress to finish before forcefully removing nodes (and potentially
785
+ # interrupting jobs). Default timeout is 0 (for forceful decommission), and
786
+ # the maximum allowed timeout is 1 day (see JSON representation of
787
+ # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
788
+ #
789
+ # Only supported on Dataproc image versions 1.2 and higher.
790
+ # @!attribute [rw] update_mask
791
+ # @return [Google::Protobuf::FieldMask]
792
+ # Required. Specifies the path, relative to `Cluster`, of
793
+ # the field to update. For example, to change the number of workers
794
+ # in a cluster to 5, the `update_mask` parameter would be
795
+ # specified as `config.worker_config.num_instances`,
796
+ # and the `PATCH` request body would specify the new value, as follows:
797
+ #
798
+ # {
799
+ # "config":{
800
+ # "workerConfig":{
801
+ # "numInstances":"5"
802
+ # }
803
+ # }
804
+ # }
805
+ #
806
+ # Similarly, to change the number of preemptible workers in a cluster to 5,
807
+ # the `update_mask` parameter would be
808
+ # `config.secondary_worker_config.num_instances`, and the `PATCH` request
809
+ # body would be set as follows:
810
+ #
811
+ # {
812
+ # "config":{
813
+ # "secondaryWorkerConfig":{
814
+ # "numInstances":"5"
815
+ # }
816
+ # }
817
+ # }
818
+ # <strong>Note:</strong> currently only the following fields can be updated:
819
+ #
820
+ # <table>
821
+ # <tr>
822
+ # <td><strong>Mask</strong></td><td><strong>Purpose</strong></td>
823
+ # </tr>
824
+ # <tr>
825
+ # <td>labels</td><td>Updates labels</td>
826
+ # </tr>
827
+ # <tr>
828
+ # <td>config.worker_config.num_instances</td><td>Resize primary worker
829
+ # group</td>
830
+ # </tr>
831
+ # <tr>
832
+ # <td>config.secondary_worker_config.num_instances</td><td>Resize secondary
833
+ # worker group</td>
834
+ # </tr>
835
+ # <tr>
836
+ # <td>config.lifecycle_config.auto_delete_ttl</td><td>Reset MAX TTL
837
+ # duration</td>
838
+ # </tr>
839
+ # <tr>
840
+ # <td>config.lifecycle_config.auto_delete_time</td><td>Update MAX TTL
841
+ # deletion timestamp</td>
842
+ # </tr>
843
+ # <tr>
844
+ # <td>config.lifecycle_config.idle_delete_ttl</td><td>Update Idle TTL
845
+ # duration</td>
846
+ # </tr>
847
+ # <tr>
848
+ # <td>config.autoscaling_config.policy_uri</td><td>Use, stop using, or change
849
+ # autoscaling policies</td>
850
+ # </tr>
851
+ # </table>
852
+ # @!attribute [rw] request_id
853
+ # @return [String]
854
+ # Optional. A unique id used to identify the request. If the server
855
+ # receives two {Google::Cloud::Dataproc::V1beta2::UpdateClusterRequest UpdateClusterRequest} requests with the same
856
+ # id, then the second request will be ignored and the
857
+ # first {Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
858
+ # backend is returned.
859
+ #
860
+ # It is recommended to always set this value to a
861
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
862
+ #
863
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
864
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
865
+ class UpdateClusterRequest
866
+ include Google::Protobuf::MessageExts
867
+ extend Google::Protobuf::MessageExts::ClassMethods
868
+ end
869
+
870
+ # A request to delete a cluster.
871
+ # @!attribute [rw] project_id
872
+ # @return [String]
873
+ # Required. The ID of the Google Cloud Platform project that the cluster
874
+ # belongs to.
875
+ # @!attribute [rw] region
876
+ # @return [String]
877
+ # Required. The Dataproc region in which to handle the request.
878
+ # @!attribute [rw] cluster_name
879
+ # @return [String]
880
+ # Required. The cluster name.
881
+ # @!attribute [rw] cluster_uuid
882
+ # @return [String]
883
+ # Optional. Specifying the `cluster_uuid` means the RPC should fail
884
+ # (with error NOT_FOUND) if cluster with specified UUID does not exist.
885
+ # @!attribute [rw] request_id
886
+ # @return [String]
887
+ # Optional. A unique id used to identify the request. If the server
888
+ # receives two {Google::Cloud::Dataproc::V1beta2::DeleteClusterRequest DeleteClusterRequest} requests with the same
889
+ # id, then the second request will be ignored and the
890
+ # first {Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
891
+ # backend is returned.
892
+ #
893
+ # It is recommended to always set this value to a
894
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
895
+ #
896
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
897
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
898
+ class DeleteClusterRequest
899
+ include Google::Protobuf::MessageExts
900
+ extend Google::Protobuf::MessageExts::ClassMethods
901
+ end
902
+
903
+ # Request to get the resource representation for a cluster in a project.
904
+ # @!attribute [rw] project_id
905
+ # @return [String]
906
+ # Required. The ID of the Google Cloud Platform project that the cluster
907
+ # belongs to.
908
+ # @!attribute [rw] region
909
+ # @return [String]
910
+ # Required. The Dataproc region in which to handle the request.
911
+ # @!attribute [rw] cluster_name
912
+ # @return [String]
913
+ # Required. The cluster name.
914
+ class GetClusterRequest
915
+ include Google::Protobuf::MessageExts
916
+ extend Google::Protobuf::MessageExts::ClassMethods
917
+ end
918
+
919
+ # A request to list the clusters in a project.
920
+ # @!attribute [rw] project_id
921
+ # @return [String]
922
+ # Required. The ID of the Google Cloud Platform project that the cluster
923
+ # belongs to.
924
+ # @!attribute [rw] region
925
+ # @return [String]
926
+ # Required. The Dataproc region in which to handle the request.
927
+ # @!attribute [rw] filter
928
+ # @return [String]
929
+ # Optional. A filter constraining the clusters to list. Filters are
930
+ # case-sensitive and have the following syntax:
931
+ #
932
+ # field = value [AND [field = value]] ...
933
+ #
934
+ # where **field** is one of `status.state`, `clusterName`, or `labels.[KEY]`,
935
+ # and `[KEY]` is a label key. **value** can be `*` to match all values.
936
+ # `status.state` can be one of the following: `ACTIVE`, `INACTIVE`,
937
+ # `CREATING`, `RUNNING`, `ERROR`, `DELETING`, or `UPDATING`. `ACTIVE`
938
+ # contains the `CREATING`, `UPDATING`, and `RUNNING` states. `INACTIVE`
939
+ # contains the `DELETING` and `ERROR` states.
940
+ # `clusterName` is the name of the cluster provided at creation time.
941
+ # Only the logical `AND` operator is supported; space-separated items are
942
+ # treated as having an implicit `AND` operator.
943
+ #
944
+ # Example filter:
945
+ #
946
+ # status.state = ACTIVE AND clusterName = mycluster
947
+ # AND labels.env = staging AND labels.starred = *
948
+ # @!attribute [rw] page_size
949
+ # @return [Integer]
950
+ # Optional. The standard List page size.
951
+ # @!attribute [rw] page_token
952
+ # @return [String]
953
+ # Optional. The standard List page token.
954
+ class ListClustersRequest
955
+ include Google::Protobuf::MessageExts
956
+ extend Google::Protobuf::MessageExts::ClassMethods
957
+ end
958
+
959
+ # The list of all clusters in a project.
960
+ # @!attribute [r] clusters
961
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::Cluster>]
962
+ # Output only. The clusters in the project.
963
+ # @!attribute [r] next_page_token
964
+ # @return [String]
965
+ # Output only. This token is included in the response if there are more
966
+ # results to fetch. To fetch additional results, provide this value as the
967
+ # `page_token` in a subsequent <code>ListClustersRequest</code>.
968
+ class ListClustersResponse
969
+ include Google::Protobuf::MessageExts
970
+ extend Google::Protobuf::MessageExts::ClassMethods
971
+ end
972
+
973
+ # A request to collect cluster diagnostic information.
974
+ # @!attribute [rw] project_id
975
+ # @return [String]
976
+ # Required. The ID of the Google Cloud Platform project that the cluster
977
+ # belongs to.
978
+ # @!attribute [rw] region
979
+ # @return [String]
980
+ # Required. The Dataproc region in which to handle the request.
981
+ # @!attribute [rw] cluster_name
982
+ # @return [String]
983
+ # Required. The cluster name.
984
+ class DiagnoseClusterRequest
985
+ include Google::Protobuf::MessageExts
986
+ extend Google::Protobuf::MessageExts::ClassMethods
987
+ end
988
+
989
+ # The location of diagnostic output.
990
+ # @!attribute [r] output_uri
991
+ # @return [String]
992
+ # Output only. The Cloud Storage URI of the diagnostic output.
993
+ # The output report is a plain text file with a summary of collected
994
+ # diagnostics.
995
+ class DiagnoseClusterResults
996
+ include Google::Protobuf::MessageExts
997
+ extend Google::Protobuf::MessageExts::ClassMethods
998
+ end
999
+
1000
+ # Reservation Affinity for consuming Zonal reservation.
1001
+ # @!attribute [rw] consume_reservation_type
1002
+ # @return [Google::Cloud::Dataproc::V1beta2::ReservationAffinity::Type]
1003
+ # Optional. Type of reservation to consume
1004
+ # @!attribute [rw] key
1005
+ # @return [String]
1006
+ # Optional. Corresponds to the label key of reservation resource.
1007
+ # @!attribute [rw] values
1008
+ # @return [Array<String>]
1009
+ # Optional. Corresponds to the label values of reservation resource.
1010
+ class ReservationAffinity
1011
+ include Google::Protobuf::MessageExts
1012
+ extend Google::Protobuf::MessageExts::ClassMethods
1013
+
1014
+ # Indicates whether to consume capacity from an reservation or not.
1015
+ module Type
1016
+ TYPE_UNSPECIFIED = 0
1017
+
1018
+ # Do not consume from any allocated capacity.
1019
+ NO_RESERVATION = 1
1020
+
1021
+ # Consume any reservation available.
1022
+ ANY_RESERVATION = 2
1023
+
1024
+ # Must consume from a specific reservation. Must specify key value fields
1025
+ # for specifying the reservations.
1026
+ SPECIFIC_RESERVATION = 3
1027
+ end
1028
+ end
1029
+ end
1030
+ end
1031
+ end
1032
+ end