ComputeRouterPeer


Property Value
Google Cloud Service Name Compute Engine
Google Cloud Service Documentation /compute/docs/
Google Cloud REST Resource Name v1.routers
Google Cloud REST Resource Documentation /compute/docs/reference/rest/v1/routers
Config Connector Resource Short Names gcpcomputerouterpeer
gcpcomputerouterpeers
computerouterpeer
Config Connector Service Name compute.googleapis.com
Config Connector Resource Fully Qualified Name computerouterpeers.compute.cnrm.cloud.google.com
Can Be Referenced by IAMPolicy/IAMPolicyMember No
Config Connector Default Average Reconcile Interval In Seconds 600

Custom Resource Definition Properties

Annotations

Fields
cnrm.cloud.google.com/project-id
cnrm.cloud.google.com/state-into-spec

Spec

Schema

advertiseMode: string
advertisedGroups:
- string
advertisedIpRanges:
- description: string
  range: string
advertisedRoutePriority: integer
bfd:
  minReceiveInterval: integer
  minTransmitInterval: integer
  multiplier: integer
  sessionInitializationMode: string
enable: boolean
enableIpv6: boolean
ipAddress:
  external: string
ipv6NexthopAddress: string
peerAsn: integer
peerIpAddress: string
peerIpv6NexthopAddress: string
region: string
resourceID: string
routerApplianceInstanceRef:
  external: string
  name: string
  namespace: string
routerInterfaceRef:
  external: string
  name: string
  namespace: string
routerRef:
  external: string
  name: string
  namespace: string
Fields

advertiseMode

Optional

string

User-specified flag to indicate which mode to use for advertisement. Valid values of this enum field are: 'DEFAULT', 'CUSTOM' Default value: "DEFAULT" Possible values: ["DEFAULT", "CUSTOM"].

advertisedGroups

Optional

list (string)

User-specified list of prefix groups to advertise in custom mode, which currently supports the following option: * 'ALL_SUBNETS': Advertises all of the router's own VPC subnets. This excludes any routes learned for subnets that use VPC Network Peering. Note that this field can only be populated if advertiseMode is 'CUSTOM' and overrides the list defined for the router (in the "bgp" message). These groups are advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.

advertisedGroups[]

Optional

string

advertisedIpRanges

Optional

list (object)

User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertiseMode is 'CUSTOM' and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.

advertisedIpRanges[]

Optional

object

advertisedIpRanges[].description

Optional

string

User-specified description for the IP range.

advertisedIpRanges[].range

Required*

string

The IP range to advertise. The value must be a CIDR-formatted string.

advertisedRoutePriority

Optional

integer

The priority of routes advertised to this BGP peer. Where there is more than one matching route of maximum length, the routes with the lowest priority value win.

bfd

Optional

object

BFD configuration for the BGP peering.

bfd.minReceiveInterval

Optional

integer

The minimum interval, in milliseconds, between BFD control packets received from the peer router. The actual value is negotiated between the two routers and is equal to the greater of this value and the transmit interval of the other router. If set, this value must be between 1000 and 30000.

bfd.minTransmitInterval

Optional

integer

The minimum interval, in milliseconds, between BFD control packets transmitted to the peer router. The actual value is negotiated between the two routers and is equal to the greater of this value and the corresponding receive interval of the other router. If set, this value must be between 1000 and 30000.

bfd.multiplier

Optional

integer

The number of consecutive BFD packets that must be missed before BFD declares that a peer is unavailable. If set, the value must be a value between 5 and 16.

bfd.sessionInitializationMode

Required*

string

The BFD session initialization mode for this BGP peer. If set to 'ACTIVE', the Cloud Router will initiate the BFD session for this BGP peer. If set to 'PASSIVE', the Cloud Router will wait for the peer router to initiate the BFD session for this BGP peer. If set to 'DISABLED', BFD is disabled for this BGP peer. Possible values: ["ACTIVE", "DISABLED", "PASSIVE"].

enable

Optional

boolean

The status of the BGP peer connection. If set to false, any active session with the peer is terminated and all associated routing information is removed. If set to true, the peer connection can be established with routing information. The default is true.

enableIpv6

Optional

boolean

Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.

ipAddress

Optional

object

IP address of the interface inside Google Cloud Platform. Only IPv4 is supported.

ipAddress.external

Optional

string

ipv6NexthopAddress

