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.
3156 3157 3158 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3156 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
2998 2999 3000 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 2998 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
3011 3012 3013 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3011 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
3017 3018 3019 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3017 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
3029 3030 3031 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3029 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
3037 3038 3039 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3037 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
3043 3044 3045 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3043 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
3051 3052 3053 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3051 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
3056 3057 3058 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3056 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
3061 3062 3063 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3061 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
3072 3073 3074 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3072 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
3077 3078 3079 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3077 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
3082 3083 3084 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3082 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
3094 3095 3096 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3094 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
3099 3100 3101 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3099 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
3107 3108 3109 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3107 def services_secondary_range_name @services_secondary_range_name end |
#stack_type ⇒ String
IP stack type
Corresponds to the JSON property stackType
3112 3113 3114 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3112 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
3117 3118 3119 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3117 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
3123 3124 3125 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3123 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
3136 3137 3138 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3136 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
3144 3145 3146 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3144 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
3153 3154 3155 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3153 def use_routes @use_routes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 |
# File 'lib/google/apis/container_v1beta1/classes.rb', line 3161 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 |