@@ -170,6 +170,17 @@ message ClusterConfig {
170170 // bucket](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)).
171171 string config_bucket = 1 [(google.api.field_behavior ) = OPTIONAL ];
172172
173+ // Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs data,
174+ // such as Spark and MapReduce history files.
175+ // If you do not specify a temp bucket,
176+ // Dataproc will determine a Cloud Storage location (US,
177+ // ASIA, or EU) for your cluster's temp bucket according to the
178+ // Compute Engine zone where your cluster is deployed, and then create
179+ // and manage this project-level, per-location bucket. The default bucket has
180+ // a TTL of 90 days, but you can use any TTL (or none) if you specify a
181+ // bucket.
182+ string temp_bucket = 2 [(google.api.field_behavior ) = OPTIONAL ];
183+
173184 // Optional. The shared Compute Engine config settings for
174185 // all instances in a cluster.
175186 GceClusterConfig gce_cluster_config = 8 [(google.api.field_behavior ) = OPTIONAL ];
@@ -216,6 +227,20 @@ message ClusterConfig {
216227
217228 // Optional. Lifecycle setting for the cluster.
218229 LifecycleConfig lifecycle_config = 17 [(google.api.field_behavior ) = OPTIONAL ];
230+
231+ // Optional. Port/endpoint configuration for this cluster
232+ EndpointConfig endpoint_config = 19 [(google.api.field_behavior ) = OPTIONAL ];
233+ }
234+
235+ // Endpoint config for this cluster
236+ message EndpointConfig {
237+ // Output only. The map of port descriptions to URLs. Will only be populated
238+ // if enable_http_port_access is true.
239+ map <string , string > http_ports = 1 [(google.api.field_behavior ) = OUTPUT_ONLY ];
240+
241+ // Optional. If true, enable http access to specific ports on the cluster
242+ // from external sources. Defaults to false.
243+ bool enable_http_port_access = 2 [(google.api.field_behavior ) = OPTIONAL ];
219244}
220245
221246// Autoscaling Policy config associated with the cluster.
@@ -288,7 +313,7 @@ message GceClusterConfig {
288313 bool internal_ip_only = 7 [(google.api.field_behavior ) = OPTIONAL ];
289314
290315 // Optional. The [Dataproc service
291- // account](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service-accounts#service_accounts_in_cloud_dataproc )
316+ // account](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service-accounts#service_accounts_in_dataproc )
292317 // (also see [VM Data Plane
293318 // identity](https://cloud.google.com/dataproc/docs/concepts/iam/dataproc-principals#vm_service_account_data_plane_identity))
294319 // used by Dataproc cluster VM instances to access Google Cloud Platform
@@ -332,6 +357,27 @@ message GceClusterConfig {
332357// The config settings for Compute Engine resources in
333358// an instance group, such as a master or worker group.
334359message InstanceGroupConfig {
360+ // Controls the use of
361+ // [preemptible instances]
362+ // (https://cloud.google.com/compute/docs/instances/preemptible)
363+ // within the group.
364+ enum Preemptibility {
365+ // Preemptibility is unspecified, the system will choose the
366+ // appropriate setting for each instance group.
367+ PREEMPTIBILITY_UNSPECIFIED = 0 ;
368+
369+ // Instances are non-preemptible.
370+ //
371+ // This option is allowed for all instance groups and is the only valid
372+ // value for Master and Worker instance groups.
373+ NON_PREEMPTIBLE = 1 ;
374+
375+ // Instances are preemptible.
376+ //
377+ // This option is allowed only for secondary worker groups.
378+ PREEMPTIBLE = 2 ;
379+ }
380+
335381 // Optional. The number of VM instances in the instance group.
336382 // For master instance groups, must be set to 1.
337383 int32 num_instances = 1 [(google.api.field_behavior ) = OPTIONAL ];
@@ -382,6 +428,15 @@ message InstanceGroupConfig {
382428 // instances.
383429 bool is_preemptible = 6 [(google.api.field_behavior ) = OUTPUT_ONLY ];
384430
431+ // Optional. Specifies the preemptibility of the instance group.
432+ //
433+ // The default value for master and worker groups is
434+ // `NON_PREEMPTIBLE`. This default cannot be changed.
435+ //
436+ // The default value for secondary instances is
437+ // `PREEMPTIBLE`.
438+ Preemptibility preemptibility = 10 [(google.api.field_behavior ) = OPTIONAL ];
439+
385440 // Output only. The config for Compute Engine Instance Group
386441 // Manager that manages this group.
387442 // This is only used for preemptible instance groups.
@@ -608,7 +663,7 @@ message KerberosConfig {
608663message SoftwareConfig {
609664 // Optional. The version of software inside the cluster. It must be one of the
610665 // supported [Dataproc
611- // Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_cloud_dataproc_versions ),
666+ // Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions ),
612667 // such as "1.2" (including a subminor version, such as "1.2.29"), or the
613668 // ["preview"
614669 // version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
0 commit comments