GCP Interconnect 연결

전체 작업 진행순서

기업네트워크연결 : Cloud Interconnect 견적
파트너업체-GCP Interconnect 연결
파트너업체-IDC 물리적 연결
Interconnect 용 장비 준비 (L3) 및 IDC 연결
GCP-IDC 연결

파트너업체-GCP Interconnect 연결

파트너업체에서 공유해준 클라우드회선 개통 당시에 사용했던 문서

https://cloud.google.com/network-connectivity/docs/interconnect/concepts/partner-overview

 

https://cloud.google.com/network-connectivity/docs/interconnect/how-to/partner/provisioning-overview

VLAN 연결 만들기

서비스 제공업체에 연결 요청

연결 활성화

온프레미스 라우터 구성

 

Partner Interconnect 프로비저닝

Partner 업체에서 연결 준비가 되면 연락이 온다. 그 후에 작업을 한다.

VLAN 연결, 활성화

https://cloud.google.com/network-connectivity/docs/interconnect/how-to/partner/creating-vlan-attachments

VLAN 연결을 만들기 전에 온프레미스 네트워크에서 연결할 네트워크 및 리전에 기존 Cloud Router가 있어야 합니다. 기존 Cloud Router가 없으면 새로 만듭니다. 이 Cloud Router의 BGP ASN은 16550이어야 합니다.

 

첨부파일의 MTU를 지정할 수 있습니다. 유효한 값은 1440(기본값) 및 1500입니다. 1500바이트 MTU를 사용하려면 연결을 사용하는 VPC 네트워크의 MTU가 1500으로 설정되어야 합니다.

현재 VPC를 만들 때는 아래 문서를 보면 “MTU는 1460(기본값) 또는 1500이 될 수 있습니다” 이므로 1460으로 되어 있다. 그래서 위에서 VLAN 연결을 만들 때도 기본값을 쓰는게 좋을 듯 하다. VLAN 연결에 1500을 쓰면 VPC도 1500으로 바꾸어야 한다.

https://cloud.google.com/vpc/docs/using-vpc#create-custom-network

VPC default MTU 1460 (또는 1500)

Cloud Interconnect default MTU 1440 (또는 1500)

VPC 문서 및 Cloud Interconnect 문서에서 MTU 차이점에 대해서 정리된 내용이 있음. 기본값으로 사용을 하는게 편리한 듯함.

https://cloud.google.com/vpc/docs/vpc#mismatched-mtu-consequences

https://cloud.google.com/network-connectivity/docs/interconnect/concepts/overview#interconnect-mtu

 

VLAN 연결 만들고 파트너 업체에 pairing key 를 전달한다. 그러면 파트너 업체가 작업을 하고 알려주면 연결 활성화를 한다.

