Class: Google::Apis::ContainerV1::IpAllocationPolicy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/container_v1/classes.rb,
lib/google/apis/container_v1/representations.rb,
lib/google/apis/container_v1/representations.rb

Overview

Configuration for controlling how IPs are allocated in the cluster.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ IpAllocationPolicy

Returns a new instance of IpAllocationPolicy.



2276
2277
2278
# File 'lib/google/apis/container_v1/classes.rb', line 2276

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cluster_ipv4_cidrString

This field is deprecated, use cluster_ipv4_cidr_block. Corresponds to the JSON property clusterIpv4Cidr

Returns:

  • (String)


2160
2161
2162
# File 'lib/google/apis/container_v1/classes.rb', line 2160

def cluster_ipv4_cidr
  @cluster_ipv4_cidr
end

#cluster_ipv4_cidr_blockString

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

Returns:

  • (String)


2172
2173
2174
# File 'lib/google/apis/container_v1/classes.rb', line 2172

def cluster_ipv4_cidr_block
  @cluster_ipv4_cidr_block
end

#cluster_secondary_range_nameString

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 is true and create_subnetwork is false. Corresponds to the JSON property clusterSecondaryRangeName

Returns:

  • (String)


2180
2181
2182
# File 'lib/google/apis/container_v1/classes.rb', line 2180

def cluster_secondary_range_name
  @cluster_secondary_range_name
end

#create_subnetworkBoolean 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

Returns:

  • (Boolean)


2186
2187
2188
# File 'lib/google/apis/container_v1/classes.rb', line 2186

def create_subnetwork
  @create_subnetwork
end

#ipv6_access_typeString

The ipv6 access type (internal or external) when create_subnetwork is true Corresponds to the JSON property ipv6AccessType

Returns:

  • (String)


2192
2193
2194
# File 'lib/google/apis/container_v1/classes.rb', line 2192

def ipv6_access_type
  @ipv6_access_type
end

#node_ipv4_cidrString

This field is deprecated, use node_ipv4_cidr_block. Corresponds to the JSON property nodeIpv4Cidr

Returns:

  • (String)


2197
2198
2199
# File 'lib/google/apis/container_v1/classes.rb', line 2197

def node_ipv4_cidr
  @node_ipv4_cidr
end

#node_ipv4_cidr_blockString

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

Returns:

  • (String)


2208
2209
2210
# File 'lib/google/apis/container_v1/classes.rb', line 2208

def node_ipv4_cidr_block
  @node_ipv4_cidr_block
end

#services_ipv4_cidrString

This field is deprecated, use services_ipv4_cidr_block. Corresponds to the JSON property servicesIpv4Cidr

Returns:

  • (String)


2213
2214
2215
# File 'lib/google/apis/container_v1/classes.rb', line 2213

def services_ipv4_cidr
  @services_ipv4_cidr
end

#services_ipv4_cidr_blockString

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

Returns:

  • (String)


2225
2226
2227
# File 'lib/google/apis/container_v1/classes.rb', line 2225

def services_ipv4_cidr_block
  @services_ipv4_cidr_block
end

#services_secondary_range_nameString

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 is true and create_subnetwork is false. Corresponds to the JSON property servicesSecondaryRangeName

Returns:

  • (String)


2233
2234
2235
# File 'lib/google/apis/container_v1/classes.rb', line 2233

def services_secondary_range_name
  @services_secondary_range_name
end

#stack_typeString

The IP stack type of the cluster Corresponds to the JSON property stackType

Returns:

  • (String)


2238
2239
2240
# File 'lib/google/apis/container_v1/classes.rb', line 2238

def stack_type
  @stack_type
end

#subnetwork_nameString

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

Returns:

  • (String)


2244
2245
2246
# File 'lib/google/apis/container_v1/classes.rb', line 2244

def subnetwork_name
  @subnetwork_name
end

#tpu_ipv4_cidr_blockString

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. Corresponds to the JSON property tpuIpv4CidrBlock

Returns:

  • (String)


2256
2257
2258
# File 'lib/google/apis/container_v1/classes.rb', line 2256

def tpu_ipv4_cidr_block
  @tpu_ipv4_cidr_block
end

#use_ip_aliasesBoolean 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

Returns:

  • (Boolean)


2264
2265
2266
# File 'lib/google/apis/container_v1/classes.rb', line 2264

def use_ip_aliases
  @use_ip_aliases
end

#use_routesBoolean 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

Returns:

  • (Boolean)


2273
2274
2275
# File 'lib/google/apis/container_v1/classes.rb', line 2273

def use_routes
  @use_routes
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
# File 'lib/google/apis/container_v1/classes.rb', line 2281

def update!(**args)
  @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_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)
  @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