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
Applies to ipv6AccessConfigs only.
-
#external_ipv6_prefix_length ⇒ Fixnum
Applies to ipv6AccessConfigs only.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#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_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.
-
#security_policy ⇒ String
[Output Only] The resource URL for the security policy associated with this access config.
-
#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.
610 611 612 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 610 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 in
externalIpv6PrefixLength 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
527 528 529 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 527 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
533 534 535 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 533 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
539 540 541 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 539 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 or Network Access. In ipv6AccessConfigs, the recommend
name is External IPv6.
Corresponds to the JSON property name
547 548 549 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 547 def name @name end |
#nat_ip ⇒ String
Applies to accessConfigs (IPv4) only. 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
556 557 558 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 556 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
566 567 568 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 566 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
571 572 573 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 571 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
579 580 581 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 579 def public_ptr_domain_name @public_ptr_domain_name end |
#security_policy ⇒ String
[Output Only] The resource URL for the security policy associated with this
access config.
Corresponds to the JSON property securityPolicy
585 586 587 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 585 def security_policy @security_policy 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
591 592 593 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 591 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
600 601 602 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 600 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. In ipv6AccessConfigs, the default and only option is
DIRECT_IPV6.
Corresponds to the JSON property type
608 609 610 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 608 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
615 616 617 618 619 620 621 622 623 624 625 626 627 628 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 615 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) @security_policy = args[:security_policy] if args.key?(:security_policy) @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 |