Class: Google::Cloud::Deploy::V1::KubernetesConfig

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/deploy/v1/cloud_deploy.rb

Overview

KubernetesConfig contains the Kubernetes runtime configuration.

Defined Under Namespace

Classes: GatewayServiceMesh, ServiceNetworking

Instance Attribute Summary collapse

Instance Attribute Details

#gateway_service_mesh::Google::Cloud::Deploy::V1::KubernetesConfig::GatewayServiceMesh

Returns Optional. Kubernetes Gateway API service mesh configuration.

Note: The following fields are mutually exclusive: gateway_service_mesh, service_networking. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:



328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 328

class KubernetesConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Information about the Kubernetes Gateway API service mesh configuration.
  # @!attribute [rw] http_route
  #   @return [::String]
  #     Required. Name of the Gateway API HTTPRoute.
  # @!attribute [rw] service
  #   @return [::String]
  #     Required. Name of the Kubernetes Service.
  # @!attribute [rw] deployment
  #   @return [::String]
  #     Required. Name of the Kubernetes Deployment whose traffic is managed by
  #     the specified HTTPRoute and Service.
  # @!attribute [rw] route_update_wait_time
  #   @return [::Google::Protobuf::Duration]
  #     Optional. The time to wait for route updates to propagate. The maximum
  #     configurable time is 3 hours, in seconds format. If unspecified, there is
  #     no wait time.
  # @!attribute [rw] stable_cutback_duration
  #   @return [::Google::Protobuf::Duration]
  #     Optional. The amount of time to migrate traffic back from the canary
  #     Service to the original Service during the stable phase deployment. If
  #     specified, must be between 15s and 3600s. If unspecified, there is no
  #     cutback time.
  # @!attribute [rw] pod_selector_label
  #   @return [::String]
  #     Optional. The label to use when selecting Pods for the Deployment and
  #     Service resources. This label must already be present in both resources.
  # @!attribute [rw] route_destinations
  #   @return [::Google::Cloud::Deploy::V1::KubernetesConfig::GatewayServiceMesh::RouteDestinations]
  #     Optional. Route destinations allow configuring the Gateway API HTTPRoute
  #     to be deployed to additional clusters. This option is available for
  #     multi-cluster service mesh set ups that require the route to exist in the
  #     clusters that call the service. If unspecified, the HTTPRoute will only
  #     be deployed to the Target cluster.
  class GatewayServiceMesh
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about route destinations for the Gateway API service mesh.
    # @!attribute [rw] destination_ids
    #   @return [::Array<::String>]
    #     Required. The clusters where the Gateway API HTTPRoute resource will be
    #     deployed to. Valid entries include the associated entities IDs
    #     configured in the Target resource and "@self" to include the Target
    #     cluster.
    # @!attribute [rw] propagate_service
    #   @return [::Boolean]
    #     Optional. Whether to propagate the Kubernetes Service to the route
    #     destination clusters. The Service will always be deployed to the Target
    #     cluster even if the HTTPRoute is not. This option may be used to
    #     facilitate successful DNS lookup in the route destination clusters. Can
    #     only be set to true if destinations are specified.
    class RouteDestinations
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information about the Kubernetes Service networking configuration.
  # @!attribute [rw] service
  #   @return [::String]
  #     Required. Name of the Kubernetes Service.
  # @!attribute [rw] deployment
  #   @return [::String]
  #     Required. Name of the Kubernetes Deployment whose traffic is managed by
  #     the specified Service.
  # @!attribute [rw] disable_pod_overprovisioning
  #   @return [::Boolean]
  #     Optional. Whether to disable Pod overprovisioning. If Pod
  #     overprovisioning is disabled then Cloud Deploy will limit the number of
  #     total Pods used for the deployment strategy to the number of Pods the
  #     Deployment has on the cluster.
  # @!attribute [rw] pod_selector_label
  #   @return [::String]
  #     Optional. The label to use when selecting Pods for the Deployment
  #     resource. This label must already be present in the Deployment.
  class ServiceNetworking
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#service_networking::Google::Cloud::Deploy::V1::KubernetesConfig::ServiceNetworking

