google-cloud-dataproc 0.10.0 → 1.0.0

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