google-cloud-dataproc 0.3.1 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google/cloud/dataproc.rb +53 -0
- data/lib/google/cloud/dataproc/v1/cluster_controller_client.rb +14 -16
- data/lib/google/cloud/dataproc/v1/clusters_pb.rb +2 -0
- data/lib/google/cloud/dataproc/v1/clusters_services_pb.rb +1 -1
- data/lib/google/cloud/dataproc/v1/doc/google/cloud/dataproc/v1/clusters.rb +29 -26
- data/lib/google/cloud/dataproc/v1/doc/google/cloud/dataproc/v1/jobs.rb +8 -7
- data/lib/google/cloud/dataproc/v1/doc/google/cloud/dataproc/v1/workflow_templates.rb +6 -6
- data/lib/google/cloud/dataproc/v1/job_controller_client.rb +4 -3
- data/lib/google/cloud/dataproc/v1/jobs_services_pb.rb +1 -1
- data/lib/google/cloud/dataproc/v1/shared_pb.rb +26 -0
- data/lib/google/cloud/dataproc/v1/workflow_template_service_client.rb +3 -3
- data/lib/google/cloud/dataproc/v1/workflow_templates_services_pb.rb +2 -3
- data/lib/google/cloud/dataproc/v1beta2.rb +58 -0
- data/lib/google/cloud/dataproc/v1beta2/autoscaling_policies_pb.rb +81 -0
- data/lib/google/cloud/dataproc/v1beta2/autoscaling_policies_services_pb.rb +60 -0
- data/lib/google/cloud/dataproc/v1beta2/autoscaling_policy_service_client.rb +457 -0
- data/lib/google/cloud/dataproc/v1beta2/autoscaling_policy_service_client_config.json +51 -0
- data/lib/google/cloud/dataproc/v1beta2/cluster_controller_client.rb +18 -16
- data/lib/google/cloud/dataproc/v1beta2/clusters_pb.rb +48 -0
- data/lib/google/cloud/dataproc/v1beta2/clusters_services_pb.rb +1 -1
- data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/autoscaling_policies.rb +202 -0
- data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/clusters.rb +172 -28
- data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/jobs.rb +44 -9
- data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/workflow_templates.rb +8 -6
- data/lib/google/cloud/dataproc/v1beta2/job_controller_client.rb +5 -5
- data/lib/google/cloud/dataproc/v1beta2/jobs_pb.rb +10 -0
- data/lib/google/cloud/dataproc/v1beta2/jobs_services_pb.rb +1 -1
- data/lib/google/cloud/dataproc/v1beta2/shared_pb.rb +12 -0
- data/lib/google/cloud/dataproc/v1beta2/workflow_template_service_client.rb +3 -3
- data/lib/google/cloud/dataproc/v1beta2/workflow_templates_services_pb.rb +2 -3
- data/lib/google/cloud/dataproc/version.rb +22 -0
- metadata +9 -2
@@ -0,0 +1,51 @@
|
|
1
|
+
{
|
2
|
+
"interfaces": {
|
3
|
+
"google.cloud.dataproc.v1beta2.AutoscalingPolicyService": {
|
4
|
+
"retry_codes": {
|
5
|
+
"idempotent": [
|
6
|
+
"DEADLINE_EXCEEDED",
|
7
|
+
"UNAVAILABLE"
|
8
|
+
],
|
9
|
+
"non_idempotent": []
|
10
|
+
},
|
11
|
+
"retry_params": {
|
12
|
+
"default": {
|
13
|
+
"initial_retry_delay_millis": 100,
|
14
|
+
"retry_delay_multiplier": 1.3,
|
15
|
+
"max_retry_delay_millis": 60000,
|
16
|
+
"initial_rpc_timeout_millis": 20000,
|
17
|
+
"rpc_timeout_multiplier": 1.0,
|
18
|
+
"max_rpc_timeout_millis": 20000,
|
19
|
+
"total_timeout_millis": 600000
|
20
|
+
}
|
21
|
+
},
|
22
|
+
"methods": {
|
23
|
+
"CreateAutoscalingPolicy": {
|
24
|
+
"timeout_millis": 60000,
|
25
|
+
"retry_codes_name": "non_idempotent",
|
26
|
+
"retry_params_name": "default"
|
27
|
+
},
|
28
|
+
"UpdateAutoscalingPolicy": {
|
29
|
+
"timeout_millis": 60000,
|
30
|
+
"retry_codes_name": "idempotent",
|
31
|
+
"retry_params_name": "default"
|
32
|
+
},
|
33
|
+
"GetAutoscalingPolicy": {
|
34
|
+
"timeout_millis": 60000,
|
35
|
+
"retry_codes_name": "idempotent",
|
36
|
+
"retry_params_name": "default"
|
37
|
+
},
|
38
|
+
"ListAutoscalingPolicies": {
|
39
|
+
"timeout_millis": 60000,
|
40
|
+
"retry_codes_name": "idempotent",
|
41
|
+
"retry_params_name": "default"
|
42
|
+
},
|
43
|
+
"DeleteAutoscalingPolicy": {
|
44
|
+
"timeout_millis": 60000,
|
45
|
+
"retry_codes_name": "non_idempotent",
|
46
|
+
"retry_params_name": "default"
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
}
|
@@ -29,6 +29,7 @@ require "google/longrunning/operations_client"
|
|
29
29
|
|
30
30
|
require "google/cloud/dataproc/v1beta2/clusters_pb"
|
31
31
|
require "google/cloud/dataproc/v1beta2/credentials"
|
32
|
+
require "google/cloud/dataproc/version"
|
32
33
|
|
33
34
|
module Google
|
34
35
|
module Cloud
|
@@ -146,7 +147,7 @@ module Google
|
|
146
147
|
updater_proc = credentials.updater_proc
|
147
148
|
end
|
148
149
|
|
149
|
-
package_version =
|
150
|
+
package_version = Google::Cloud::Dataproc::VERSION
|
150
151
|
|
151
152
|
google_api_client = "gl-ruby/#{RUBY_VERSION}"
|
152
153
|
google_api_client << " #{lib_name}/#{lib_version}" if lib_name
|
@@ -234,11 +235,10 @@ module Google
|
|
234
235
|
# can also be provided.
|
235
236
|
# @param request_id [String]
|
236
237
|
# Optional. A unique id used to identify the request. If the server
|
237
|
-
# receives two
|
238
|
-
#
|
239
|
-
#
|
240
|
-
#
|
241
|
-
# and stored in the backend is returned.
|
238
|
+
# receives two {Google::Cloud::Dataproc::V1beta2::CreateClusterRequest CreateClusterRequest} requests with the same
|
239
|
+
# id, then the second request will be ignored and the
|
240
|
+
# first {Google::Longrunning::Operation} created and stored in the backend
|
241
|
+
# is returned.
|
242
242
|
#
|
243
243
|
# It is recommended to always set this value to a
|
244
244
|
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
@@ -384,6 +384,10 @@ module Google
|
|
384
384
|
# <td>config.lifecycle_config.idle_delete_ttl</td><td>Update Idle TTL
|
385
385
|
# duration</td>
|
386
386
|
# </tr>
|
387
|
+
# <tr>
|
388
|
+
# <td>config.autoscaling_config.policy_uri</td><td>Use, stop using, or change
|
389
|
+
# autoscaling policies</td>
|
390
|
+
# </tr>
|
387
391
|
# </table>
|
388
392
|
# A hash of the same form as `Google::Protobuf::FieldMask`
|
389
393
|
# can also be provided.
|
@@ -400,11 +404,10 @@ module Google
|
|
400
404
|
# can also be provided.
|
401
405
|
# @param request_id [String]
|
402
406
|
# Optional. A unique id used to identify the request. If the server
|
403
|
-
# receives two
|
404
|
-
#
|
405
|
-
#
|
406
|
-
#
|
407
|
-
# and stored in the backend is returned.
|
407
|
+
# receives two {Google::Cloud::Dataproc::V1beta2::UpdateClusterRequest UpdateClusterRequest} requests with the same
|
408
|
+
# id, then the second request will be ignored and the
|
409
|
+
# first {Google::Longrunning::Operation} created and stored in the
|
410
|
+
# backend is returned.
|
408
411
|
#
|
409
412
|
# It is recommended to always set this value to a
|
410
413
|
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
@@ -507,11 +510,10 @@ module Google
|
|
507
510
|
# (with error NOT_FOUND) if cluster with specified UUID does not exist.
|
508
511
|
# @param request_id [String]
|
509
512
|
# Optional. A unique id used to identify the request. If the server
|
510
|
-
# receives two
|
511
|
-
#
|
512
|
-
#
|
513
|
-
#
|
514
|
-
# and stored in the backend is returned.
|
513
|
+
# receives two {Google::Cloud::Dataproc::V1beta2::DeleteClusterRequest DeleteClusterRequest} requests with the same
|
514
|
+
# id, then the second request will be ignored and the
|
515
|
+
# first {Google::Longrunning::Operation} created and stored in the
|
516
|
+
# backend is returned.
|
515
517
|
#
|
516
518
|
# It is recommended to always set this value to a
|
517
519
|
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
@@ -32,6 +32,16 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
32
32
|
optional :lifecycle_config, :message, 14, "google.cloud.dataproc.v1beta2.LifecycleConfig"
|
33
33
|
repeated :initialization_actions, :message, 11, "google.cloud.dataproc.v1beta2.NodeInitializationAction"
|
34
34
|
optional :encryption_config, :message, 15, "google.cloud.dataproc.v1beta2.EncryptionConfig"
|
35
|
+
optional :autoscaling_config, :message, 16, "google.cloud.dataproc.v1beta2.AutoscalingConfig"
|
36
|
+
optional :endpoint_config, :message, 17, "google.cloud.dataproc.v1beta2.EndpointConfig"
|
37
|
+
optional :security_config, :message, 18, "google.cloud.dataproc.v1beta2.SecurityConfig"
|
38
|
+
end
|
39
|
+
add_message "google.cloud.dataproc.v1beta2.EndpointConfig" do
|
40
|
+
map :http_ports, :string, :string, 1
|
41
|
+
optional :enable_http_port_access, :bool, 2
|
42
|
+
end
|
43
|
+
add_message "google.cloud.dataproc.v1beta2.AutoscalingConfig" do
|
44
|
+
optional :policy_uri, :string, 1
|
35
45
|
end
|
36
46
|
add_message "google.cloud.dataproc.v1beta2.EncryptionConfig" do
|
37
47
|
optional :gce_pd_kms_key_name, :string, 1
|
@@ -45,6 +55,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
45
55
|
repeated :service_account_scopes, :string, 3
|
46
56
|
repeated :tags, :string, 4
|
47
57
|
map :metadata, :string, :string, 5
|
58
|
+
optional :reservation_affinity, :message, 11, "google.cloud.dataproc.v1beta2.ReservationAffinity"
|
48
59
|
end
|
49
60
|
add_message "google.cloud.dataproc.v1beta2.InstanceGroupConfig" do
|
50
61
|
optional :num_instances, :int32, 1
|
@@ -77,6 +88,25 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
77
88
|
optional :auto_delete_ttl, :message, 3, "google.protobuf.Duration"
|
78
89
|
end
|
79
90
|
end
|
91
|
+
add_message "google.cloud.dataproc.v1beta2.SecurityConfig" do
|
92
|
+
optional :kerberos_config, :message, 1, "google.cloud.dataproc.v1beta2.KerberosConfig"
|
93
|
+
end
|
94
|
+
add_message "google.cloud.dataproc.v1beta2.KerberosConfig" do
|
95
|
+
optional :enable_kerberos, :bool, 1
|
96
|
+
optional :root_principal_password_uri, :string, 2
|
97
|
+
optional :kms_key_uri, :string, 3
|
98
|
+
optional :keystore_uri, :string, 4
|
99
|
+
optional :truststore_uri, :string, 5
|
100
|
+
optional :keystore_password_uri, :string, 6
|
101
|
+
optional :key_password_uri, :string, 7
|
102
|
+
optional :truststore_password_uri, :string, 8
|
103
|
+
optional :cross_realm_trust_realm, :string, 9
|
104
|
+
optional :cross_realm_trust_kdc, :string, 10
|
105
|
+
optional :cross_realm_trust_admin_server, :string, 11
|
106
|
+
optional :cross_realm_trust_shared_password_uri, :string, 12
|
107
|
+
optional :kdc_db_key_uri, :string, 13
|
108
|
+
optional :tgt_lifetime_hours, :int32, 14
|
109
|
+
end
|
80
110
|
add_message "google.cloud.dataproc.v1beta2.NodeInitializationAction" do
|
81
111
|
optional :executable_file, :string, 1
|
82
112
|
optional :execution_timeout, :message, 2, "google.protobuf.Duration"
|
@@ -103,6 +133,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
103
133
|
add_message "google.cloud.dataproc.v1beta2.SoftwareConfig" do
|
104
134
|
optional :image_version, :string, 1
|
105
135
|
map :properties, :string, :string, 2
|
136
|
+
repeated :optional_components, :enum, 3, "google.cloud.dataproc.v1beta2.Component"
|
106
137
|
end
|
107
138
|
add_message "google.cloud.dataproc.v1beta2.ClusterMetrics" do
|
108
139
|
map :hdfs_metrics, :string, :int64, 1
|
@@ -154,6 +185,17 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
154
185
|
add_message "google.cloud.dataproc.v1beta2.DiagnoseClusterResults" do
|
155
186
|
optional :output_uri, :string, 1
|
156
187
|
end
|
188
|
+
add_message "google.cloud.dataproc.v1beta2.ReservationAffinity" do
|
189
|
+
optional :consume_reservation_type, :enum, 1, "google.cloud.dataproc.v1beta2.ReservationAffinity.Type"
|
190
|
+
optional :key, :string, 2
|
191
|
+
repeated :values, :string, 3
|
192
|
+
end
|
193
|
+
add_enum "google.cloud.dataproc.v1beta2.ReservationAffinity.Type" do
|
194
|
+
value :TYPE_UNSPECIFIED, 0
|
195
|
+
value :NO_RESERVATION, 1
|
196
|
+
value :ANY_RESERVATION, 2
|
197
|
+
value :SPECIFIC_RESERVATION, 3
|
198
|
+
end
|
157
199
|
end
|
158
200
|
|
159
201
|
module Google
|
@@ -162,6 +204,8 @@ module Google
|
|
162
204
|
module V1beta2
|
163
205
|
Cluster = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.Cluster").msgclass
|
164
206
|
ClusterConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.ClusterConfig").msgclass
|
207
|
+
EndpointConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.EndpointConfig").msgclass
|
208
|
+
AutoscalingConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.AutoscalingConfig").msgclass
|
165
209
|
EncryptionConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.EncryptionConfig").msgclass
|
166
210
|
GceClusterConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.GceClusterConfig").msgclass
|
167
211
|
InstanceGroupConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.InstanceGroupConfig").msgclass
|
@@ -169,6 +213,8 @@ module Google
|
|
169
213
|
AcceleratorConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.AcceleratorConfig").msgclass
|
170
214
|
DiskConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.DiskConfig").msgclass
|
171
215
|
LifecycleConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.LifecycleConfig").msgclass
|
216
|
+
SecurityConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.SecurityConfig").msgclass
|
217
|
+
KerberosConfig = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.KerberosConfig").msgclass
|
172
218
|
NodeInitializationAction = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.NodeInitializationAction").msgclass
|
173
219
|
ClusterStatus = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.ClusterStatus").msgclass
|
174
220
|
ClusterStatus::State = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.ClusterStatus.State").enummodule
|
@@ -183,6 +229,8 @@ module Google
|
|
183
229
|
ListClustersResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.ListClustersResponse").msgclass
|
184
230
|
DiagnoseClusterRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.DiagnoseClusterRequest").msgclass
|
185
231
|
DiagnoseClusterResults = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.DiagnoseClusterResults").msgclass
|
232
|
+
ReservationAffinity = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.ReservationAffinity").msgclass
|
233
|
+
ReservationAffinity::Type = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataproc.v1beta2.ReservationAffinity.Type").enummodule
|
186
234
|
end
|
187
235
|
end
|
188
236
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
2
|
# Source: google/cloud/dataproc/v1beta2/clusters.proto for package 'google.cloud.dataproc.v1beta2'
|
3
3
|
# Original file comments:
|
4
|
-
# Copyright
|
4
|
+
# Copyright 2019 Google LLC.
|
5
5
|
#
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
7
|
# you may not use this file except in compliance with the License.
|
data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/autoscaling_policies.rb
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
# Copyright 2019 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 V1beta2
|
20
|
+
# Describes an autoscaling policy for Dataproc cluster autoscaler.
|
21
|
+
# @!attribute [rw] id
|
22
|
+
# @return [String]
|
23
|
+
# Required. The policy id.
|
24
|
+
#
|
25
|
+
# The id must contain only letters (a-z, A-Z), numbers (0-9),
|
26
|
+
# underscores (_), and hyphens (-). Cannot begin or end with underscore
|
27
|
+
# or hyphen. Must consist of between 3 and 50 characters.
|
28
|
+
# @!attribute [rw] name
|
29
|
+
# @return [String]
|
30
|
+
# Output only. The "resource name" of the policy, as described
|
31
|
+
# in https://cloud.google.com/apis/design/resource_names of the form
|
32
|
+
# `projects/{project_id}/regions/{region}/autoscalingPolicies/{policy_id}`.
|
33
|
+
# @!attribute [rw] basic_algorithm
|
34
|
+
# @return [Google::Cloud::Dataproc::V1beta2::BasicAutoscalingAlgorithm]
|
35
|
+
# @!attribute [rw] worker_config
|
36
|
+
# @return [Google::Cloud::Dataproc::V1beta2::InstanceGroupAutoscalingPolicyConfig]
|
37
|
+
# Required. Describes how the autoscaler will operate for primary workers.
|
38
|
+
# @!attribute [rw] secondary_worker_config
|
39
|
+
# @return [Google::Cloud::Dataproc::V1beta2::InstanceGroupAutoscalingPolicyConfig]
|
40
|
+
# Optional. Describes how the autoscaler will operate for secondary workers.
|
41
|
+
class AutoscalingPolicy; end
|
42
|
+
|
43
|
+
# Basic algorithm for autoscaling.
|
44
|
+
# @!attribute [rw] yarn_config
|
45
|
+
# @return [Google::Cloud::Dataproc::V1beta2::BasicYarnAutoscalingConfig]
|
46
|
+
# Required. YARN autoscaling configuration.
|
47
|
+
# @!attribute [rw] cooldown_period
|
48
|
+
# @return [Google::Protobuf::Duration]
|
49
|
+
# Optional. Duration between scaling events. A scaling period starts after
|
50
|
+
# the update operation from the previous event has completed.
|
51
|
+
#
|
52
|
+
# Bounds: [2m, 1d]. Default: 2m.
|
53
|
+
class BasicAutoscalingAlgorithm; end
|
54
|
+
|
55
|
+
# Basic autoscaling configurations for YARN.
|
56
|
+
# @!attribute [rw] graceful_decommission_timeout
|
57
|
+
# @return [Google::Protobuf::Duration]
|
58
|
+
# Required. Timeout for YARN graceful decommissioning of Node Managers.
|
59
|
+
# Specifies the duration to wait for jobs to complete before forcefully
|
60
|
+
# removing workers (and potentially interrupting jobs). Only applicable to
|
61
|
+
# downscaling operations.
|
62
|
+
#
|
63
|
+
# Bounds: [0s, 1d].
|
64
|
+
# @!attribute [rw] scale_up_factor
|
65
|
+
# @return [Float]
|
66
|
+
# Required. Fraction of average pending memory in the last cooldown period
|
67
|
+
# for which to add workers. A scale-up factor of 1.0 will result in scaling
|
68
|
+
# up so that there is no pending memory remaining after the update (more
|
69
|
+
# aggressive scaling). A scale-up factor closer to 0 will result in a smaller
|
70
|
+
# magnitude of scaling up (less aggressive scaling).
|
71
|
+
#
|
72
|
+
# Bounds: [0.0, 1.0].
|
73
|
+
# @!attribute [rw] scale_down_factor
|
74
|
+
# @return [Float]
|
75
|
+
# Required. Fraction of average pending memory in the last cooldown period
|
76
|
+
# for which to remove workers. A scale-down factor of 1 will result in
|
77
|
+
# scaling down so that there is no available memory remaining after the
|
78
|
+
# update (more aggressive scaling). A scale-down factor of 0 disables
|
79
|
+
# removing workers, which can be beneficial for autoscaling a single job.
|
80
|
+
#
|
81
|
+
# Bounds: [0.0, 1.0].
|
82
|
+
# @!attribute [rw] scale_up_min_worker_fraction
|
83
|
+
# @return [Float]
|
84
|
+
# Optional. Minimum scale-up threshold as a fraction of total cluster size
|
85
|
+
# before scaling occurs. For example, in a 20-worker cluster, a threshold of
|
86
|
+
# 0.1 means the autoscaler must recommend at least a 2-worker scale-up for
|
87
|
+
# the cluster to scale. A threshold of 0 means the autoscaler will scale up
|
88
|
+
# on any recommended change.
|
89
|
+
#
|
90
|
+
# Bounds: [0.0, 1.0]. Default: 0.0.
|
91
|
+
# @!attribute [rw] scale_down_min_worker_fraction
|
92
|
+
# @return [Float]
|
93
|
+
# Optional. Minimum scale-down threshold as a fraction of total cluster size
|
94
|
+
# before scaling occurs. For example, in a 20-worker cluster, a threshold of
|
95
|
+
# 0.1 means the autoscaler must recommend at least a 2 worker scale-down for
|
96
|
+
# the cluster to scale. A threshold of 0 means the autoscaler will scale down
|
97
|
+
# on any recommended change.
|
98
|
+
#
|
99
|
+
# Bounds: [0.0, 1.0]. Default: 0.0.
|
100
|
+
class BasicYarnAutoscalingConfig; end
|
101
|
+
|
102
|
+
# Configuration for the size bounds of an instance group, including its
|
103
|
+
# proportional size to other groups.
|
104
|
+
# @!attribute [rw] min_instances
|
105
|
+
# @return [Integer]
|
106
|
+
# Optional. Minimum number of instances for this group.
|
107
|
+
#
|
108
|
+
# Primary workers - Bounds: [2, max_instances]. Default: 2.
|
109
|
+
# Secondary workers - Bounds: [0, max_instances]. Default: 0.
|
110
|
+
# @!attribute [rw] max_instances
|
111
|
+
# @return [Integer]
|
112
|
+
# Optional. Maximum number of instances for this group. Required for primary
|
113
|
+
# workers. Note that by default, clusters will not use secondary workers.
|
114
|
+
# Required for secondary workers if the minimum secondary instances is set.
|
115
|
+
#
|
116
|
+
# Primary workers - Bounds: [min_instances, ). Required.
|
117
|
+
# Secondary workers - Bounds: [min_instances, ). Default: 0.
|
118
|
+
# @!attribute [rw] weight
|
119
|
+
# @return [Integer]
|
120
|
+
# Optional. Weight for the instance group, which is used to determine the
|
121
|
+
# fraction of total workers in the cluster from this instance group.
|
122
|
+
# For example, if primary workers have weight 2, and secondary workers have
|
123
|
+
# weight 1, the cluster will have approximately 2 primary workers for each
|
124
|
+
# secondary worker.
|
125
|
+
#
|
126
|
+
# The cluster may not reach the specified balance if constrained
|
127
|
+
# by min/max bounds or other autoscaling settings. For example, if
|
128
|
+
# `max_instances` for secondary workers is 0, then only primary workers will
|
129
|
+
# be added. The cluster can also be out of balance when created.
|
130
|
+
#
|
131
|
+
# If weight is not set on any instance group, the cluster will default to
|
132
|
+
# equal weight for all groups: the cluster will attempt to maintain an equal
|
133
|
+
# number of workers in each group within the configured size bounds for each
|
134
|
+
# group. If weight is set for one group only, the cluster will default to
|
135
|
+
# zero weight on the unset group. For example if weight is set only on
|
136
|
+
# primary workers, the cluster will use primary workers only and no
|
137
|
+
# secondary workers.
|
138
|
+
class InstanceGroupAutoscalingPolicyConfig; end
|
139
|
+
|
140
|
+
# A request to create an autoscaling policy.
|
141
|
+
# @!attribute [rw] parent
|
142
|
+
# @return [String]
|
143
|
+
# Required. The "resource name" of the region, as described
|
144
|
+
# in https://cloud.google.com/apis/design/resource_names of the form
|
145
|
+
# `projects/{project_id}/regions/{region}`.
|
146
|
+
# @!attribute [rw] policy
|
147
|
+
# @return [Google::Cloud::Dataproc::V1beta2::AutoscalingPolicy]
|
148
|
+
# The autoscaling policy to create.
|
149
|
+
class CreateAutoscalingPolicyRequest; end
|
150
|
+
|
151
|
+
# A request to fetch an autoscaling policy.
|
152
|
+
# @!attribute [rw] name
|
153
|
+
# @return [String]
|
154
|
+
# Required. The "resource name" of the autoscaling policy, as described
|
155
|
+
# in https://cloud.google.com/apis/design/resource_names of the form
|
156
|
+
# `projects/{project_id}/regions/{region}/autoscalingPolicies/{policy_id}`.
|
157
|
+
class GetAutoscalingPolicyRequest; end
|
158
|
+
|
159
|
+
# A request to update an autoscaling policy.
|
160
|
+
# @!attribute [rw] policy
|
161
|
+
# @return [Google::Cloud::Dataproc::V1beta2::AutoscalingPolicy]
|
162
|
+
# Required. The updated autoscaling policy.
|
163
|
+
class UpdateAutoscalingPolicyRequest; end
|
164
|
+
|
165
|
+
# A request to delete an autoscaling policy.
|
166
|
+
#
|
167
|
+
# Autoscaling policies in use by one or more clusters will not be deleted.
|
168
|
+
# @!attribute [rw] name
|
169
|
+
# @return [String]
|
170
|
+
# Required. The "resource name" of the autoscaling policy, as described
|
171
|
+
# in https://cloud.google.com/apis/design/resource_names of the form
|
172
|
+
# `projects/{project_id}/regions/{region}/autoscalingPolicies/{policy_id}`.
|
173
|
+
class DeleteAutoscalingPolicyRequest; end
|
174
|
+
|
175
|
+
# A request to list autoscaling policies in a project.
|
176
|
+
# @!attribute [rw] parent
|
177
|
+
# @return [String]
|
178
|
+
# Required. The "resource name" of the region, as described
|
179
|
+
# in https://cloud.google.com/apis/design/resource_names of the form
|
180
|
+
# `projects/{project_id}/regions/{region}`
|
181
|
+
# @!attribute [rw] page_size
|
182
|
+
# @return [Integer]
|
183
|
+
# Optional. The maximum number of results to return in each response.
|
184
|
+
# @!attribute [rw] page_token
|
185
|
+
# @return [String]
|
186
|
+
# Optional. The page token, returned by a previous call, to request the
|
187
|
+
# next page of results.
|
188
|
+
class ListAutoscalingPoliciesRequest; end
|
189
|
+
|
190
|
+
# A response to a request to list autoscaling policies in a project.
|
191
|
+
# @!attribute [rw] policies
|
192
|
+
# @return [Array<Google::Cloud::Dataproc::V1beta2::AutoscalingPolicy>]
|
193
|
+
# Output only. Autoscaling policies list.
|
194
|
+
# @!attribute [rw] next_page_token
|
195
|
+
# @return [String]
|
196
|
+
# Output only. This token is included in the response if there are more
|
197
|
+
# results to fetch.
|
198
|
+
class ListAutoscalingPoliciesResponse; end
|
199
|
+
end
|
200
|
+
end
|
201
|
+
end
|
202
|
+
end
|
@@ -60,15 +60,18 @@ module Google
|
|
60
60
|
# The cluster config.
|
61
61
|
# @!attribute [rw] config_bucket
|
62
62
|
# @return [String]
|
63
|
-
# Optional. A Cloud Storage
|
64
|
-
#
|
65
|
-
#
|
63
|
+
# Optional. A Google 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,
|
66
67
|
# ASIA, or EU) for your cluster's staging bucket according to the Google
|
67
|
-
# Compute Engine zone where your cluster is deployed, and then
|
68
|
-
# and manage this project-level, per-location bucket
|
68
|
+
# Compute Engine zone where your cluster is deployed, and then create
|
69
|
+
# and manage this project-level, per-location bucket (see
|
70
|
+
# [Cloud Dataproc staging
|
71
|
+
# bucket](/dataproc/docs/concepts/configuring-clusters/staging-bucket)).
|
69
72
|
# @!attribute [rw] gce_cluster_config
|
70
73
|
# @return [Google::Cloud::Dataproc::V1beta2::GceClusterConfig]
|
71
|
-
#
|
74
|
+
# Optional. The shared Compute Engine config settings for
|
72
75
|
# all instances in a cluster.
|
73
76
|
# @!attribute [rw] master_config
|
74
77
|
# @return [Google::Cloud::Dataproc::V1beta2::InstanceGroupConfig]
|
@@ -106,8 +109,43 @@ module Google
|
|
106
109
|
# @!attribute [rw] encryption_config
|
107
110
|
# @return [Google::Cloud::Dataproc::V1beta2::EncryptionConfig]
|
108
111
|
# Optional. Encryption settings for the cluster.
|
112
|
+
# @!attribute [rw] autoscaling_config
|
113
|
+
# @return [Google::Cloud::Dataproc::V1beta2::AutoscalingConfig]
|
114
|
+
# Optional. Autoscaling config for the policy associated with the cluster.
|
115
|
+
# Cluster does not autoscale if this field is unset.
|
116
|
+
# @!attribute [rw] endpoint_config
|
117
|
+
# @return [Google::Cloud::Dataproc::V1beta2::EndpointConfig]
|
118
|
+
# Optional. Port/endpoint configuration for this cluster
|
119
|
+
# @!attribute [rw] security_config
|
120
|
+
# @return [Google::Cloud::Dataproc::V1beta2::SecurityConfig]
|
121
|
+
# Optional. Security related configuration.
|
109
122
|
class ClusterConfig; end
|
110
123
|
|
124
|
+
# Endpoint config for this cluster
|
125
|
+
# @!attribute [rw] http_ports
|
126
|
+
# @return [Hash{String => String}]
|
127
|
+
# Output only. The map of port descriptions to URLs. Will only be populated
|
128
|
+
# if enable_http_port_access is true.
|
129
|
+
# @!attribute [rw] enable_http_port_access
|
130
|
+
# @return [true, false]
|
131
|
+
# Optional. If true, enable http access to specific ports on the cluster
|
132
|
+
# from external sources. Defaults to false.
|
133
|
+
class EndpointConfig; end
|
134
|
+
|
135
|
+
# Autoscaling Policy config associated with the cluster.
|
136
|
+
# @!attribute [rw] policy_uri
|
137
|
+
# @return [String]
|
138
|
+
# Optional. The autoscaling policy used by the cluster.
|
139
|
+
#
|
140
|
+
# Only resource names including projectid and location (region) are valid.
|
141
|
+
# Examples:
|
142
|
+
#
|
143
|
+
# * `https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]`
|
144
|
+
# * `projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]`
|
145
|
+
#
|
146
|
+
# Note that the policy must be in the same project and Cloud Dataproc region.
|
147
|
+
class AutoscalingConfig; end
|
148
|
+
|
111
149
|
# Encryption settings for the cluster.
|
112
150
|
# @!attribute [rw] gce_pd_kms_key_name
|
113
151
|
# @return [String]
|
@@ -150,8 +188,8 @@ module Google
|
|
150
188
|
#
|
151
189
|
# A full URL, partial URI, or short name are valid. Examples:
|
152
190
|
#
|
153
|
-
# * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/sub0`
|
154
|
-
# * `projects/[project_id]/regions/us-east1/sub0`
|
191
|
+
# * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/subnetworks/sub0`
|
192
|
+
# * `projects/[project_id]/regions/us-east1/subnetworks/sub0`
|
155
193
|
# * `sub0`
|
156
194
|
# @!attribute [rw] internal_ip_only
|
157
195
|
# @return [true, false]
|
@@ -199,6 +237,9 @@ module Google
|
|
199
237
|
# The Compute Engine metadata entries to add to all instances (see
|
200
238
|
# [Project and instance
|
201
239
|
# metadata](https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)).
|
240
|
+
# @!attribute [rw] reservation_affinity
|
241
|
+
# @return [Google::Cloud::Dataproc::V1beta2::ReservationAffinity]
|
242
|
+
# Optional. Reservation Affinity for consuming Zonal reservation.
|
202
243
|
class GceClusterConfig; end
|
203
244
|
|
204
245
|
# Optional. The config settings for Compute Engine resources in
|
@@ -272,8 +313,9 @@ module Google
|
|
272
313
|
# @!attribute [rw] accelerator_type_uri
|
273
314
|
# @return [String]
|
274
315
|
# Full URL, partial URI, or short name of the accelerator type resource to
|
275
|
-
# expose to this instance. See
|
276
|
-
#
|
316
|
+
# expose to this instance. See
|
317
|
+
# [Compute Engine
|
318
|
+
# AcceleratorTypes](/compute/docs/reference/beta/acceleratorTypes)
|
277
319
|
#
|
278
320
|
# Examples
|
279
321
|
# * `https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80`
|
@@ -329,6 +371,77 @@ module Google
|
|
329
371
|
# Example: **"1d"**, to delete the cluster 1 day after its creation..
|
330
372
|
class LifecycleConfig; end
|
331
373
|
|
374
|
+
# Security related configuration, including encryption, Kerberos, etc.
|
375
|
+
# @!attribute [rw] kerberos_config
|
376
|
+
# @return [Google::Cloud::Dataproc::V1beta2::KerberosConfig]
|
377
|
+
# Kerberos related configuration.
|
378
|
+
class SecurityConfig; end
|
379
|
+
|
380
|
+
# Specifies Kerberos related configuration.
|
381
|
+
# @!attribute [rw] enable_kerberos
|
382
|
+
# @return [true, false]
|
383
|
+
# Optional. Flag to indicate whether to Kerberize the cluster.
|
384
|
+
# @!attribute [rw] root_principal_password_uri
|
385
|
+
# @return [String]
|
386
|
+
# Required. The Cloud Storage URI of a KMS encrypted file containing the root
|
387
|
+
# principal password.
|
388
|
+
# @!attribute [rw] kms_key_uri
|
389
|
+
# @return [String]
|
390
|
+
# Required. The uri of the KMS key used to encrypt various sensitive
|
391
|
+
# files.
|
392
|
+
# @!attribute [rw] keystore_uri
|
393
|
+
# @return [String]
|
394
|
+
# Optional. The Cloud Storage URI of the keystore file used for SSL
|
395
|
+
# encryption. If not provided, Dataproc will provide a self-signed
|
396
|
+
# certificate.
|
397
|
+
# @!attribute [rw] truststore_uri
|
398
|
+
# @return [String]
|
399
|
+
# Optional. The Cloud Storage URI of the truststore file used for SSL
|
400
|
+
# encryption. If not provided, Dataproc will provide a self-signed
|
401
|
+
# certificate.
|
402
|
+
# @!attribute [rw] keystore_password_uri
|
403
|
+
# @return [String]
|
404
|
+
# Optional. The Cloud Storage URI of a KMS encrypted file containing the
|
405
|
+
# password to the user provided keystore. For the self-signed certificate,
|
406
|
+
# this password is generated by Dataproc.
|
407
|
+
# @!attribute [rw] key_password_uri
|
408
|
+
# @return [String]
|
409
|
+
# Optional. The Cloud Storage URI of a KMS encrypted file containing the
|
410
|
+
# password to the user provided key. For the self-signed certificate, this
|
411
|
+
# password is generated by Dataproc.
|
412
|
+
# @!attribute [rw] truststore_password_uri
|
413
|
+
# @return [String]
|
414
|
+
# Optional. The Cloud Storage URI of a KMS encrypted file containing the
|
415
|
+
# password to the user provided truststore. For the self-signed certificate,
|
416
|
+
# this password is generated by Dataproc.
|
417
|
+
# @!attribute [rw] cross_realm_trust_realm
|
418
|
+
# @return [String]
|
419
|
+
# Optional. The remote realm the Dataproc on-cluster KDC will trust, should
|
420
|
+
# the user enable cross realm trust.
|
421
|
+
# @!attribute [rw] cross_realm_trust_kdc
|
422
|
+
# @return [String]
|
423
|
+
# Optional. The KDC (IP or hostname) for the remote trusted realm in a cross
|
424
|
+
# realm trust relationship.
|
425
|
+
# @!attribute [rw] cross_realm_trust_admin_server
|
426
|
+
# @return [String]
|
427
|
+
# Optional. The admin server (IP or hostname) for the remote trusted realm in
|
428
|
+
# a cross realm trust relationship.
|
429
|
+
# @!attribute [rw] cross_realm_trust_shared_password_uri
|
430
|
+
# @return [String]
|
431
|
+
# Optional. The Cloud Storage URI of a KMS encrypted file containing the
|
432
|
+
# shared password between the on-cluster Kerberos realm and the remote
|
433
|
+
# trusted realm, in a cross realm trust relationship.
|
434
|
+
# @!attribute [rw] kdc_db_key_uri
|
435
|
+
# @return [String]
|
436
|
+
# Optional. The Cloud Storage URI of a KMS encrypted file containing the
|
437
|
+
# master key of the KDC database.
|
438
|
+
# @!attribute [rw] tgt_lifetime_hours
|
439
|
+
# @return [Integer]
|
440
|
+
# Optional. The lifetime of the ticket granting ticket, in hours.
|
441
|
+
# If not specified, or user specifies 0, then default value 10
|
442
|
+
# will be used.
|
443
|
+
class KerberosConfig; end
|
444
|
+
|
332
445
|
# Specifies an executable to run on a fully configured node and a
|
333
446
|
# timeout period for executable completion.
|
334
447
|
# @!attribute [rw] executable_file
|
@@ -407,13 +520,13 @@ module Google
|
|
407
520
|
# such as "1.2" (including a subminor version, such as "1.2.29"), or the
|
408
521
|
# ["preview"
|
409
522
|
# version](/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
|
410
|
-
# If unspecified, it defaults to the latest version.
|
523
|
+
# If unspecified, it defaults to the latest Debian version.
|
411
524
|
# @!attribute [rw] properties
|
412
525
|
# @return [Hash{String => String}]
|
413
526
|
# Optional. The properties to set on daemon config files.
|
414
527
|
#
|
415
|
-
# Property keys are specified in `prefix:property` format,
|
416
|
-
# `core:
|
528
|
+
# Property keys are specified in `prefix:property` format, for example
|
529
|
+
# `core:hadoop.tmp.dir`. The following are supported prefixes
|
417
530
|
# and their mappings:
|
418
531
|
#
|
419
532
|
# * capacity-scheduler: `capacity-scheduler.xml`
|
@@ -428,6 +541,9 @@ module Google
|
|
428
541
|
#
|
429
542
|
# For more information, see
|
430
543
|
# [Cluster properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
|
544
|
+
# @!attribute [rw] optional_components
|
545
|
+
# @return [Array<Google::Cloud::Dataproc::V1beta2::Component>]
|
546
|
+
# The set of optional components to activate on the cluster.
|
431
547
|
class SoftwareConfig; end
|
432
548
|
|
433
549
|
# Contains cluster daemon metrics, such as HDFS and YARN stats.
|
@@ -456,11 +572,10 @@ module Google
|
|
456
572
|
# @!attribute [rw] request_id
|
457
573
|
# @return [String]
|
458
574
|
# Optional. A unique id used to identify the request. If the server
|
459
|
-
# receives two
|
460
|
-
#
|
461
|
-
#
|
462
|
-
#
|
463
|
-
# and stored in the backend is returned.
|
575
|
+
# receives two {Google::Cloud::Dataproc::V1beta2::CreateClusterRequest CreateClusterRequest} requests with the same
|
576
|
+
# id, then the second request will be ignored and the
|
577
|
+
# first {Google::Longrunning::Operation} created and stored in the backend
|
578
|
+
# is returned.
|
464
579
|
#
|
465
580
|
# It is recommended to always set this value to a
|
466
581
|
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
@@ -550,15 +665,18 @@ module Google
|
|
550
665
|
# <td>config.lifecycle_config.idle_delete_ttl</td><td>Update Idle TTL
|
551
666
|
# duration</td>
|
552
667
|
# </tr>
|
668
|
+
# <tr>
|
669
|
+
# <td>config.autoscaling_config.policy_uri</td><td>Use, stop using, or change
|
670
|
+
# autoscaling policies</td>
|
671
|
+
# </tr>
|
553
672
|
# </table>
|
554
673
|
# @!attribute [rw] request_id
|
555
674
|
# @return [String]
|
556
675
|
# Optional. A unique id used to identify the request. If the server
|
557
|
-
# receives two
|
558
|
-
#
|
559
|
-
#
|
560
|
-
#
|
561
|
-
# and stored in the backend is returned.
|
676
|
+
# receives two {Google::Cloud::Dataproc::V1beta2::UpdateClusterRequest UpdateClusterRequest} requests with the same
|
677
|
+
# id, then the second request will be ignored and the
|
678
|
+
# first {Google::Longrunning::Operation} created and stored in the
|
679
|
+
# backend is returned.
|
562
680
|
#
|
563
681
|
# It is recommended to always set this value to a
|
564
682
|
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
@@ -585,11 +703,10 @@ module Google
|
|
585
703
|
# @!attribute [rw] request_id
|
586
704
|
# @return [String]
|
587
705
|
# Optional. A unique id used to identify the request. If the server
|
588
|
-
# receives two
|
589
|
-
#
|
590
|
-
#
|
591
|
-
#
|
592
|
-
# and stored in the backend is returned.
|
706
|
+
# receives two {Google::Cloud::Dataproc::V1beta2::DeleteClusterRequest DeleteClusterRequest} requests with the same
|
707
|
+
# id, then the second request will be ignored and the
|
708
|
+
# first {Google::Longrunning::Operation} created and stored in the
|
709
|
+
# backend is returned.
|
593
710
|
#
|
594
711
|
# It is recommended to always set this value to a
|
595
712
|
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
@@ -679,6 +796,33 @@ module Google
|
|
679
796
|
# The output report is a plain text file with a summary of collected
|
680
797
|
# diagnostics.
|
681
798
|
class DiagnoseClusterResults; end
|
799
|
+
|
800
|
+
# Reservation Affinity for consuming Zonal reservation.
|
801
|
+
# @!attribute [rw] consume_reservation_type
|
802
|
+
# @return [Google::Cloud::Dataproc::V1beta2::ReservationAffinity::Type]
|
803
|
+
# Optional. Type of reservation to consume
|
804
|
+
# @!attribute [rw] key
|
805
|
+
# @return [String]
|
806
|
+
# Optional. Corresponds to the label key of reservation resource.
|
807
|
+
# @!attribute [rw] values
|
808
|
+
# @return [Array<String>]
|
809
|
+
# Optional. Corresponds to the label values of reservation resource.
|
810
|
+
class ReservationAffinity
|
811
|
+
# Indicates whether to consume capacity from an reservation or not.
|
812
|
+
module Type
|
813
|
+
TYPE_UNSPECIFIED = 0
|
814
|
+
|
815
|
+
# Do not consume from any allocated capacity.
|
816
|
+
NO_RESERVATION = 1
|
817
|
+
|
818
|
+
# Consume any reservation available.
|
819
|
+
ANY_RESERVATION = 2
|
820
|
+
|
821
|
+
# Must consume from a specific reservation. Must specify key value fields
|
822
|
+
# for specifying the reservations.
|
823
|
+
SPECIFIC_RESERVATION = 3
|
824
|
+
end
|
825
|
+
end
|
682
826
|
end
|
683
827
|
end
|
684
828
|
end
|