Returns Optional. Kubernetes Service networking configuration.

Note: The following fields are mutually exclusive: service_networking, gateway_service_mesh. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:



328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
# File 'proto_docs/google/cloud/deploy/v1/cloud_deploy.rb', line 328

class KubernetesConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Information about the Kubernetes Gateway API service mesh configuration.
  # @!attribute [rw] http_route
  #   @return [::String]
  #     Required. Name of the Gateway API HTTPRoute.
  # @!attribute [rw] service
  #   @return [::String]
  #     Required. Name of the Kubernetes Service.
  # @!attribute [rw] deployment
  #   @return [::String]
  #     Required. Name of the Kubernetes Deployment whose traffic is managed by
  #     the specified HTTPRoute and Service.
  # @!attribute [rw] route_update_wait_time
  #   @return [::Google::Protobuf::Duration]
  #     Optional. The time to wait for route updates to propagate. The maximum
  #     configurable time is 3 hours, in seconds format. If unspecified, there is
  #     no wait time.
  # @!attribute [rw] stable_cutback_duration
  #   @return [::Google::Protobuf::Duration]
  #     Optional. The amount of time to migrate traffic back from the canary
  #     Service to the original Service during the stable phase deployment. If
  #     specified, must be between 15s and 3600s. If unspecified, there is no
  #     cutback time.
  # @!attribute [rw] pod_selector_label
  #   @return [::String]
  #     Optional. The label to use when selecting Pods for the Deployment and
  #     Service resources. This label must already be present in both resources.
  # @!attribute [rw] route_destinations
  #   @return [::Google::Cloud::Deploy::V1::KubernetesConfig::GatewayServiceMesh::RouteDestinations]
  #     Optional. Route destinations allow configuring the Gateway API HTTPRoute
  #     to be deployed to additional clusters. This option is available for
  #     multi-cluster service mesh set ups that require the route to exist in the
  #     clusters that call the service. If unspecified, the HTTPRoute will only
  #     be deployed to the Target cluster.
  class GatewayServiceMesh
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Information about route destinations for the Gateway API service mesh.
    # @!attribute [rw] destination_ids
    #   @return [::Array<::String>]
    #     Required. The clusters where the Gateway API HTTPRoute resource will be
    #     deployed to. Valid entries include the associated entities IDs
    #     configured in the Target resource and "@self" to include the Target
    #     cluster.
    # @!attribute [rw] propagate_service
    #   @return [::Boolean]
    #     Optional. Whether to propagate the Kubernetes Service to the route
    #     destination clusters. The Service will always be deployed to the Target
    #     cluster even if the HTTPRoute is not. This option may be used to
    #     facilitate successful DNS lookup in the route destination clusters. Can
    #     only be set to true if destinations are specified.
    class RouteDestinations
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # Information about the Kubernetes Service networking configuration.
  # @!attribute [rw] service
  #   @return [::String]
  #     Required. Name of the Kubernetes Service.
  # @!attribute [rw] deployment
  #   @return [::String]
  #     Required. Name of the Kubernetes Deployment whose traffic is managed by
  #     the specified Service.
  # @!attribute [rw] disable_pod_overprovisioning
  #   @return [::Boolean]
  #     Optional. Whether to disable Pod overprovisioning. If Pod
  #     overprovisioning is disabled then Cloud Deploy will limit the number of
  #     total Pods used for the deployment strategy to the number of Pods the
  #     Deployment has on the cluster.
  # @!attribute [rw] pod_selector_label
  #   @return [::String]
  #     Optional. The label to use when selecting Pods for the Deployment
  #     resource. This label must already be present in the Deployment.
  class ServiceNetworking
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end