Class: Google::Apis::ContainerV1beta1::IpAllocationPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1beta1::IpAllocationPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/container_v1beta1/classes.rb,
lib/google/apis/container_v1beta1/representations.rb,
lib/google/apis/container_v1beta1/representations.rb
Overview
Configuration for controlling how IPs are allocated in the cluster.
Instance Attribute Summary collapse
-
#allow_route_overlap ⇒ Boolean
(also: #allow_route_overlap?)
If true, allow allocation of cluster CIDR ranges that overlap with certain kinds of network routes.
-
#cluster_ipv4_cidr ⇒ String
This field is deprecated, use cluster_ipv4_cidr_block.
-
#cluster_ipv4_cidr_block ⇒ String
The IP address range for the cluster pod IPs.
-
#cluster_secondary_range_name ⇒ String
The name of the secondary range to be used for the cluster CIDR block.
-
#create_subnetwork ⇒ Boolean
(also: #create_subnetwork?)
Whether a new subnetwork will be created automatically for the cluster.
-
#ipv6_access_type ⇒ String
The ipv6 access type (internal or external) when create_subnetwork is true Corresponds to the JSON property
ipv6AccessType. -
#node_ipv4_cidr ⇒ String
This field is deprecated, use node_ipv4_cidr_block.
-
#node_ipv4_cidr_block ⇒ String
The IP address range of the instance IPs in this cluster.
-
#services_ipv4_cidr ⇒ String
This field is deprecated, use services_ipv4_cidr_block.
-
#services_ipv4_cidr_block ⇒ String
The IP address range of the services IPs in this cluster.
-
#services_ipv6_cidr_block ⇒ String
Output only.
-
#services_secondary_range_name ⇒ String
The name of the secondary range to be used as for the services CIDR block.
-
#stack_type ⇒ String
IP stack type Corresponds to the JSON property
stackType. -
#subnet_ipv6_cidr_block ⇒ String
Output only.
-
#subnetwork_name ⇒ String
A custom subnetwork name to be used if
create_subnetworkis true. -
#tpu_ipv4_cidr_block ⇒ String
The IP address range of the Cloud TPUs in this cluster.
-
#use_ip_aliases ⇒ Boolean
(also: #use_ip_aliases?)
Whether alias IPs will be used for pod IPs in the cluster.
-
#use_routes ⇒ Boolean
(also: #use_routes?)
Whether routes will be used for pod IPs in the cluster.
Instance Method Summary collapse
-
#initialize(**args) ⇒ IpAllocationPolicy
constructor
A new instance of IpAllocationPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ IpAllocationPolicy
Returns a new instance of IpAllocationPolicy.
2473 2474 2475 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2473 def initialize(**args) update!(**args) end |
Instance Attribute Details
#allow_route_overlap ⇒ Boolean Also known as: allow_route_overlap?
If true, allow allocation of cluster CIDR ranges that overlap with certain
kinds of network routes. By default we do not allow cluster CIDR ranges to
intersect with any user declared routes. With allow_route_overlap == true, we
allow overlapping with CIDR ranges that are larger than the cluster CIDR range.
If this field is set to true, then cluster and services CIDRs must be fully-
specified (e.g. 10.96.0.0/14, but not /14), which means: 1) When
use_ip_aliases is true, cluster_ipv4_cidr_block and
services_ipv4_cidr_block must be fully-specified. 2) When use_ip_aliases is
false, cluster.cluster_ipv4_cidr muse be fully-specified.
Corresponds to the JSON property allowRouteOverlap
2340 2341 2342 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2340 def allow_route_overlap @allow_route_overlap end |
#cluster_ipv4_cidr ⇒ String
This field is deprecated, use cluster_ipv4_cidr_block.
Corresponds to the JSON property clusterIpv4Cidr
2346 2347 2348 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2346 def cluster_ipv4_cidr @cluster_ipv4_cidr end |
#cluster_ipv4_cidr_block ⇒ String
The IP address range for the cluster pod IPs. If this field is set, then
cluster.cluster_ipv4_cidr must be left blank. This field is only applicable
when use_ip_aliases is true. Set to blank to have a range chosen with the
default size. Set to /netmask (e.g. /14) to have a range chosen with a
specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private
networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a
specific range to use.
Corresponds to the JSON property clusterIpv4CidrBlock
2358 2359 2360 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2358 def cluster_ipv4_cidr_block @cluster_ipv4_cidr_block end |
#cluster_secondary_range_name ⇒ String
The name of the secondary range to be used for the cluster CIDR block. The
secondary range will be used for pod IP addresses. This must be an existing
secondary range associated with the cluster subnetwork. This field is only
applicable with use_ip_aliases and create_subnetwork is false.
Corresponds to the JSON property clusterSecondaryRangeName
2366 2367 2368 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2366 def cluster_secondary_range_name @cluster_secondary_range_name end |
#create_subnetwork ⇒ Boolean Also known as: create_subnetwork?
Whether a new subnetwork will be created automatically for the cluster. This
field is only applicable when use_ip_aliases is true.
Corresponds to the JSON property createSubnetwork
2372 2373 2374 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2372 def create_subnetwork @create_subnetwork end |
#ipv6_access_type ⇒ String
The ipv6 access type (internal or external) when create_subnetwork is true
Corresponds to the JSON property ipv6AccessType
2378 2379 2380 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2378 def ipv6_access_type @ipv6_access_type end |
#node_ipv4_cidr ⇒ String
This field is deprecated, use node_ipv4_cidr_block.
Corresponds to the JSON property nodeIpv4Cidr
2383 2384 2385 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2383 def node_ipv4_cidr @node_ipv4_cidr end |
#node_ipv4_cidr_block ⇒ String
The IP address range of the instance IPs in this cluster. This is applicable
only if create_subnetwork is true. Set to blank to have a range chosen with
the default size. Set to /netmask (e.g. /14) to have a range chosen with a
specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private
networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a
specific range to use.
Corresponds to the JSON property nodeIpv4CidrBlock
2394 2395 2396 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2394 def node_ipv4_cidr_block @node_ipv4_cidr_block end |
#services_ipv4_cidr ⇒ String
This field is deprecated, use services_ipv4_cidr_block.
Corresponds to the JSON property servicesIpv4Cidr
2399 2400 2401 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2399 def services_ipv4_cidr @services_ipv4_cidr end |
#services_ipv4_cidr_block ⇒ String
The IP address range of the services IPs in this cluster. If blank, a range
will be automatically chosen with the default size. This field is only
applicable when use_ip_aliases is true. Set to blank to have a range chosen
with the default size. Set to /netmask (e.g. /14) to have a range chosen
with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-
1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
to pick a specific range to use.
Corresponds to the JSON property servicesIpv4CidrBlock
2411 2412 2413 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2411 def services_ipv4_cidr_block @services_ipv4_cidr_block end |
#services_ipv6_cidr_block ⇒ String
Output only. [Output only] The services IPv6 CIDR block for the cluster.
Corresponds to the JSON property servicesIpv6CidrBlock
2416 2417 2418 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2416 def services_ipv6_cidr_block @services_ipv6_cidr_block end |
#services_secondary_range_name ⇒ String
The name of the secondary range to be used as for the services CIDR block. The
secondary range will be used for service ClusterIPs. This must be an existing
secondary range associated with the cluster subnetwork. This field is only
applicable with use_ip_aliases and create_subnetwork is false.
Corresponds to the JSON property servicesSecondaryRangeName
2424 2425 2426 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2424 def services_secondary_range_name @services_secondary_range_name end |
#stack_type ⇒ String
IP stack type
Corresponds to the JSON property stackType
2429 2430 2431 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2429 def stack_type @stack_type end |
#subnet_ipv6_cidr_block ⇒ String
Output only. [Output only] The subnet's IPv6 CIDR block used by nodes and pods.
Corresponds to the JSON property subnetIpv6CidrBlock
2434 2435 2436 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2434 def subnet_ipv6_cidr_block @subnet_ipv6_cidr_block end |
#subnetwork_name ⇒ String
A custom subnetwork name to be used if create_subnetwork is true. If this
field is empty, then an automatic name will be chosen for the new subnetwork.
Corresponds to the JSON property subnetworkName
2440 2441 2442 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2440 def subnetwork_name @subnetwork_name end |
#tpu_ipv4_cidr_block ⇒ String
The IP address range of the Cloud TPUs in this cluster. If unspecified, a
range will be automatically chosen with the default size. This field is only
applicable when use_ip_aliases is true. If unspecified, the range will use
the default size. Set to /netmask (e.g. /14) to have a range chosen with a
specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private
networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a
specific range to use. This field is deprecated, use cluster.tpu_config.
ipv4_cidr_block instead.
Corresponds to the JSON property tpuIpv4CidrBlock
2453 2454 2455 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2453 def tpu_ipv4_cidr_block @tpu_ipv4_cidr_block end |
#use_ip_aliases ⇒ Boolean Also known as: use_ip_aliases?
Whether alias IPs will be used for pod IPs in the cluster. This is used in
conjunction with use_routes. It cannot be true if use_routes is true. If both
use_ip_aliases and use_routes are false, then the server picks the default IP
allocation mode
Corresponds to the JSON property useIpAliases
2461 2462 2463 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2461 def use_ip_aliases @use_ip_aliases end |
#use_routes ⇒ Boolean Also known as: use_routes?
Whether routes will be used for pod IPs in the cluster. This is used in
conjunction with use_ip_aliases. It cannot be true if use_ip_aliases is true.
If both use_ip_aliases and use_routes are false, then the server picks the
default IP allocation mode
Corresponds to the JSON property useRoutes
2470 2471 2472 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2470 def use_routes @use_routes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2478 def update!(**args) @allow_route_overlap = args[:allow_route_overlap] if args.key?(:allow_route_overlap) @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr) @cluster_ipv4_cidr_block = args[:cluster_ipv4_cidr_block] if args.key?(:cluster_ipv4_cidr_block) @cluster_secondary_range_name = args[:cluster_secondary_range_name] if args.key?(:cluster_secondary_range_name) @create_subnetwork = args[:create_subnetwork] if args.key?(:create_subnetwork) @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type) @node_ipv4_cidr = args[:node_ipv4_cidr] if args.key?(:node_ipv4_cidr) @node_ipv4_cidr_block = args[:node_ipv4_cidr_block] if args.key?(:node_ipv4_cidr_block) @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr) @services_ipv4_cidr_block = args[:services_ipv4_cidr_block] if args.key?(:services_ipv4_cidr_block) @services_ipv6_cidr_block = args[:services_ipv6_cidr_block] if args.key?(:services_ipv6_cidr_block) @services_secondary_range_name = args[:services_secondary_range_name] if args.key?(:services_secondary_range_name) @stack_type = args[:stack_type] if args.key?(:stack_type) @subnet_ipv6_cidr_block = args[:subnet_ipv6_cidr_block] if args.key?(:subnet_ipv6_cidr_block) @subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name) @tpu_ipv4_cidr_block = args[:tpu_ipv4_cidr_block] if args.key?(:tpu_ipv4_cidr_block) @use_ip_aliases = args[:use_ip_aliases] if args.key?(:use_ip_aliases) @use_routes = args[:use_routes] if args.key?(:use_routes) end |