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
-
#additional_pod_ranges_config ⇒ Google::Apis::ContainerV1beta1::AdditionalPodRangesConfig
AdditionalPodRangesConfig is the configuration for additional pod secondary ranges supporting the ClusterUpdate message.
-
#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.
-
#default_pod_ipv4_range_utilization ⇒ Float
Output only.
-
#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.
-
#pod_cidr_overprovision_config ⇒ Google::Apis::ContainerV1beta1::PodCidrOverprovisionConfig
[PRIVATE FIELD] Config for pod CIDR size overprovisioning.
-
#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.
3190 3191 3192 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3190 def initialize(**args) update!(**args) end |
Instance Attribute Details
#additional_pod_ranges_config ⇒ Google::Apis::ContainerV1beta1::AdditionalPodRangesConfig
AdditionalPodRangesConfig is the configuration for additional pod secondary
ranges supporting the ClusterUpdate message.
Corresponds to the JSON property additionalPodRangesConfig
3032 3033 3034 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3032 def additional_pod_ranges_config @additional_pod_ranges_config end |
#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
3045 3046 3047 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3045 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
3051 3052 3053 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3051 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
3063 3064 3065 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3063 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
3071 3072 3073 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3071 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
3077 3078 3079 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3077 def create_subnetwork @create_subnetwork end |
#default_pod_ipv4_range_utilization ⇒ Float
Output only. [Output only] The utilization of the cluster default IPv4 range
for the pod. The ratio is Usage/[Total number of IPs in the secondary range],
Usage=numNodes*numZones*podIPsPerNode.
Corresponds to the JSON property defaultPodIpv4RangeUtilization
3085 3086 3087 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3085 def default_pod_ipv4_range_utilization @default_pod_ipv4_range_utilization end |
#ipv6_access_type ⇒ String
The ipv6 access type (internal or external) when create_subnetwork is true
Corresponds to the JSON property ipv6AccessType
3090 3091 3092 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3090 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
3095 3096 3097 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3095 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
3106 3107 3108 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3106 def node_ipv4_cidr_block @node_ipv4_cidr_block end |
#pod_cidr_overprovision_config ⇒ Google::Apis::ContainerV1beta1::PodCidrOverprovisionConfig
[PRIVATE FIELD] Config for pod CIDR size overprovisioning.
Corresponds to the JSON property podCidrOverprovisionConfig
3111 3112 3113 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3111 def pod_cidr_overprovision_config @pod_cidr_overprovision_config end |
#services_ipv4_cidr ⇒ String
This field is deprecated, use services_ipv4_cidr_block.
Corresponds to the JSON property servicesIpv4Cidr
3116 3117 3118 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3116 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
3128 3129 3130 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3128 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
3133 3134 3135 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3133 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
3141 3142 3143 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3141 def services_secondary_range_name @services_secondary_range_name end |
#stack_type ⇒ String
IP stack type
Corresponds to the JSON property stackType
3146 3147 3148 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3146 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
3151 3152 3153 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3151 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
3157 3158 3159 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3157 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
3170 3171 3172 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3170 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
3178 3179 3180 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3178 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
3187 3188 3189 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3187 def use_routes @use_routes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3195 def update!(**args) @additional_pod_ranges_config = args[:additional_pod_ranges_config] if args.key?(:additional_pod_ranges_config) @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) @default_pod_ipv4_range_utilization = args[:default_pod_ipv4_range_utilization] if args.key?(:default_pod_ipv4_range_utilization) @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) @pod_cidr_overprovision_config = args[:pod_cidr_overprovision_config] if args.key?(:pod_cidr_overprovision_config) @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 |