Class: Google::Apis::ComputeBeta::AccessConfig
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::AccessConfig
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/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
Applies to ipv6AccessConfigs only.
-
#external_ipv6_prefix_length ⇒ Fixnum
Applies to ipv6AccessConfigs only.
-
#kind ⇒ String
Output only.
-
#name ⇒ String
The name of this access configuration.
-
#nat_ip ⇒ String
Applies to accessConfigs (IPv4) only.
-
#network_tier ⇒ String
This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM,STANDARD.
-
#public_ptr_domain_name ⇒ String
The DNS domain name for the public PTR record.
-
#security_policy ⇒ String
The resource URL for the security policy associated with this access config.
-
#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.
692 693 694 |
# File 'lib/google/apis/compute_beta/classes.rb', line 692 def initialize(**args) update!(**args) end |
Instance Attribute Details
#external_ipv6 ⇒ String
Applies to ipv6AccessConfigs only.
The first IPv6 address of the external IPv6 range associated
with this instance, prefix length is stored inexternalIpv6PrefixLength in
ipv6AccessConfig. To
use a static external IP address, it must be unused and in the same region
as the instance's zone. If not specified, Google Cloud will automatically
assign an external IPv6 address from the instance's subnetwork.
Corresponds to the JSON property externalIpv6
617 618 619 |
# File 'lib/google/apis/compute_beta/classes.rb', line 617 def external_ipv6 @external_ipv6 end |
#external_ipv6_prefix_length ⇒ Fixnum
Applies to ipv6AccessConfigs only. The prefix length of the
external IPv6 range.
Corresponds to the JSON property externalIpv6PrefixLength
623 624 625 |
# File 'lib/google/apis/compute_beta/classes.rb', line 623 def external_ipv6_prefix_length @external_ipv6_prefix_length end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Alwayscompute#accessConfig
for access configs.
Corresponds to the JSON property kind
629 630 631 |
# File 'lib/google/apis/compute_beta/classes.rb', line 629 def kind @kind end |
#name ⇒ String
The name of this access configuration. In accessConfigs
(IPv4), the default and recommended name is External NAT, but
you can use any arbitrary string, such as My external IP orNetwork Access. In
ipv6AccessConfigs, the
recommend name is External IPv6.
Corresponds to the JSON property name
638 639 640 |
# File 'lib/google/apis/compute_beta/classes.rb', line 638 def name @name end |
#nat_ip ⇒ String
Applies to accessConfigs (IPv4) only. Anexternal 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
648 649 650 |
# File 'lib/google/apis/compute_beta/classes.rb', line 648 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
659 660 661 |
# File 'lib/google/apis/compute_beta/classes.rb', line 659 def network_tier @network_tier 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
inaccessConfig. If this field is unspecified inipv6AccessConfig, a default PTR
record will be created for
first IP in associated external IPv6 range.
Corresponds to the JSON property publicPtrDomainName
668 669 670 |
# File 'lib/google/apis/compute_beta/classes.rb', line 668 def public_ptr_domain_name @public_ptr_domain_name end |
#security_policy ⇒ String
The resource URL for the security policy associated with this access
config.
Corresponds to the JSON property securityPolicy
674 675 676 |
# File 'lib/google/apis/compute_beta/classes.rb', line 674 def security_policy @security_policy 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
682 683 684 |
# File 'lib/google/apis/compute_beta/classes.rb', line 682 def set_public_ptr @set_public_ptr end |
#type ⇒ String
The type of configuration. In accessConfigs (IPv4), the
default and only option is ONE_TO_ONE_NAT. Inipv6AccessConfigs, the default
and only option isDIRECT_IPV6.
Corresponds to the JSON property type
690 691 692 |
# File 'lib/google/apis/compute_beta/classes.rb', line 690 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
697 698 699 700 701 702 703 704 705 706 707 708 |
# File 'lib/google/apis/compute_beta/classes.rb', line 697 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_ptr_domain_name = args[:public_ptr_domain_name] if args.key?(:public_ptr_domain_name) @security_policy = args[:security_policy] if args.key?(:security_policy) @set_public_ptr = args[:set_public_ptr] if args.key?(:set_public_ptr) @type = args[:type] if args.key?(:type) end |