Class: Google::Apis::ComputeAlpha::InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput
- 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
LINT.IfChange Parameters used to create an InterconnectAttachment. This is similar to InterconnectAttachment, but the region field used here is not output only and all other output only fields are excluded.
Instance Attribute Summary collapse
-
#admin_enabled ⇒ Boolean
(also: #admin_enabled?)
Determines whether this Attachment will carry packets.
-
#bandwidth ⇒ String
Provisioned bandwidth capacity for the interconnect attachment.
-
#candidate_cloud_router_ip_address ⇒ String
Single IPv4 address + prefix length to be configured on the cloud router interface for this interconnect attachment.
-
#candidate_cloud_router_ipv6_address ⇒ String
Single IPv6 address + prefix length to be configured on the cloud router interface for this interconnect attachment.
-
#candidate_customer_router_ip_address ⇒ String
Single IPv4 address + prefix length to be configured on the customer router interface for this interconnect attachment.
-
#candidate_customer_router_ipv6_address ⇒ String
Single IPv6 address + prefix length to be configured on the customer router interface for this interconnect attachment.
-
#candidate_ipv6_subnets ⇒ Array<String>
This field is not available.
-
#candidate_subnets ⇒ Array<String>
Input only.
-
#cloud_router_ipv6_interface_id ⇒ String
This field is not available.
-
#customer_router_ipv6_interface_id ⇒ String
This field is not available.
-
#description ⇒ String
An optional description of this resource.
-
#edge_availability_domain ⇒ String
Input only.
-
#encryption ⇒ String
Indicates the user-supplied encryption option of this VLAN attachment ( interconnectAttachment).
-
#interconnect ⇒ String
URL of the underlying Interconnect object that this attachment's traffic will traverse through.
-
#ipsec_internal_addresses ⇒ Array<String>
A list of URLs of addresses that have been reserved for the VLAN attachment.
-
#l2_forwarding ⇒ Google::Apis::ComputeAlpha::InterconnectAttachmentL2Forwarding
L2 Interconnect Attachment related configuration.
-
#mtu ⇒ Fixnum
Maximum Transmission Unit (MTU), in bytes, of packets passing through this interconnect attachment.
-
#multicast_enabled ⇒ Boolean
(also: #multicast_enabled?)
Whether or not to permit multicast traffic for this attachment.
-
#name ⇒ String
Name of the resource.
-
#pairing_key ⇒ String
[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED].
-
#partner_asn ⇒ Fixnum
Optional BGP ASN for the router supplied by a Layer 3 Partner if they configured BGP on behalf of the customer.
-
#partner_metadata ⇒ Google::Apis::ComputeAlpha::InterconnectAttachmentPartnerMetadata
Informational metadata about Partner attachments from Partners to display to customers.
-
#region ⇒ String
The region that the Attachment is in.
-
#router ⇒ String
URL of the Cloud Router to be used for dynamic routing.
-
#stack_type ⇒ String
The stack type for this interconnect attachment to identify whether the IPv6 feature is enabled or not.
-
#subnet_length ⇒ Fixnum
Input only.
-
#type ⇒ String
The type of interconnect attachment this is, which can take one of the following values: - DEDICATED: an attachment to a Dedicated Interconnect.
-
#vlan_tag8021q ⇒ Fixnum
The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093.
Instance Method Summary collapse
-
#initialize(**args) ⇒ InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput
constructor
A new instance of InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput
Returns a new instance of InterconnectAttachmentGroupsCreateMembersInterconnectAttachmentInput.
29540 29541 29542 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29540 def initialize(**args) update!(**args) end |
Instance Attribute Details
#admin_enabled ⇒ Boolean Also known as: admin_enabled?
Determines whether this Attachment will carry packets. Not present for
PARTNER_PROVIDER.
Corresponds to the JSON property adminEnabled
29315 29316 29317 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29315 def admin_enabled @admin_enabled end |
#bandwidth ⇒ String
Provisioned bandwidth capacity for the interconnect attachment. For
attachments of type DEDICATED, the user can set the bandwidth. For attachments
of type PARTNER, the Google Partner that is operating the interconnect must
set the bandwidth. Output only for PARTNER type, mutable for PARTNER_PROVIDER
and DEDICATED, and can take one of the following values: - BPS_50M: 50 Mbit/s -
BPS_100M: 100 Mbit/s - BPS_200M: 200 Mbit/s - BPS_300M: 300 Mbit/s - BPS_400M:
400 Mbit/s - BPS_500M: 500 Mbit/s - BPS_1G: 1 Gbit/s - BPS_2G: 2 Gbit/s -
BPS_5G: 5 Gbit/s - BPS_10G: 10 Gbit/s - BPS_20G: 20 Gbit/s - BPS_50G: 50 Gbit/
s - BPS_100G: 100 Gbit/s
Corresponds to the JSON property bandwidth
29329 29330 29331 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29329 def bandwidth @bandwidth end |
#candidate_cloud_router_ip_address ⇒ String
Single IPv4 address + prefix length to be configured on the cloud router
interface for this interconnect attachment. - Both
candidate_cloud_router_ip_address and candidate_customer_router_ip_address
fields must be set or both must be unset. - Prefix length of both
candidate_cloud_router_ip_address and candidate_customer_router_ip_address
must be the same. - Max prefix length is 31.
Corresponds to the JSON property candidateCloudRouterIpAddress
29339 29340 29341 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29339 def candidate_cloud_router_ip_address @candidate_cloud_router_ip_address end |
#candidate_cloud_router_ipv6_address ⇒ String
Single IPv6 address + prefix length to be configured on the cloud router
interface for this interconnect attachment. - Both
candidate_cloud_router_ipv6_address and candidate_customer_router_ipv6_address
fields must be set or both must be unset. - Prefix length of both
candidate_cloud_router_ipv6_address and candidate_customer_router_ipv6_address
must be the same. - Max prefix length is 126.
Corresponds to the JSON property candidateCloudRouterIpv6Address
29349 29350 29351 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29349 def candidate_cloud_router_ipv6_address @candidate_cloud_router_ipv6_address end |
#candidate_customer_router_ip_address ⇒ String
Single IPv4 address + prefix length to be configured on the customer router
interface for this interconnect attachment.
Corresponds to the JSON property candidateCustomerRouterIpAddress
29355 29356 29357 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29355 def candidate_customer_router_ip_address @candidate_customer_router_ip_address end |
#candidate_customer_router_ipv6_address ⇒ String
Single IPv6 address + prefix length to be configured on the customer router
interface for this interconnect attachment.
Corresponds to the JSON property candidateCustomerRouterIpv6Address
29361 29362 29363 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29361 def candidate_customer_router_ipv6_address @candidate_customer_router_ipv6_address end |
#candidate_ipv6_subnets ⇒ Array<String>
This field is not available.
Corresponds to the JSON property candidateIpv6Subnets
29366 29367 29368 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29366 def candidate_ipv6_subnets @candidate_ipv6_subnets end |
#candidate_subnets ⇒ Array<String>
Input only. Up to 16 candidate prefixes that can be used to restrict the
allocation of cloudRouterIpAddress and customerRouterIpAddress for this
attachment. All prefixes must be within link-local address space (169.254.0.0/
16) and must be /29 or shorter (/28, /27, etc). Google will attempt to select
an unused /29 from the supplied candidate prefix(es). The request will fail if
all possible /29s are in use on Google's edge. If not supplied, Google will
randomly select an unused /29 from all of link-local space.
Corresponds to the JSON property candidateSubnets
29377 29378 29379 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29377 def candidate_subnets @candidate_subnets end |
#cloud_router_ipv6_interface_id ⇒ String
This field is not available.
Corresponds to the JSON property cloudRouterIpv6InterfaceId
29382 29383 29384 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29382 def cloud_router_ipv6_interface_id @cloud_router_ipv6_interface_id end |
#customer_router_ipv6_interface_id ⇒ String
This field is not available.
Corresponds to the JSON property customerRouterIpv6InterfaceId
29387 29388 29389 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29387 def customer_router_ipv6_interface_id @customer_router_ipv6_interface_id end |
#description ⇒ String
An optional description of this resource.
Corresponds to the JSON property description
29392 29393 29394 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29392 def description @description end |
#edge_availability_domain ⇒ String
Input only. Desired availability domain for the attachment. Only available for
type PARTNER, at creation time, and can take one of the following values: -
AVAILABILITY_DOMAIN_ANY - AVAILABILITY_DOMAIN_1 - AVAILABILITY_DOMAIN_2 For
improved reliability, customers should configure a pair of attachments, one
per availability domain. The selected availability domain will be provided to
the Partner via the pairing key, so that the provisioned circuit will lie in
the specified domain. If not specified, the value will default to
AVAILABILITY_DOMAIN_ANY.
Corresponds to the JSON property edgeAvailabilityDomain
29404 29405 29406 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29404 def edge_availability_domain @edge_availability_domain end |
#encryption ⇒ String
Indicates the user-supplied encryption option of this VLAN attachment (
interconnectAttachment). Can only be specified at attachment creation for
PARTNER or DEDICATED attachments. Possible values are: - alpha - This is the
default value, which means that the VLAN attachment carries unencrypted
traffic. VMs are able to send traffic to, or receive traffic from, such a VLAN
attachment. - IPSEC - The VLAN attachment carries only encrypted traffic that
is encrypted by an IPsec device, such as an HA VPN gateway or third-party
IPsec VPN. VMs cannot directly send traffic to, or receive traffic from, such
a VLAN attachment. To use HA VPN over Cloud Interconnect, the VLAN
attachment must be created with this option.
Corresponds to the JSON property encryption
29418 29419 29420 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29418 def encryption @encryption end |
#interconnect ⇒ String
URL of the underlying Interconnect object that this attachment's traffic will
traverse through.
Corresponds to the JSON property interconnect
29424 29425 29426 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29424 def interconnect @interconnect end |
#ipsec_internal_addresses ⇒ Array<String>
A list of URLs of addresses that have been reserved for the VLAN attachment.
Used only for the VLAN attachment that has the encryption option as IPSEC. The
addresses must be regional internal IP address ranges. When creating an HA VPN
gateway over the VLAN attachment, if the attachment is configured to use a
regional internal IP address, then the VPN gateway's IP address is allocated
from the IP address range specified here. For example, if the HA VPN gateway's
interface 0 is paired to this VLAN attachment, then a regional internal IP
address for the VPN gateway interface 0 will be allocated from the IP address
specified for this VLAN attachment. If this field is not specified when
creating the VLAN attachment, then later on when creating an HA VPN gateway on
this VLAN attachment, the HA VPN gateway's IP address is allocated from the
regional external IP address pool.
Corresponds to the JSON property ipsecInternalAddresses
29440 29441 29442 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29440 def ipsec_internal_addresses @ipsec_internal_addresses end |
#l2_forwarding ⇒ Google::Apis::ComputeAlpha::InterconnectAttachmentL2Forwarding
L2 Interconnect Attachment related configuration.
Corresponds to the JSON property l2Forwarding
29445 29446 29447 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29445 def l2_forwarding @l2_forwarding end |
#mtu ⇒ Fixnum
Maximum Transmission Unit (MTU), in bytes, of packets passing through this
interconnect attachment. Valid values are 1440, 1460, 1500, or 8896. If not
specified, the value will default to 1440.
Corresponds to the JSON property mtu
29452 29453 29454 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29452 def mtu @mtu end |
#multicast_enabled ⇒ Boolean Also known as: multicast_enabled?
Whether or not to permit multicast traffic for this attachment. Multicast
packets will be dropped if this is not enabled.
Corresponds to the JSON property multicastEnabled
29458 29459 29460 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29458 def multicast_enabled @multicast_enabled end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created.
Must be set on either the template_attachment or on each specific attachment.
If set, the name must be 1-63 characters long, and comply with RFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must
be a lowercase letter, and all following characters must be a dash, lowercase
letter, or digit, except the last character, which cannot be a dash.
Corresponds to the JSON property name
29470 29471 29472 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29470 def name @name end |
#pairing_key ⇒ String
[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present
for DEDICATED]. The opaque identifier of a PARTNER attachment used to initiate
provisioning with a selected partner. Of the form "XXXXX/region/domain"
Corresponds to the JSON property pairingKey
29477 29478 29479 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29477 def pairing_key @pairing_key end |
#partner_asn ⇒ Fixnum
Optional BGP ASN for the router supplied by a Layer 3 Partner if they
configured BGP on behalf of the customer. Output only for PARTNER type, input
only for PARTNER_PROVIDER, not available for DEDICATED.
Corresponds to the JSON property partnerAsn
29484 29485 29486 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29484 def partner_asn @partner_asn end |
#partner_metadata ⇒ Google::Apis::ComputeAlpha::InterconnectAttachmentPartnerMetadata
Informational metadata about Partner attachments from Partners to display to
customers. These fields are propagated from PARTNER_PROVIDER attachments to
their corresponding PARTNER attachments.
Corresponds to the JSON property partnerMetadata
29491 29492 29493 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29491 def @partner_metadata end |
#region ⇒ String
The region that the Attachment is in.
Corresponds to the JSON property region
29496 29497 29498 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29496 def region @region end |
#router ⇒ String
URL of the Cloud Router to be used for dynamic routing. This router must be in
the same region as this InterconnectAttachment. The InterconnectAttachment
will automatically connect the Interconnect to the network & region within
which the Cloud Router is configured.
Corresponds to the JSON property router
29504 29505 29506 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29504 def router @router end |
#stack_type ⇒ String
The stack type for this interconnect attachment to identify whether the IPv6
feature is enabled or not. If not specified, IPV4_ONLY will be used. This
field can be both set at interconnect attachments creation and update
interconnect attachment operations.
Corresponds to the JSON property stackType
29512 29513 29514 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29512 def stack_type @stack_type end |
#subnet_length ⇒ Fixnum
Input only. Length of the IPv4 subnet mask. Allowed values: - 29 (default) -
30 The default value is 29, except for Cross-Cloud Interconnect connections
that use an InterconnectRemoteLocation with a constraints.subnetLengthRange.
min equal to 30. For example, connections that use an Azure remote location
fall into this category. In these cases, the default value is 30, and
requesting 29 returns an error. Where both 29 and 30 are allowed, 29 is
preferred, because it gives Google Cloud Support more debugging visibility.
Corresponds to the JSON property subnetLength
29523 29524 29525 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29523 def subnet_length @subnet_length end |
#type ⇒ String
The type of interconnect attachment this is, which can take one of the
following values: - DEDICATED: an attachment to a Dedicated Interconnect. -
PARTNER: an attachment to a Partner Interconnect, created by the customer. -
PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by the
partner.
Corresponds to the JSON property type
29532 29533 29534 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29532 def type @type end |
#vlan_tag8021q ⇒ Fixnum
The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. Only
specified at creation time.
Corresponds to the JSON property vlanTag8021q
29538 29539 29540 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29538 def vlan_tag8021q @vlan_tag8021q end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
29545 29546 29547 29548 29549 29550 29551 29552 29553 29554 29555 29556 29557 29558 29559 29560 29561 29562 29563 29564 29565 29566 29567 29568 29569 29570 29571 29572 29573 29574 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 29545 def update!(**args) @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled) @bandwidth = args[:bandwidth] if args.key?(:bandwidth) @candidate_cloud_router_ip_address = args[:candidate_cloud_router_ip_address] if args.key?(:candidate_cloud_router_ip_address) @candidate_cloud_router_ipv6_address = args[:candidate_cloud_router_ipv6_address] if args.key?(:candidate_cloud_router_ipv6_address) @candidate_customer_router_ip_address = args[:candidate_customer_router_ip_address] if args.key?(:candidate_customer_router_ip_address) @candidate_customer_router_ipv6_address = args[:candidate_customer_router_ipv6_address] if args.key?(:candidate_customer_router_ipv6_address) @candidate_ipv6_subnets = args[:candidate_ipv6_subnets] if args.key?(:candidate_ipv6_subnets) @candidate_subnets = args[:candidate_subnets] if args.key?(:candidate_subnets) @cloud_router_ipv6_interface_id = args[:cloud_router_ipv6_interface_id] if args.key?(:cloud_router_ipv6_interface_id) @customer_router_ipv6_interface_id = args[:customer_router_ipv6_interface_id] if args.key?(:customer_router_ipv6_interface_id) @description = args[:description] if args.key?(:description) @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain) @encryption = args[:encryption] if args.key?(:encryption) @interconnect = args[:interconnect] if args.key?(:interconnect) @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses) @l2_forwarding = args[:l2_forwarding] if args.key?(:l2_forwarding) @mtu = args[:mtu] if args.key?(:mtu) @multicast_enabled = args[:multicast_enabled] if args.key?(:multicast_enabled) @name = args[:name] if args.key?(:name) @pairing_key = args[:pairing_key] if args.key?(:pairing_key) @partner_asn = args[:partner_asn] if args.key?(:partner_asn) @partner_metadata = args[:partner_metadata] if args.key?(:partner_metadata) @region = args[:region] if args.key?(:region) @router = args[:router] if args.key?(:router) @stack_type = args[:stack_type] if args.key?(:stack_type) @subnet_length = args[:subnet_length] if args.key?(:subnet_length) @type = args[:type] if args.key?(:type) @vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q) end |