Class: Google::Apis::ComputeAlpha::AccessConfig
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::AccessConfig
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
An access configuration attached to an instance's network interface. Only one access config per instance is supported.
Instance Attribute Summary collapse
-
#external_ipv6 ⇒ String
The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig.
-
#external_ipv6_prefix_length ⇒ Fixnum
The prefix length of the external IPv6 range.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#name ⇒ String
The name of this access configuration.
-
#nat_ip ⇒ String
An external IP address associated with this instance.
-
#network_tier ⇒ String
This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD.
-
#public_dns_name ⇒ String
[Output Only] The public DNS domain name for the instance.
-
#public_ptr_domain_name ⇒ String
The DNS domain name for the public PTR record.
-
#set_public_dns ⇒ Boolean
(also: #set_public_dns?)
Specifies whether a public DNS 'A' record should be created for the external IP address of this access configuration.
-
#set_public_ptr ⇒ Boolean
(also: #set_public_ptr?)
Specifies whether a public DNS 'PTR' record should be created to map the external IP address of the instance to a DNS domain name.
-
#type ⇒ String
The type of configuration.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AccessConfig
constructor
A new instance of AccessConfig.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ AccessConfig
Returns a new instance of AccessConfig.
552 553 554 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 552 def initialize(**args) update!(**args) end |
Instance Attribute Details
#external_ipv6 ⇒ String
The first IPv6 address of the external IPv6 range associated with this
instance, prefix length is stored in externalIpv6PrefixLength in
ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork
associated with the instance will be allocated dynamically.
Corresponds to the JSON property externalIpv6
479 480 481 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 479 def external_ipv6 @external_ipv6 end |
#external_ipv6_prefix_length ⇒ Fixnum
The prefix length of the external IPv6 range.
Corresponds to the JSON property externalIpv6PrefixLength
484 485 486 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 484 def external_ipv6_prefix_length @external_ipv6_prefix_length end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#accessConfig for access
configs.
Corresponds to the JSON property kind
490 491 492 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 490 def kind @kind end |
#name ⇒ String
The name of this access configuration. The default and recommended name is
External NAT, but you can use any arbitrary string, such as My external IP or
Network Access.
Corresponds to the JSON property name
497 498 499 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 497 def name @name end |
#nat_ip ⇒ String
An external IP address associated with this instance. Specify an unused static
external IP address available to the project or leave this field undefined to
use an IP from a shared ephemeral IP address pool. If you specify a static
external IP address, it must live in the same region as the zone of the
instance.
Corresponds to the JSON property natIP
506 507 508 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 506 def nat_ip @nat_ip end |
#network_tier ⇒ String
This signifies the networking tier used for configuring this access
configuration and can only take the following values: PREMIUM, STANDARD. If an
AccessConfig is specified without a valid external IP address, an ephemeral IP
will be created with this networkTier. If an AccessConfig with a valid
external IP address is specified, it must match that of the networkTier
associated with the Address resource owning that IP.
Corresponds to the JSON property networkTier
516 517 518 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 516 def network_tier @network_tier end |
#public_dns_name ⇒ String
[Output Only] The public DNS domain name for the instance.
Corresponds to the JSON property publicDnsName
521 522 523 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 521 def public_dns_name @public_dns_name end |
#public_ptr_domain_name ⇒ String
The DNS domain name for the public PTR record. You can set this field only if
the setPublicPtr
field is enabled in accessConfig. If this field is
unspecified in ipv6AccessConfig, a default PTR record will be createc for
first IP in associated external IPv6 range.
Corresponds to the JSON property publicPtrDomainName
529 530 531 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 529 def public_ptr_domain_name @public_ptr_domain_name end |
#set_public_dns ⇒ Boolean Also known as: set_public_dns?
Specifies whether a public DNS 'A' record should be created for the external
IP address of this access configuration.
Corresponds to the JSON property setPublicDns
535 536 537 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 535 def set_public_dns @set_public_dns end |
#set_public_ptr ⇒ Boolean Also known as: set_public_ptr?
Specifies whether a public DNS 'PTR' record should be created to map the
external IP address of the instance to a DNS domain name. This field is not
used in ipv6AccessConfig. A default PTR record will be created if the VM has
external IPv6 range associated.
Corresponds to the JSON property setPublicPtr
544 545 546 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 544 def set_public_ptr @set_public_ptr end |
#type ⇒ String
The type of configuration. The default and only option is ONE_TO_ONE_NAT.
Corresponds to the JSON property type
550 551 552 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 550 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
557 558 559 560 561 562 563 564 565 566 567 568 569 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 557 def update!(**args) @external_ipv6 = args[:external_ipv6] if args.key?(:external_ipv6) @external_ipv6_prefix_length = args[:external_ipv6_prefix_length] if args.key?(:external_ipv6_prefix_length) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @nat_ip = args[:nat_ip] if args.key?(:nat_ip) @network_tier = args[:network_tier] if args.key?(:network_tier) @public_dns_name = args[:public_dns_name] if args.key?(:public_dns_name) @public_ptr_domain_name = args[:public_ptr_domain_name] if args.key?(:public_ptr_domain_name) @set_public_dns = args[:set_public_dns] if args.key?(:set_public_dns) @set_public_ptr = args[:set_public_ptr] if args.key?(:set_public_ptr) @type = args[:type] if args.key?(:type) end |