google-cloud-container-v1beta1 0.5.1 → 0.8.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.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +8 -8
- data/README.md +1 -1
- data/lib/google/cloud/container/v1beta1/cluster_manager/client.rb +162 -118
- data/lib/google/cloud/container/v1beta1/version.rb +1 -1
- data/lib/google/container/v1beta1/cluster_service_pb.rb +151 -0
- data/lib/google/container/v1beta1/cluster_service_services_pb.rb +3 -1
- data/proto_docs/google/api/field_behavior.rb +7 -1
- data/proto_docs/google/container/v1beta1/cluster_service.rb +481 -40
- data/proto_docs/google/type/date.rb +53 -0
- metadata +14 -7
@@ -154,9 +154,6 @@ module Google
|
|
154
154
|
# - "install-ssh-psm1"
|
155
155
|
# - "user-profile-psm1"
|
156
156
|
#
|
157
|
-
# The following keys are reserved for Windows nodes:
|
158
|
-
# - "serial-port-logging-enable"
|
159
|
-
#
|
160
157
|
# Values are free-form strings, and only have meaning as interpreted by
|
161
158
|
# the image running in the instance. The only restriction placed on them is
|
162
159
|
# that each value's size must be less than or equal to 32 KB.
|
@@ -260,6 +257,9 @@ module Google
|
|
260
257
|
# @return [::Google::Cloud::Container::V1beta1::EphemeralStorageConfig]
|
261
258
|
# Parameters for the ephemeral storage filesystem.
|
262
259
|
# If unspecified, ephemeral storage is backed by the boot disk.
|
260
|
+
# @!attribute [rw] gvnic
|
261
|
+
# @return [::Google::Cloud::Container::V1beta1::VirtualNIC]
|
262
|
+
# Enable or disable gvnic on the node pool.
|
263
263
|
class NodeConfig
|
264
264
|
include ::Google::Protobuf::MessageExts
|
265
265
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -283,6 +283,53 @@ module Google
|
|
283
283
|
end
|
284
284
|
end
|
285
285
|
|
286
|
+
# Parameters for node pool-level network config.
|
287
|
+
# @!attribute [rw] create_pod_range
|
288
|
+
# @return [::Boolean]
|
289
|
+
# Input only. Whether to create a new range for pod IPs in this node pool.
|
290
|
+
# Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they
|
291
|
+
# are not specified.
|
292
|
+
#
|
293
|
+
# If neither `create_pod_range` or `pod_range` are specified, the
|
294
|
+
# cluster-level default (`ip_allocation_policy.cluster_ipv4_cidr_block`) is
|
295
|
+
# used.
|
296
|
+
#
|
297
|
+
# Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
|
298
|
+
#
|
299
|
+
# This field cannot be changed after the node pool has been created.
|
300
|
+
# @!attribute [rw] pod_range
|
301
|
+
# @return [::String]
|
302
|
+
# The ID of the secondary range for pod IPs.
|
303
|
+
# If `create_pod_range` is true, this ID is used for the new range.
|
304
|
+
# If `create_pod_range` is false, uses an existing secondary range with this
|
305
|
+
# ID.
|
306
|
+
#
|
307
|
+
# Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
|
308
|
+
#
|
309
|
+
# This field cannot be changed after the node pool has been created.
|
310
|
+
# @!attribute [rw] pod_ipv4_cidr_block
|
311
|
+
# @return [::String]
|
312
|
+
# The IP address range for pod IPs in this node pool.
|
313
|
+
#
|
314
|
+
# Only applicable if `create_pod_range` is true.
|
315
|
+
#
|
316
|
+
# Set to blank to have a range chosen with the default size.
|
317
|
+
#
|
318
|
+
# Set to /netmask (e.g. `/14`) to have a range chosen with a specific
|
319
|
+
# netmask.
|
320
|
+
#
|
321
|
+
# Set to a
|
322
|
+
# [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
|
323
|
+
# notation (e.g. `10.96.0.0/14`) to pick a specific range to use.
|
324
|
+
#
|
325
|
+
# Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
|
326
|
+
#
|
327
|
+
# This field cannot be changed after the node pool has been created.
|
328
|
+
class NodeNetworkConfig
|
329
|
+
include ::Google::Protobuf::MessageExts
|
330
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
331
|
+
end
|
332
|
+
|
286
333
|
# A set of Shielded Instance options.
|
287
334
|
# @!attribute [rw] enable_secure_boot
|
288
335
|
# @return [::Boolean]
|
@@ -407,6 +454,46 @@ module Google
|
|
407
454
|
end
|
408
455
|
end
|
409
456
|
|
457
|
+
# Collection of Kubernetes [node
|
458
|
+
# taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration).
|
459
|
+
# @!attribute [rw] taints
|
460
|
+
# @return [::Array<::Google::Cloud::Container::V1beta1::NodeTaint>]
|
461
|
+
# List of node taints.
|
462
|
+
class NodeTaints
|
463
|
+
include ::Google::Protobuf::MessageExts
|
464
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
465
|
+
end
|
466
|
+
|
467
|
+
# Collection of node-level [Kubernetes
|
468
|
+
# labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels).
|
469
|
+
# @!attribute [rw] labels
|
470
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
471
|
+
# Map of node label keys and node label values.
|
472
|
+
class NodeLabels
|
473
|
+
include ::Google::Protobuf::MessageExts
|
474
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
475
|
+
|
476
|
+
# @!attribute [rw] key
|
477
|
+
# @return [::String]
|
478
|
+
# @!attribute [rw] value
|
479
|
+
# @return [::String]
|
480
|
+
class LabelsEntry
|
481
|
+
include ::Google::Protobuf::MessageExts
|
482
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
483
|
+
end
|
484
|
+
end
|
485
|
+
|
486
|
+
# Collection of Compute Engine network tags that can be applied to a node's
|
487
|
+
# underlying VM instance. (See `tags` field in
|
488
|
+
# [`NodeConfig`](/kubernetes-engine/docs/reference/rest/v1/NodeConfig)).
|
489
|
+
# @!attribute [rw] tags
|
490
|
+
# @return [::Array<::String>]
|
491
|
+
# List of network tags.
|
492
|
+
class NetworkTags
|
493
|
+
include ::Google::Protobuf::MessageExts
|
494
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
495
|
+
end
|
496
|
+
|
410
497
|
# The authentication information for accessing the master endpoint.
|
411
498
|
# Authentication can be done using HTTP basic auth or using client
|
412
499
|
# certificates.
|
@@ -583,8 +670,7 @@ module Google
|
|
583
670
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
584
671
|
end
|
585
672
|
|
586
|
-
# Configuration for the Compute Engine PD CSI driver.
|
587
|
-
# enabled at cluster creation time.
|
673
|
+
# Configuration for the Compute Engine PD CSI driver.
|
588
674
|
# @!attribute [rw] enabled
|
589
675
|
# @return [::Boolean]
|
590
676
|
# Whether the Compute Engine PD CSI driver is enabled for this cluster.
|
@@ -1132,6 +1218,10 @@ module Google
|
|
1132
1218
|
# @return [::Google::Cloud::Container::V1beta1::WorkloadIdentityConfig]
|
1133
1219
|
# Configuration for the use of Kubernetes Service Accounts in GCP IAM
|
1134
1220
|
# policies.
|
1221
|
+
# @!attribute [rw] workload_certificates
|
1222
|
+
# @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
|
1223
|
+
# Configuration for issuance of mTLS keys and certificates to Kubernetes
|
1224
|
+
# pods.
|
1135
1225
|
# @!attribute [rw] cluster_telemetry
|
1136
1226
|
# @return [::Google::Cloud::Container::V1beta1::ClusterTelemetry]
|
1137
1227
|
# Telemetry integration for the cluster.
|
@@ -1144,6 +1234,9 @@ module Google
|
|
1144
1234
|
# @!attribute [rw] confidential_nodes
|
1145
1235
|
# @return [::Google::Cloud::Container::V1beta1::ConfidentialNodes]
|
1146
1236
|
# Configuration of Confidential Nodes
|
1237
|
+
# @!attribute [rw] identity_service_config
|
1238
|
+
# @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
|
1239
|
+
# Configuration for Identity Service component.
|
1147
1240
|
# @!attribute [rw] self_link
|
1148
1241
|
# @return [::String]
|
1149
1242
|
# [Output only] Server-defined URL for the resource.
|
@@ -1246,6 +1339,22 @@ module Google
|
|
1246
1339
|
# @!attribute [rw] master
|
1247
1340
|
# @return [::Google::Cloud::Container::V1beta1::Master]
|
1248
1341
|
# Configuration for master components.
|
1342
|
+
# @!attribute [rw] autopilot
|
1343
|
+
# @return [::Google::Cloud::Container::V1beta1::Autopilot]
|
1344
|
+
# Autopilot configuration for the cluster.
|
1345
|
+
# @!attribute [r] id
|
1346
|
+
# @return [::String]
|
1347
|
+
# Output only. Unique id for the cluster.
|
1348
|
+
# @!attribute [rw] node_pool_defaults
|
1349
|
+
# @return [::Google::Cloud::Container::V1beta1::NodePoolDefaults]
|
1350
|
+
# Default NodePool settings for the entire cluster. These settings are
|
1351
|
+
# overridden if specified on the specific NodePool object.
|
1352
|
+
# @!attribute [rw] logging_config
|
1353
|
+
# @return [::Google::Cloud::Container::V1beta1::LoggingConfig]
|
1354
|
+
# Logging configuration for the cluster.
|
1355
|
+
# @!attribute [rw] monitoring_config
|
1356
|
+
# @return [::Google::Cloud::Container::V1beta1::MonitoringConfig]
|
1357
|
+
# Monitoring configuration for the cluster.
|
1249
1358
|
class Cluster
|
1250
1359
|
include ::Google::Protobuf::MessageExts
|
1251
1360
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -1289,6 +1398,21 @@ module Google
|
|
1289
1398
|
end
|
1290
1399
|
end
|
1291
1400
|
|
1401
|
+
# Subset of Nodepool message that has defaults.
|
1402
|
+
# @!attribute [rw] node_config_defaults
|
1403
|
+
# @return [::Google::Cloud::Container::V1beta1::NodeConfigDefaults]
|
1404
|
+
# Subset of NodeConfig message that has defaults.
|
1405
|
+
class NodePoolDefaults
|
1406
|
+
include ::Google::Protobuf::MessageExts
|
1407
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1408
|
+
end
|
1409
|
+
|
1410
|
+
# Subset of NodeConfig message that has defaults.
|
1411
|
+
class NodeConfigDefaults
|
1412
|
+
include ::Google::Protobuf::MessageExts
|
1413
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1414
|
+
end
|
1415
|
+
|
1292
1416
|
# ClusterUpdate describes an update to the cluster. Exactly one update can
|
1293
1417
|
# be applied to a cluster with each request, so at most one field can be
|
1294
1418
|
# provided.
|
@@ -1396,9 +1520,15 @@ module Google
|
|
1396
1520
|
# @!attribute [rw] desired_tpu_config
|
1397
1521
|
# @return [::Google::Cloud::Container::V1beta1::TpuConfig]
|
1398
1522
|
# The desired Cloud TPU configuration.
|
1523
|
+
# @!attribute [rw] desired_l4ilb_subsetting_config
|
1524
|
+
# @return [::Google::Cloud::Container::V1beta1::ILBSubsettingConfig]
|
1525
|
+
# The desired L4 Internal Load Balancer Subsetting configuration.
|
1399
1526
|
# @!attribute [rw] desired_datapath_provider
|
1400
1527
|
# @return [::Google::Cloud::Container::V1beta1::DatapathProvider]
|
1401
1528
|
# The desired datapath provider for the cluster.
|
1529
|
+
# @!attribute [rw] desired_private_ipv6_google_access
|
1530
|
+
# @return [::Google::Cloud::Container::V1beta1::PrivateIPv6GoogleAccess]
|
1531
|
+
# The desired state of IPv6 connectivity to Google Services.
|
1402
1532
|
# @!attribute [rw] desired_notification_config
|
1403
1533
|
# @return [::Google::Cloud::Container::V1beta1::NotificationConfig]
|
1404
1534
|
# The desired notification configuration.
|
@@ -1421,12 +1551,36 @@ module Google
|
|
1421
1551
|
# @!attribute [rw] desired_workload_identity_config
|
1422
1552
|
# @return [::Google::Cloud::Container::V1beta1::WorkloadIdentityConfig]
|
1423
1553
|
# Configuration for Workload Identity.
|
1554
|
+
# @!attribute [rw] desired_workload_certificates
|
1555
|
+
# @return [::Google::Cloud::Container::V1beta1::WorkloadCertificates]
|
1556
|
+
# Configuration for issuance of mTLS keys and certificates to Kubernetes
|
1557
|
+
# pods.
|
1424
1558
|
# @!attribute [rw] desired_shielded_nodes
|
1425
1559
|
# @return [::Google::Cloud::Container::V1beta1::ShieldedNodes]
|
1426
1560
|
# Configuration for Shielded Nodes.
|
1427
1561
|
# @!attribute [rw] desired_master
|
1428
1562
|
# @return [::Google::Cloud::Container::V1beta1::Master]
|
1429
1563
|
# Configuration for master components.
|
1564
|
+
# @!attribute [rw] desired_dns_config
|
1565
|
+
# @return [::Google::Cloud::Container::V1beta1::DNSConfig]
|
1566
|
+
# DNSConfig contains clusterDNS config for this cluster.
|
1567
|
+
# @!attribute [rw] desired_service_external_ips_config
|
1568
|
+
# @return [::Google::Cloud::Container::V1beta1::ServiceExternalIPsConfig]
|
1569
|
+
# ServiceExternalIPsConfig specifies the config for the use of Services with
|
1570
|
+
# ExternalIPs field.
|
1571
|
+
# @!attribute [rw] desired_authenticator_groups_config
|
1572
|
+
# @return [::Google::Cloud::Container::V1beta1::AuthenticatorGroupsConfig]
|
1573
|
+
# AuthenticatorGroupsConfig specifies the config for the cluster security
|
1574
|
+
# groups settings.
|
1575
|
+
# @!attribute [rw] desired_logging_config
|
1576
|
+
# @return [::Google::Cloud::Container::V1beta1::LoggingConfig]
|
1577
|
+
# The desired logging configuration.
|
1578
|
+
# @!attribute [rw] desired_monitoring_config
|
1579
|
+
# @return [::Google::Cloud::Container::V1beta1::MonitoringConfig]
|
1580
|
+
# The desired monitoring configuration.
|
1581
|
+
# @!attribute [rw] desired_identity_service_config
|
1582
|
+
# @return [::Google::Cloud::Container::V1beta1::IdentityServiceConfig]
|
1583
|
+
# The desired Identity Service component configuration.
|
1430
1584
|
class ClusterUpdate
|
1431
1585
|
include ::Google::Protobuf::MessageExts
|
1432
1586
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -1742,12 +1896,30 @@ module Google
|
|
1742
1896
|
# @!attribute [rw] upgrade_settings
|
1743
1897
|
# @return [::Google::Cloud::Container::V1beta1::NodePool::UpgradeSettings]
|
1744
1898
|
# Upgrade settings control disruption and speed of the upgrade.
|
1899
|
+
# @!attribute [rw] tags
|
1900
|
+
# @return [::Google::Cloud::Container::V1beta1::NetworkTags]
|
1901
|
+
# The desired network tags to be applied to all nodes in the node pool.
|
1902
|
+
# If this field is not present, the tags will not be changed. Otherwise,
|
1903
|
+
# the existing network tags will be *replaced* with the provided tags.
|
1904
|
+
# @!attribute [rw] taints
|
1905
|
+
# @return [::Google::Cloud::Container::V1beta1::NodeTaints]
|
1906
|
+
# The desired node taints to be applied to all nodes in the node pool.
|
1907
|
+
# If this field is not present, the taints will not be changed. Otherwise,
|
1908
|
+
# the existing node taints will be *replaced* with the provided taints.
|
1909
|
+
# @!attribute [rw] labels
|
1910
|
+
# @return [::Google::Cloud::Container::V1beta1::NodeLabels]
|
1911
|
+
# The desired node labels to be applied to all nodes in the node pool.
|
1912
|
+
# If this field is not present, the labels will not be changed. Otherwise,
|
1913
|
+
# the existing node labels will be *replaced* with the provided labels.
|
1745
1914
|
# @!attribute [rw] linux_node_config
|
1746
1915
|
# @return [::Google::Cloud::Container::V1beta1::LinuxNodeConfig]
|
1747
1916
|
# Parameters that can be configured on Linux nodes.
|
1748
1917
|
# @!attribute [rw] kubelet_config
|
1749
1918
|
# @return [::Google::Cloud::Container::V1beta1::NodeKubeletConfig]
|
1750
1919
|
# Node kubelet configs.
|
1920
|
+
# @!attribute [rw] gvnic
|
1921
|
+
# @return [::Google::Cloud::Container::V1beta1::VirtualNIC]
|
1922
|
+
# Enable or disable gvnic on the node pool.
|
1751
1923
|
class UpdateNodePoolRequest
|
1752
1924
|
include ::Google::Protobuf::MessageExts
|
1753
1925
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -1880,8 +2052,8 @@ module Google
|
|
1880
2052
|
# This field has been deprecated and replaced by the name field.
|
1881
2053
|
# @!attribute [rw] addons_config
|
1882
2054
|
# @return [::Google::Cloud::Container::V1beta1::AddonsConfig]
|
1883
|
-
# Required. The desired configurations for the various addons available to
|
1884
|
-
# cluster.
|
2055
|
+
# Required. The desired configurations for the various addons available to
|
2056
|
+
# run in the cluster.
|
1885
2057
|
# @!attribute [rw] name
|
1886
2058
|
# @return [::String]
|
1887
2059
|
# The name (project, location, cluster) of the cluster to set addons.
|
@@ -2197,6 +2369,9 @@ module Google
|
|
2197
2369
|
# @!attribute [rw] channels
|
2198
2370
|
# @return [::Array<::Google::Cloud::Container::V1beta1::ServerConfig::ReleaseChannelConfig>]
|
2199
2371
|
# List of release channel configurations.
|
2372
|
+
# @!attribute [rw] windows_version_maps
|
2373
|
+
# @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Container::V1beta1::WindowsVersions}]
|
2374
|
+
# Maps of Kubernetes version and supported Windows server versions.
|
2200
2375
|
class ServerConfig
|
2201
2376
|
include ::Google::Protobuf::MessageExts
|
2202
2377
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -2232,6 +2407,39 @@ module Google
|
|
2232
2407
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
2233
2408
|
end
|
2234
2409
|
end
|
2410
|
+
|
2411
|
+
# @!attribute [rw] key
|
2412
|
+
# @return [::String]
|
2413
|
+
# @!attribute [rw] value
|
2414
|
+
# @return [::Google::Cloud::Container::V1beta1::WindowsVersions]
|
2415
|
+
class WindowsVersionMapsEntry
|
2416
|
+
include ::Google::Protobuf::MessageExts
|
2417
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
2418
|
+
end
|
2419
|
+
end
|
2420
|
+
|
2421
|
+
# Windows server versions.
|
2422
|
+
# @!attribute [rw] windows_versions
|
2423
|
+
# @return [::Array<::Google::Cloud::Container::V1beta1::WindowsVersions::WindowsVersion>]
|
2424
|
+
# List of Windows server versions.
|
2425
|
+
class WindowsVersions
|
2426
|
+
include ::Google::Protobuf::MessageExts
|
2427
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
2428
|
+
|
2429
|
+
# Windows server version.
|
2430
|
+
# @!attribute [rw] image_type
|
2431
|
+
# @return [::String]
|
2432
|
+
# Windows server image type
|
2433
|
+
# @!attribute [rw] os_version
|
2434
|
+
# @return [::String]
|
2435
|
+
# Windows server build number
|
2436
|
+
# @!attribute [rw] support_end_date
|
2437
|
+
# @return [::Google::Type::Date]
|
2438
|
+
# Mainstream support end date
|
2439
|
+
class WindowsVersion
|
2440
|
+
include ::Google::Protobuf::MessageExts
|
2441
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
2442
|
+
end
|
2235
2443
|
end
|
2236
2444
|
|
2237
2445
|
# CreateNodePoolRequest creates a node pool for a cluster.
|
@@ -2354,6 +2562,29 @@ module Google
|
|
2354
2562
|
# of Kubernetes labels applied to them, which may be used to reference them
|
2355
2563
|
# during pod scheduling. They may also be resized up or down, to accommodate
|
2356
2564
|
# the workload.
|
2565
|
+
# These upgrade settings control the level of parallelism and the level of
|
2566
|
+
# disruption caused by an upgrade.
|
2567
|
+
#
|
2568
|
+
# maxUnavailable controls the number of nodes that can be simultaneously
|
2569
|
+
# unavailable.
|
2570
|
+
#
|
2571
|
+
# maxSurge controls the number of additional nodes that can be added to the
|
2572
|
+
# node pool temporarily for the time of the upgrade to increase the number of
|
2573
|
+
# available nodes.
|
2574
|
+
#
|
2575
|
+
# (maxUnavailable + maxSurge) determines the level of parallelism (how many
|
2576
|
+
# nodes are being upgraded at the same time).
|
2577
|
+
#
|
2578
|
+
# Note: upgrades inevitably introduce some disruption since workloads need to
|
2579
|
+
# be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
|
2580
|
+
# this holds true. (Disruption stays within the limits of
|
2581
|
+
# PodDisruptionBudget, if it is configured.)
|
2582
|
+
#
|
2583
|
+
# Consider a hypothetical node pool with 5 nodes having maxSurge=2,
|
2584
|
+
# maxUnavailable=1. This means the upgrade process upgrades 3 nodes
|
2585
|
+
# simultaneously. It creates 2 additional (upgraded) nodes, then it brings
|
2586
|
+
# down 3 old (not yet upgraded) nodes at the same time. This ensures that
|
2587
|
+
# there are always at least 4 nodes available.
|
2357
2588
|
# @!attribute [rw] name
|
2358
2589
|
# @return [::String]
|
2359
2590
|
# The name of the node pool.
|
@@ -2378,6 +2609,10 @@ module Google
|
|
2378
2609
|
#
|
2379
2610
|
# Warning: changing node pool locations will result in nodes being added
|
2380
2611
|
# and/or removed.
|
2612
|
+
# @!attribute [rw] network_config
|
2613
|
+
# @return [::Google::Cloud::Container::V1beta1::NodeNetworkConfig]
|
2614
|
+
# Networking configuration for this NodePool. If specified, it overrides the
|
2615
|
+
# cluster-level defaults.
|
2381
2616
|
# @!attribute [rw] self_link
|
2382
2617
|
# @return [::String]
|
2383
2618
|
# [Output only] Server-defined URL for the resource.
|
@@ -2421,29 +2656,6 @@ module Google
|
|
2421
2656
|
include ::Google::Protobuf::MessageExts
|
2422
2657
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
2423
2658
|
|
2424
|
-
# These upgrade settings control the level of parallelism and the level of
|
2425
|
-
# disruption caused by an upgrade.
|
2426
|
-
#
|
2427
|
-
# maxUnavailable controls the number of nodes that can be simultaneously
|
2428
|
-
# unavailable.
|
2429
|
-
#
|
2430
|
-
# maxSurge controls the number of additional nodes that can be added to the
|
2431
|
-
# node pool temporarily for the time of the upgrade to increase the number of
|
2432
|
-
# available nodes.
|
2433
|
-
#
|
2434
|
-
# (maxUnavailable + maxSurge) determines the level of parallelism (how many
|
2435
|
-
# nodes are being upgraded at the same time).
|
2436
|
-
#
|
2437
|
-
# Note: upgrades inevitably introduce some disruption since workloads need to
|
2438
|
-
# be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
|
2439
|
-
# this holds true. (Disruption stays within the limits of
|
2440
|
-
# PodDisruptionBudget, if it is configured.)
|
2441
|
-
#
|
2442
|
-
# Consider a hypothetical node pool with 5 nodes having maxSurge=2,
|
2443
|
-
# maxUnavailable=1. This means the upgrade process upgrades 3 nodes
|
2444
|
-
# simultaneously. It creates 2 additional (upgraded) nodes, then it brings
|
2445
|
-
# down 3 old (not yet upgraded) nodes at the same time. This ensures that
|
2446
|
-
# there are always at least 4 nodes available.
|
2447
2659
|
# @!attribute [rw] max_surge
|
2448
2660
|
# @return [::Integer]
|
2449
2661
|
# The maximum number of nodes that can be created beyond the current size
|
@@ -2669,8 +2881,7 @@ module Google
|
|
2669
2881
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
2670
2882
|
end
|
2671
2883
|
|
2672
|
-
# SetNodePoolSizeRequest sets the size a node
|
2673
|
-
# pool.
|
2884
|
+
# SetNodePoolSizeRequest sets the size of a node pool.
|
2674
2885
|
# @!attribute [rw] project_id
|
2675
2886
|
# @return [::String]
|
2676
2887
|
# Required. Deprecated. The Google Developers Console [project ID or project
|
@@ -2848,6 +3059,9 @@ module Google
|
|
2848
3059
|
# For more information about protecting resources with Cloud KMS Keys please
|
2849
3060
|
# see:
|
2850
3061
|
# https://cloud.google.com/compute/docs/disks/customer-managed-encryption
|
3062
|
+
# @!attribute [rw] image_type
|
3063
|
+
# @return [::String]
|
3064
|
+
# The image type to use for NAP created node.
|
2851
3065
|
class AutoprovisioningNodePoolDefaults
|
2852
3066
|
include ::Google::Protobuf::MessageExts
|
2853
3067
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -2881,7 +3095,7 @@ module Google
|
|
2881
3095
|
# @!attribute [rw] max_node_count
|
2882
3096
|
# @return [::Integer]
|
2883
3097
|
# Maximum number of nodes in the NodePool. Must be >= min_node_count. There
|
2884
|
-
# has to enough quota to scale up the cluster.
|
3098
|
+
# has to be enough quota to scale up the cluster.
|
2885
3099
|
# @!attribute [rw] autoprovisioned
|
2886
3100
|
# @return [::Boolean]
|
2887
3101
|
# Can this node pool be deleted automatically.
|
@@ -3028,6 +3242,11 @@ module Google
|
|
3028
3242
|
# @return [::String]
|
3029
3243
|
# The accelerator type resource name. List of supported accelerators
|
3030
3244
|
# [here](https://cloud.google.com/compute/docs/gpus)
|
3245
|
+
# @!attribute [rw] gpu_partition_size
|
3246
|
+
# @return [::String]
|
3247
|
+
# Size of partitions to create on the GPU. Valid values are described in the
|
3248
|
+
# NVIDIA [mig user
|
3249
|
+
# guide](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning).
|
3031
3250
|
class AcceleratorConfig
|
3032
3251
|
include ::Google::Protobuf::MessageExts
|
3033
3252
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -3240,8 +3459,11 @@ module Google
|
|
3240
3459
|
|
3241
3460
|
# Unable to perform an encrypt operation against the CloudKMS key used for
|
3242
3461
|
# etcd level encryption.
|
3243
|
-
# More codes TBA
|
3244
3462
|
CLOUD_KMS_KEY_ERROR = 7
|
3463
|
+
|
3464
|
+
# Cluster CA is expiring soon.
|
3465
|
+
# More codes TBA
|
3466
|
+
CA_EXPIRING = 9
|
3245
3467
|
end
|
3246
3468
|
end
|
3247
3469
|
|
@@ -3268,15 +3490,39 @@ module Google
|
|
3268
3490
|
# will be disabled when default_snat_status is disabled. When disabled is set
|
3269
3491
|
# to false, default IP masquerade rules will be applied to the nodes to
|
3270
3492
|
# prevent sNAT on cluster internal traffic.
|
3493
|
+
# @!attribute [rw] enable_l4ilb_subsetting
|
3494
|
+
# @return [::Boolean]
|
3495
|
+
# Whether L4ILB Subsetting is enabled for this cluster.
|
3271
3496
|
# @!attribute [rw] datapath_provider
|
3272
3497
|
# @return [::Google::Cloud::Container::V1beta1::DatapathProvider]
|
3273
3498
|
# The desired datapath provider for this cluster. By default, uses the
|
3274
3499
|
# IPTables-based kube-proxy implementation.
|
3500
|
+
# @!attribute [rw] private_ipv6_google_access
|
3501
|
+
# @return [::Google::Cloud::Container::V1beta1::PrivateIPv6GoogleAccess]
|
3502
|
+
# The desired state of IPv6 connectivity to Google Services.
|
3503
|
+
# By default, no private IPv6 access to or from Google Services (all access
|
3504
|
+
# will be via IPv4)
|
3505
|
+
# @!attribute [rw] dns_config
|
3506
|
+
# @return [::Google::Cloud::Container::V1beta1::DNSConfig]
|
3507
|
+
# DNSConfig contains clusterDNS config for this cluster.
|
3508
|
+
# @!attribute [rw] service_external_ips_config
|
3509
|
+
# @return [::Google::Cloud::Container::V1beta1::ServiceExternalIPsConfig]
|
3510
|
+
# ServiceExternalIPsConfig specifies if services with externalIPs field are
|
3511
|
+
# blocked or not.
|
3275
3512
|
class NetworkConfig
|
3276
3513
|
include ::Google::Protobuf::MessageExts
|
3277
3514
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3278
3515
|
end
|
3279
3516
|
|
3517
|
+
# Config to block services with externalIPs field.
|
3518
|
+
# @!attribute [rw] enabled
|
3519
|
+
# @return [::Boolean]
|
3520
|
+
# Whether Services with ExternalIPs field are allowed or not.
|
3521
|
+
class ServiceExternalIPsConfig
|
3522
|
+
include ::Google::Protobuf::MessageExts
|
3523
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3524
|
+
end
|
3525
|
+
|
3280
3526
|
# ListUsableSubnetworksRequest requests the list of usable subnetworks.
|
3281
3527
|
# available to a user for creating clusters.
|
3282
3528
|
# @!attribute [rw] parent
|
@@ -3416,6 +3662,55 @@ module Google
|
|
3416
3662
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3417
3663
|
end
|
3418
3664
|
|
3665
|
+
# ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer
|
3666
|
+
# subsetting on this cluster.
|
3667
|
+
# @!attribute [rw] enabled
|
3668
|
+
# @return [::Boolean]
|
3669
|
+
# Enables l4 ILB subsetting for this cluster
|
3670
|
+
class ILBSubsettingConfig
|
3671
|
+
include ::Google::Protobuf::MessageExts
|
3672
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3673
|
+
end
|
3674
|
+
|
3675
|
+
# DNSConfig contains the desired set of options for configuring clusterDNS.
|
3676
|
+
# @!attribute [rw] cluster_dns
|
3677
|
+
# @return [::Google::Cloud::Container::V1beta1::DNSConfig::Provider]
|
3678
|
+
# cluster_dns indicates which in-cluster DNS provider should be used.
|
3679
|
+
# @!attribute [rw] cluster_dns_scope
|
3680
|
+
# @return [::Google::Cloud::Container::V1beta1::DNSConfig::DNSScope]
|
3681
|
+
# cluster_dns_scope indicates the scope of access to cluster DNS records.
|
3682
|
+
# @!attribute [rw] cluster_dns_domain
|
3683
|
+
# @return [::String]
|
3684
|
+
# cluster_dns_domain is the suffix used for all cluster service records.
|
3685
|
+
class DNSConfig
|
3686
|
+
include ::Google::Protobuf::MessageExts
|
3687
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3688
|
+
|
3689
|
+
# Provider lists the various in-cluster DNS providers.
|
3690
|
+
module Provider
|
3691
|
+
# Default value
|
3692
|
+
PROVIDER_UNSPECIFIED = 0
|
3693
|
+
|
3694
|
+
# Use GKE default DNS provider(kube-dns) for DNS resolution.
|
3695
|
+
PLATFORM_DEFAULT = 1
|
3696
|
+
|
3697
|
+
# Use CloudDNS for DNS resolution.
|
3698
|
+
CLOUD_DNS = 2
|
3699
|
+
end
|
3700
|
+
|
3701
|
+
# DNSScope lists the various scopes of access to cluster DNS records.
|
3702
|
+
module DNSScope
|
3703
|
+
# Default value, will be inferred as cluster scope.
|
3704
|
+
DNS_SCOPE_UNSPECIFIED = 0
|
3705
|
+
|
3706
|
+
# DNS records are accessible from within the cluster.
|
3707
|
+
CLUSTER_SCOPE = 1
|
3708
|
+
|
3709
|
+
# DNS records are accessible from within the VPC.
|
3710
|
+
VPC_SCOPE = 2
|
3711
|
+
end
|
3712
|
+
end
|
3713
|
+
|
3419
3714
|
# Constraints applied to pods.
|
3420
3715
|
# @!attribute [rw] max_pods_per_node
|
3421
3716
|
# @return [::Integer]
|
@@ -3441,6 +3736,23 @@ module Google
|
|
3441
3736
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3442
3737
|
end
|
3443
3738
|
|
3739
|
+
# Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
|
3740
|
+
# @!attribute [rw] enable_certificates
|
3741
|
+
# @return [::Google::Protobuf::BoolValue]
|
3742
|
+
# enable_certificates controls issuance of workload mTLS certificates.
|
3743
|
+
#
|
3744
|
+
# If set, the GKE Workload Identity Certificates controller and node agent
|
3745
|
+
# will be deployed in the cluster, which can then be configured by creating a
|
3746
|
+
# WorkloadCertificateConfig Custom Resource.
|
3747
|
+
#
|
3748
|
+
# Requires Workload Identity
|
3749
|
+
# ({::Google::Cloud::Container::V1beta1::WorkloadIdentityConfig#workload_pool workload_pool}
|
3750
|
+
# must be non-empty).
|
3751
|
+
class WorkloadCertificates
|
3752
|
+
include ::Google::Protobuf::MessageExts
|
3753
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3754
|
+
end
|
3755
|
+
|
3444
3756
|
# Configuration of etcd encryption.
|
3445
3757
|
# @!attribute [rw] state
|
3446
3758
|
# @return [::Google::Cloud::Container::V1beta1::DatabaseEncryption::State]
|
@@ -3512,6 +3824,15 @@ module Google
|
|
3512
3824
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3513
3825
|
end
|
3514
3826
|
|
3827
|
+
# Configuration of gVNIC feature.
|
3828
|
+
# @!attribute [rw] enabled
|
3829
|
+
# @return [::Boolean]
|
3830
|
+
# Whether gVNIC features are enabled in the node pool.
|
3831
|
+
class VirtualNIC
|
3832
|
+
include ::Google::Protobuf::MessageExts
|
3833
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3834
|
+
end
|
3835
|
+
|
3515
3836
|
# GetOpenIDConfigRequest gets the OIDC discovery document for the
|
3516
3837
|
# cluster. See the OpenID Connect Discovery 1.0 specification for details.
|
3517
3838
|
# @!attribute [rw] parent
|
@@ -3665,6 +3986,15 @@ module Google
|
|
3665
3986
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3666
3987
|
end
|
3667
3988
|
|
3989
|
+
# Autopilot is the configuration for Autopilot settings on the cluster.
|
3990
|
+
# @!attribute [rw] enabled
|
3991
|
+
# @return [::Boolean]
|
3992
|
+
# Enable Autopilot
|
3993
|
+
class Autopilot
|
3994
|
+
include ::Google::Protobuf::MessageExts
|
3995
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3996
|
+
end
|
3997
|
+
|
3668
3998
|
# NotificationConfig is the configuration of notifications.
|
3669
3999
|
# @!attribute [rw] pubsub
|
3670
4000
|
# @return [::Google::Cloud::Container::V1beta1::NotificationConfig::PubSub]
|
@@ -3702,28 +4032,139 @@ module Google
|
|
3702
4032
|
# a resource is upgrading.
|
3703
4033
|
# @!attribute [rw] resource_type
|
3704
4034
|
# @return [::Google::Cloud::Container::V1beta1::UpgradeResourceType]
|
3705
|
-
#
|
4035
|
+
# The resource type that is upgrading.
|
3706
4036
|
# @!attribute [rw] operation
|
3707
4037
|
# @return [::String]
|
3708
|
-
#
|
4038
|
+
# The operation associated with this upgrade.
|
3709
4039
|
# @!attribute [rw] operation_start_time
|
3710
4040
|
# @return [::Google::Protobuf::Timestamp]
|
3711
|
-
#
|
4041
|
+
# The time when the operation was started.
|
3712
4042
|
# @!attribute [rw] current_version
|
3713
4043
|
# @return [::String]
|
3714
|
-
#
|
4044
|
+
# The current version before the upgrade.
|
3715
4045
|
# @!attribute [rw] target_version
|
3716
4046
|
# @return [::String]
|
3717
|
-
#
|
4047
|
+
# The target version for the upgrade.
|
3718
4048
|
# @!attribute [rw] resource
|
3719
4049
|
# @return [::String]
|
3720
|
-
# Optional
|
4050
|
+
# Optional relative path to the resource. For example in node pool upgrades,
|
3721
4051
|
# the relative path of the node pool.
|
3722
4052
|
class UpgradeEvent
|
3723
4053
|
include ::Google::Protobuf::MessageExts
|
3724
4054
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
3725
4055
|
end
|
3726
4056
|
|
4057
|
+
# UpgradeAvailableEvent is a notification sent to customers when a new
|
4058
|
+
# available version is released.
|
4059
|
+
# @!attribute [rw] version
|
4060
|
+
# @return [::String]
|
4061
|
+
# The release version available for upgrade.
|
4062
|
+
# @!attribute [rw] resource_type
|
4063
|
+
# @return [::Google::Cloud::Container::V1beta1::UpgradeResourceType]
|
4064
|
+
# The resource type of the release version.
|
4065
|
+
# @!attribute [rw] release_channel
|
4066
|
+
# @return [::Google::Cloud::Container::V1beta1::ReleaseChannel]
|
4067
|
+
# The release channel of the version. If empty, it means a non-channel
|
4068
|
+
# release.
|
4069
|
+
# @!attribute [rw] resource
|
4070
|
+
# @return [::String]
|
4071
|
+
# Optional relative path to the resource. For example, the relative path of
|
4072
|
+
# the node pool.
|
4073
|
+
# @!attribute [rw] windows_versions
|
4074
|
+
# @return [::Google::Cloud::Container::V1beta1::WindowsVersions]
|
4075
|
+
# Windows node versions info.
|
4076
|
+
class UpgradeAvailableEvent
|
4077
|
+
include ::Google::Protobuf::MessageExts
|
4078
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
4079
|
+
end
|
4080
|
+
|
4081
|
+
# IdentityServiceConfig is configuration for Identity Service which allows
|
4082
|
+
# customers to use external identity providers with the K8S API
|
4083
|
+
# @!attribute [rw] enabled
|
4084
|
+
# @return [::Boolean]
|
4085
|
+
# Whether to enable the Identity Service component
|
4086
|
+
class IdentityServiceConfig
|
4087
|
+
include ::Google::Protobuf::MessageExts
|
4088
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
4089
|
+
end
|
4090
|
+
|
4091
|
+
# LoggingConfig is cluster logging configuration.
|
4092
|
+
# @!attribute [rw] component_config
|
4093
|
+
# @return [::Google::Cloud::Container::V1beta1::LoggingComponentConfig]
|
4094
|
+
# Logging components configuration
|
4095
|
+
class LoggingConfig
|
4096
|
+
include ::Google::Protobuf::MessageExts
|
4097
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
4098
|
+
end
|
4099
|
+
|
4100
|
+
# LoggingComponentConfig is cluster logging component configuration.
|
4101
|
+
# @!attribute [rw] enable_components
|
4102
|
+
# @return [::Array<::Google::Cloud::Container::V1beta1::LoggingComponentConfig::Component>]
|
4103
|
+
# Select components to collect logs. An empty set would disable all logging.
|
4104
|
+
class LoggingComponentConfig
|
4105
|
+
include ::Google::Protobuf::MessageExts
|
4106
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
4107
|
+
|
4108
|
+
# GKE components exposing logs
|
4109
|
+
module Component
|
4110
|
+
# Default value. This shouldn't be used.
|
4111
|
+
COMPONENT_UNSPECIFIED = 0
|
4112
|
+
|
4113
|
+
# system components
|
4114
|
+
SYSTEM_COMPONENTS = 1
|
4115
|
+
|
4116
|
+
# workloads
|
4117
|
+
WORKLOADS = 2
|
4118
|
+
end
|
4119
|
+
end
|
4120
|
+
|
4121
|
+
# MonitoringConfig is cluster monitoring configuration.
|
4122
|
+
# @!attribute [rw] component_config
|
4123
|
+
# @return [::Google::Cloud::Container::V1beta1::MonitoringComponentConfig]
|
4124
|
+
# Monitoring components configuration
|
4125
|
+
class MonitoringConfig
|
4126
|
+
include ::Google::Protobuf::MessageExts
|
4127
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
4128
|
+
end
|
4129
|
+
|
4130
|
+
# MonitoringComponentConfig is cluster monitoring component configuration.
|
4131
|
+
# @!attribute [rw] enable_components
|
4132
|
+
# @return [::Array<::Google::Cloud::Container::V1beta1::MonitoringComponentConfig::Component>]
|
4133
|
+
# Select components to collect metrics. An empty set would disable all
|
4134
|
+
# monitoring.
|
4135
|
+
class MonitoringComponentConfig
|
4136
|
+
include ::Google::Protobuf::MessageExts
|
4137
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
4138
|
+
|
4139
|
+
# GKE components exposing metrics
|
4140
|
+
module Component
|
4141
|
+
# Default value. This shouldn't be used.
|
4142
|
+
COMPONENT_UNSPECIFIED = 0
|
4143
|
+
|
4144
|
+
# system components
|
4145
|
+
SYSTEM_COMPONENTS = 1
|
4146
|
+
|
4147
|
+
# workloads
|
4148
|
+
WORKLOADS = 2
|
4149
|
+
end
|
4150
|
+
end
|
4151
|
+
|
4152
|
+
# PrivateIPv6GoogleAccess controls whether and how the pods can communicate
|
4153
|
+
# with Google Services through gRPC over IPv6.
|
4154
|
+
module PrivateIPv6GoogleAccess
|
4155
|
+
# Default value. Same as DISABLED
|
4156
|
+
PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0
|
4157
|
+
|
4158
|
+
# No private access to or from Google Services
|
4159
|
+
PRIVATE_IPV6_GOOGLE_ACCESS_DISABLED = 1
|
4160
|
+
|
4161
|
+
# Enables private IPv6 access to Google Services from GKE
|
4162
|
+
PRIVATE_IPV6_GOOGLE_ACCESS_TO_GOOGLE = 2
|
4163
|
+
|
4164
|
+
# Enables priate IPv6 access to and from Google Services
|
4165
|
+
PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3
|
4166
|
+
end
|
4167
|
+
|
3727
4168
|
# The datapath provider selects the implementation of the Kubernetes networking
|
3728
4169
|
# // model for service resolution and network policy enforcement.
|
3729
4170
|
module DatapathProvider
|