Optional

string

IPv6 address of the interface inside Google Cloud Platform. The address must be in the range 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64. If you do not specify the next hop addresses, Google Cloud automatically assigns unused addresses from the 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64 range for you.

peerAsn

Required

integer

Peer BGP Autonomous System Number (ASN). Each BGP interface may use a different value.

peerIpAddress

Optional

string

IP address of the BGP interface outside Google Cloud Platform. Only IPv4 is supported. Required if 'ip_address' is set.

peerIpv6NexthopAddress

Optional

string

IPv6 address of the BGP interface outside Google Cloud Platform. The address must be in the range 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64. If you do not specify the next hop addresses, Google Cloud automatically assigns unused addresses from the 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64 range for you.

region

Required

string

Immutable. Region where the router and BgpPeer reside. If it is not provided, the provider region is used.

resourceID

Optional

string

Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.

routerApplianceInstanceRef

Optional

object

The URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance must be located in zones contained in the same region as this Cloud Router. The VM instance is the peer side of the BGP session.

routerApplianceInstanceRef.external

Optional

string

Allowed value: The `selfLink` field of a `ComputeInstance` resource.

routerApplianceInstanceRef.name

Optional

string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

routerApplianceInstanceRef.namespace

Optional

string

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

routerInterfaceRef

Required

object

The interface the BGP peer is associated with.

routerInterfaceRef.external

Optional

string

Allowed value: The `name` field of a `ComputeRouterInterface` resource.

routerInterfaceRef.name

Optional

string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

routerInterfaceRef.namespace

Optional

string

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

routerRef

Required

object

The Cloud Router in which this BGP peer will be configured.

routerRef.external

Optional

string

Allowed value: The `name` field of a `ComputeRouter` resource.

routerRef.name

Optional

string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

routerRef.namespace

Optional

string

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

* Field is required when parent field is specified

Status

Schema

conditions:
- lastTransitionTime: string
  message: string
  reason: string
  status: string
  type: string
managementType: string
observedGeneration: integer
Fields
conditions

list (object)

Conditions represent the latest available observation of the resource's current state.

conditions[]

object

conditions[].lastTransitionTime

string

Last time the condition transitioned from one status to another.

conditions[].message

string

Human-readable message indicating details about last transition.

conditions[].reason

string

Unique, one-word, CamelCase reason for the condition's last transition.

conditions[].status

string

Status is the status of the condition. Can be True, False, Unknown.

conditions[].type

string

Type is the type of the condition.

managementType

string

The resource that configures and manages this BGP peer. * 'MANAGED_BY_USER' is the default value and can be managed by you or other users * 'MANAGED_BY_ATTACHMENT' is a BGP peer that is configured and managed by Cloud Interconnect, specifically by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of BGP peer when the PARTNER InterconnectAttachment is created, updated, or deleted.

observedGeneration

integer

ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.

Sample YAML(s)

Typical Use Case

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: compute.cnrm.cloud.google.com/v1beta1
kind: ComputeRouterPeer
metadata:
  name: computerouterpeer-sample
spec:
  region: us-central1
  peerIpAddress: "169.254.0.2"
  peerAsn: 65513
  ipAddress:
    external: "169.254.0.1"
  advertisedRoutePriority: 1
  routerRef:
    name: computerouterpeer-dep
  routerInterfaceRef:
    name: computerouterpeer-dep
---
apiVersion: compute.cnrm.cloud.google.com/v1beta1
kind: ComputeNetwork
metadata:
  labels:
    label-one: "value-one"
  name: computerouterpeer-dep
spec:
  routingMode: REGIONAL
  autoCreateSubnetworks: false
---
apiVersion: compute.cnrm.cloud.google.com/v1beta1
kind: ComputeRouter
metadata:
  name: computerouterpeer-dep
spec:
  networkRef:
    name: computerouterpeer-dep
  description: example router description
  region: us-central1
  bgp:
    asn: 64514
    advertiseMode: CUSTOM
    advertisedGroups:
      - ALL_SUBNETS
    advertisedIpRanges:
      - range: "1.2.3.4"
---
apiVersion: compute.cnrm.cloud.google.com/v1beta1
kind: ComputeRouterInterface
metadata:
  name: computerouterpeer-dep
spec:
  routerRef:
    name: computerouterpeer-dep
  region: us-central1
  ipRange: "169.254.0.1/30"