gcloud config set project sample-vpc gcloud compute interconnects attachments partner create partnerline-attachment \ --region asia-northeast3 \ --router sample-vpc-1-router \ --edge-availability-domain availability-domain-1 \ --mtu 1440 Created [https://www.googleapis.com/compute/v1/projects/sample-vpc/regions/asia-northeast3/interconnectAttachments/partnerline-attachment]. Please use the pairing key to provision the attachment with your partner: acd2fab5-e339-4f45-a0f9-bb3e8b569e56/asia-northeast3/1 gcloud compute interconnects attachments describe partnerline-attachment --region asia-northeast3 | grep pairingKey | awk '{ print $2 }' acd2fab5-e339-4f45-a0f9-bb3e8b569e56/asia-northeast3/1

 

연결 활성화 : 서비스 제공업체에서 Partner Interconnect 연결을 위한 VLAN 연결을 구성한 후에는 조직에서 이를 활성화해야 VLAN 연결에서 트래픽을 전달하기 시작합니다.

서비스 제공업체에서 VLAN 연결의 구성을 마치면 VLAN 연결 상태가 PENDING_PARTNER에서 PENDING_CUSTOMER로 바뀝니다.

--adminEnabled 플래그를 사용하여 연결을 활성화합니다.

gcloud compute interconnects attachments describe partnerline-attachment --region asia-northeast3 | grep state state: PENDING_CUSTOMER gcloud compute interconnects attachments partner update partnerline-attachment \ --region asia-northeast3 \ --admin-enabled gcloud compute interconnects attachments describe partnerline-attachment --region asia-northeast3 | grep state state: ACTIVE

 

활성화 후에 VLAN 연결에서 트래픽을 전달할 수 있습니다. Layer 3 연결의 경우 추가 구성을 수행할 필요가 없습니다. 서비스 제공업체에서 VLAN 연결을 구성할 때 ASN을 제공하면 Google이 자동으로 해당 ASN을 Cloud Router의 BGP 세션에 추가합니다.

Layer 2 연결의 경우 조직 내부 라우터의 ASN을 Cloud Router에 추가해야 합니다.

 

VLAN 연결과 연결된 Cloud Router를 기술한 후 VLAN 연결과 연결되고 자동으로 생성된 BGP 피어의 이름을 찾습니다. BGP 피어의 ipAddress 및 peerIpAddress 값은 VLAN 연결의 cloudRouterIpAddress 및 customerRouterIpAddress 값과 일치해야 합니다.

$ gcloud compute routers describe sample-vpc-1-router --region asia-northeast3 | grep -i ipaddress ipAddress: 111.111.11.249 peerIpAddress: 111.111.11.250 $ gcloud compute routers describe sample-vpc-1-router --region asia-northeast3 bgp: advertiseMode: DEFAULT asn: 16550 keepaliveInterval: 20 bgpPeers: - bfd: minReceiveInterval: 1000 minTransmitInterval: 1000 multiplier: 5 sessionInitializationMode: DISABLED enable: 'TRUE' interfaceName: auto-ia-if-partnerline-attac-8aaf6d0be34736e ipAddress: 111.111.11.249 managementType: MANAGED_BY_ATTACHMENT name: auto-ia-bgp-partnerline-attac-8aaf6d0be34736e peerIpAddress: 111.111.11.250 creationTimestamp: '2021-10-17T22:11:14.152-07:00' id: '1391897671471513373' interfaces: - ipRange: 111.111.11.249/29 linkedInterconnectAttachment: https://www.googleapis.com/compute/v1/projects/sample-vpc/regions/asia-northeast3/interconnectAttachments/partnerline-attachment managementType: MANAGED_BY_ATTACHMENT name: auto-ia-if-partnerline-attac-8aaxxxx6e kind: compute#router name: sample-vpc-1-router # interconnect VLAN $ gcloud compute interconnects attachments describe partnerline-attachment --region asia-northeast3 | grep -i ipa ddress cloudRouterIpAddress: 111.111.11.249/29 customerRouterIpAddress: 111.111.11.250/29

 

온프레미스 라우터 설정을 하고 ASN 정보를 받으면 BGP 피어를 업데이트합니다.

온프레미스 라우터 구성

https://cloud.google.com/network-connectivity/docs/interconnect/concepts/partner-overview 문서를 보면 Layer 2 및 Layer 3용 으로 연결된 경우가 나옴. 파트너업체에 따르면 보통 Layer 2로 연결을 한다고 함. 이경우 온프레미스 라우터와 VPC 네트워크의 Cloud Router 간에 BGP를 구성해야 함.

 

GCP 라우트는 수동으로 설정하는 부분이 아니고 온프램에서 제대로 설정했으면 자동으로 올라와야 한다고 함.

 

https://cloud.google.com/network-connectivity/docs/interconnect/how-to/partner/configuring-onprem-routers

Layer 2 연결의 논리 토폴로지

Cloud Router와 BGP 세션을 설정하려면 온프레미스 스위치 또는 라우터에 다음 정보를 사용

 

Google ASN : 16550

  • 활성화된 VLAN 연결에서 제공된 인터페이스 IP 주소 및 피어링 IP 주소

Cloud Router BGP IP : 111.111.11.249/29

BGP 피어 IP : 111.111.11.250/29

  • 서비스 제공업체가 제공하는 VLAN ID : 21

  • 연결 및 VPC 네트워크의 MTU에 따라 최대 전송 단위 (MTU) (1,440바이트 또는 1,500바이트입니다.) : Cloud Interconnect 에서 VLAN 연결시 MTU 1440 으로 설정

  • EBGP 멀티 홉 구성의 경우 gcloud compute interconnects attachments describe 명령어를 사용하여 VLAN 연결의 Dataplane 버전을 확인합니다. Dataplane 버전이 2 이상인 경우 이 명령어는 dataplaneVersion 필드를 반환합니다. 명령어 결과에 dataplaneVersion 필드가 없으면 Dataplane 버전은 1입니다.

    • EBGP 멀티 홉 구성이 무엇인지 필요한지 모르겠음. 해당 명령어로 확인을 하면 Dataplane 버전은 안 나옴. 권고값대로 ebgp-multihop 4 로 config 설정 꼭 필요하다고 하며 온프레미스 백본 스위치 설정 예제에 들어가 있음.

 

 

온프레미스 라우터의 BGP 설정을 마치고 나서 GCP 화면에서 interconnect, Cloud Router 확인을 함.

 

BGP 세션 정보 확인

온프레미스 네트워크와 Google Virtual Private Cloud(VPC) 네트워크 간에 BGP 세션이 작동하는지 확인합니다.

자세한 내용은 Cloud Router 문서의 Cloud Router 상태 및 경로 보기를 참조하세요.

 

Cloud Router 상태 및 경로 보기

BGP 세션 구성

 

 

IDC 대역의 라우팅 정보가 정상적으로 작동하고 나서는 로그탐색기에서 로그 확인할 수 있음.다.

Prefix 192.17.1.0/24 NextHops 111.111.11.250 priority 0 received by cloud router

 

https://cloud.google.com/network-connectivity/docs/interconnect/support/troubleshooting#partner

 

온프레미스 라우터 설정을 하고 ASN 정보를 받으면 GCP에서 BGP 피어를 업데이트합니다.

연결 테스트

IDC에서 연결 가능하도록 방화벽 설정 추가

 

네트워크 연결 테스트. GCP-IDC간 네트워크 문제 확인.

네트워크 인텔리전스 - 연결 테스트 를 통해서 소스, 대상, 프로토콜 등을 지정하여 연결 테스팅을 할 수 있음.

 

아래 그림은 정적 경로에서 인터넷 게이트웨이로 가는 것이 나옴.

비공개 IP , 비공개 서비스 설정

온프레미스 환경과의 제약사항

온프레미스 환경에서 GCP의 비공개 서비스 설정된 Cloud SQL 에 접근하려는 경우 일부 IP 대역에서는 접근을 할 수 없습니다.

온프라미스 네트워크에서 비공개 서비스 설정된 MS-SQL에 접근

온프라미스 네트워크 비공개 서비스 설정된 MS-SQL에 접근하기 위해서는 “승인된 네트워크” 설정이 필요

https://cloud.google.com/sql/docs/sqlserver/authorize-networks?_ga=2.87290200.-1353930072.1629761062&_gac=1.255866361.1637107275.Cj0KCQiAys2MBhDOARIsAFf1D1dAR4--6hglO4CP3NxrsLY1hwWCVHATQgXtvCvWd03-rJKgDGFMl0gaAuzyEALw_wcB

클라이언트 애플리케이션의 IP 주소 또는 주소 범위는 다음 조건에 따라 authorized networks로 구성되어야 합니다.

  • 클라이언트 애플리케이션이 공개 IP 주소의 Cloud SQL 인스턴스에 직접 연결됩니다.

  • 클라이언트 애플리케이션이 비공개 IP 주소의 Cloud SQL 인스턴스에 직접 연결되며 클라이언트의 IP 주소는 RFC 1918 이외의 주소입니다.

“일부 IP 주소 범위는 승인된 네트워크로 추가될 수 없습니다.” 라고 나오는데 172.17.0.0/16 는 Docker 브리지 네트워크용으로 예약되어 사용할 수 없다고 나옴.

 

https://cloud.google.com/vpc/docs/private-services-access?hl=ko#private-services-supported-services

비공개 서비스 액세스를 지원하는 Google 서비스는 다음과 같습니다.

디버깅하기

https://cloud.google.com/sql/docs/sqlserver/debugging-connectivity?hl=ko

https://cloud.google.com/network-intelligence-center/docs/connectivity-tests/how-to/running-connectivity-tests?hl=ko#non-cloud-to-non-cloud

GCP 네트워크 인텔리전스 이용하여 트래픽 확인 등 할 수 있음.