ห้องทดลอง: เว็บไซต์ NCC ไปยังระบบคลาวด์พร้อม SD-WAN Appliance

1. บทนำ

ภาพรวม

ในห้องทดลองนี้ คุณจะได้สำรวจฟีเจอร์บางอย่างของศูนย์การเชื่อมต่อเครือข่าย

Network Connectivity Center (NCC) คือโมเดลระนาบควบคุมแบบฮับและแบบมีเสียงพูดสำหรับการจัดการการเชื่อมต่อเครือข่ายใน Google Cloud ทรัพยากรฮับนี้มีโมเดลการจัดการการเชื่อมต่อแบบรวมศูนย์เพื่อเชื่อมต่อซี่ ปัจจุบัน NCC สนับสนุนทรัพยากรเครือข่ายต่อไปนี้เป็นโฆษณ

  • ไฟล์แนบ VLAN
  • อุปกรณ์เราเตอร์
  • VPN ความพร้อมใช้งานสูง

Codelabs กำหนดให้ใช้โซลูชัน SD SaaS SD-WAN แบบยืดหยุ่นของ FlexiWAN ที่จะช่วยให้การติดตั้งใช้งานและการจัดการ WAN ง่ายขึ้น

สิ่งที่คุณจะสร้าง

ใน Codelab นี้ คุณจะสร้างฮับและใช้โทโพโลยี SD-WAN แบบพูดเพื่อจำลองเว็บไซต์สาขาที่อยู่ห่างไกลซึ่งจะข้ามผ่านเครือข่ายแกนหลักของ Google สำหรับเว็บไซต์ไปยังการสื่อสารในระบบคลาวด์

  1. คุณจะต้องทำให้คู่ของ GCE vm ที่กำหนดค่าสำหรับ Agent FlexiWAN SD-WAN ใน VPC ของฮับที่แสดงส่วนหัวสำหรับการรับส่งข้อมูลขาเข้าและขาออกไปยัง GCP
  2. ทำให้เราเตอร์ FlexiWAN SD-WAN ระยะไกล 2 รายการใช้งานได้เพื่อแสดง VPC ของเว็บไซต์สาขา 2 รายการที่แตกต่างกัน
  3. สำหรับการทดสอบเส้นทางข้อมูล คุณจะต้องกำหนดค่า GCE VM จำนวน 3 รายการเพื่อจำลองในไคลเอ็นต์ภายในองค์กรและเซิร์ฟเวอร์ที่โฮสต์บน GCP

2669f7a724db9d89.png

สิ่งที่คุณจะได้เรียนรู้

  • ใช้ NCC เพื่อเชื่อมต่อถึงกันสำหรับสำนักงานสาขาที่อยู่ห่างไกล โดยใช้โซลูชัน WAN ที่กำหนดโดยซอฟต์แวร์แบบโอเพนซอร์ส
  • มีประสบการณ์เกี่ยวกับโซลูชัน WAN ที่กำหนดโดยซอฟต์แวร์โอเพนซอร์ส

สิ่งที่คุณต้องมี

  • ความรู้เกี่ยวกับเครือข่าย GCP VPC
  • ความรู้เกี่ยวกับเราเตอร์ระบบคลาวด์และการกำหนดเส้นทาง BGP

2. วัตถุประสงค์

  • ตั้งค่าสภาพแวดล้อม GCP
  • ทำให้อินสแตนซ์ flexiWAN Edge ใช้งานได้ใน GCP
  • สร้าง NCC Hub และ FlexiWAN Edge NVA เป็นสปอนเซอร์
  • กำหนดค่าและจัดการอินสแตนซ์ flexiWAN โดยใช้ flexiManage
  • กำหนดค่าการแลกเปลี่ยนเส้นทาง BGP ระหว่าง vpc-app-svcs และ flexiWAN NVA
  • สร้างเว็บไซต์ระยะไกลที่จำลองสาขาระยะไกลของลูกค้าหรือศูนย์ข้อมูล
  • สร้างอุโมงค์ IPSEC ระหว่างเว็บไซต์ระยะไกลและ NVA
  • ตรวจสอบว่าได้ทำให้เครื่องใช้ไฟฟ้าใช้งานได้เรียบร้อยแล้ว
  • ตรวจสอบการโอนข้อมูลในเว็บไซต์ไปยังระบบคลาวด์
  • ล้างทรัพยากรที่ใช้แล้ว

บทแนะนำนี้กำหนดให้สร้างบัญชี FlexiManage ฟรีเพื่อตรวจสอบสิทธิ์ เริ่มต้นใช้งาน และจัดการอินสแตนซ์ FlexiEdge

ก่อนเริ่มต้น

การใช้ Google Cloud Console และ Cloud Shell

ในการโต้ตอบกับ GCP เราจะใช้ทั้ง Google Cloud Console และ Cloud Shell ในห้องทดลองนี้

คอนโซล Google Cloud

คุณติดต่อ Cloud Console ได้ที่ https://console.cloud.google.com

ตั้งค่ารายการต่อไปนี้ใน Google Cloud เพื่อให้กำหนดค่าศูนย์การเชื่อมต่อเครือข่ายได้ง่ายขึ้น

ในหน้าตัวเลือกโปรเจ็กต์ของ Google Cloud Console ให้เลือกหรือสร้างโปรเจ็กต์ Google Cloud

เปิด Cloud Shell Codelab นี้ใช้ $variables เพื่อช่วยในการติดตั้งใช้งานการกำหนดค่า gcloud ใน Cloud Shell

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname

บทบาท IAM

NCC ต้องมีบทบาท IAM เพื่อเข้าถึง API ที่เฉพาะเจาะจง อย่าลืมกําหนดค่าผู้ใช้ด้วยบทบาท IAM ของ NCC ตามที่กําหนด

ชื่อบทบาท

คำอธิบาย

สิทธิ์

networkconnectivity.networkAdmin

อนุญาตให้ผู้ดูแลเครือข่ายจัดการฮับและซี่

Networkconnectivity.hubs.networkconnectivity.ieds

networkconnectivity.networkSpokeManager

อนุญาตให้เพิ่มและจัดการซี่ในฮับ เพื่อใช้ใน VPC ที่แชร์ซึ่งมีโปรเจ็กต์โฮสต์เป็นเจ้าของฮับ แต่ผู้ดูแลระบบคนอื่นๆ ในโปรเจ็กต์อื่นๆ สามารถเพิ่มรายการสำหรับไฟล์แนบของตนไปยังฮับได้

networkconnectivity.spokes.**

networkconnectivity.networkUsernetworkconnectivity.networkViewer

อนุญาตให้ผู้ใช้เครือข่ายดูแอตทริบิวต์ต่างๆ ของฮับและซี่

networkconnectivity.hubs.getnetworkconnectivity.hubs.listnetworkconnectivity.spokes.getnetworkconnectivity.spokes.listnetworkconnectivity.spokes.aggregatedList

3. ตั้งค่าสภาพแวดล้อมของ Network Lab

ภาพรวม

ในส่วนนี้ เราจะทำให้เครือข่าย VPC และกฎไฟร์วอลล์ใช้งานได้

a716849cffa67d48.png

จำลองเครือข่ายเว็บไซต์สาขาภายในองค์กร

เครือข่าย VPC นี้มีซับเน็ตสำหรับอินสแตนซ์ VM ภายในองค์กร

สร้างเครือข่ายและซับเน็ตในเว็บไซต์ภายในองค์กร ดังนี้

gcloud compute networks create site1-vpc \
--subnet-mode custom

gcloud compute networks create s1-inside-vpc \
--subnet-mode custom

gcloud compute networks subnets create site1-subnet \
--network site1-vpc \
--range 10.10.0.0/24 \
--region us-central1

gcloud compute networks subnets create s1-inside-subnet \
--network s1-inside-vpc \
--range 10.10.1.0/24 \
--region us-central1

สร้างกฎไฟร์วอลล์ site1-vpc เพื่ออนุญาตสิ่งต่อไปนี้

  • SSH, ภายใน, IAP
  • ESP, UDP/500, UDP/4500
  • ช่วง 10.0.0.0/8
  • ช่วง 192.168.0.0/16
gcloud compute firewall-rules create site1-ssh \--network site1-vpc \
--allow tcp:22

gcloud compute firewall-rules create site1-internal \
--network site1-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create site1-cloud \
--network site1-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create site1-vpn \
--network site1-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router

gcloud compute firewall-rules create site1-iap \
--network site1-vpc --allow tcp:22 --source-ranges=35.235.240.0/20

สร้างกฎไฟร์วอลล์ s1-inside-vpc เพื่ออนุญาตสิ่งต่อไปนี้

  • SSH, ภายใน, IAP
  • ช่วง 10.0.0.0/8
  • ช่วง 192.168.0.0/16
gcloud compute firewall-rules create s1-inside-ssh \
--network s1-inside-vpc \
--allow tcp:22

gcloud compute firewall-rules create s1-inside-internal \
--network s1-inside-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create s1-inside-cloud \
--network s1-inside-vpc  \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create s1-inside-iap \
--network site2-vpc --allow tcp:22 --source-ranges=35.235.240.0/20

สร้างอินสแตนซ์ s1-inside-vm และ s2-inside-vm สำหรับการทดสอบ

gcloud compute instances create s1-vm \
--zone=us-central1-a \
--machine-type=e2-micro \
--network-interface subnet=s1-inside-subnet,private-network-ip=10.10.1.3,no-address

จำลองสภาพแวดล้อมเครือข่ายระบบคลาวด์ GCP

หากต้องการเปิดใช้การเข้าชมเว็บไซต์สู่เว็บไซต์แบบข้ามภูมิภาคผ่านเครือข่าย hub-vpc และกลุ่มวิดีโอ คุณต้องเปิดใช้การกำหนดเส้นทางส่วนกลางในเครือข่าย hub-vpc โปรดอ่านเพิ่มเติมในการแลกเปลี่ยนเส้นทางของ NCC

  1. สร้างเครือข่ายและซับเน็ต hub-vpc ดังนี้
gcloud compute networks create hub-vpc \
--subnet-mode custom \
--bgp-routing-mode=global

gcloud compute networks subnets create hub-subnet1 \
--network hub-vpc \
--range 10.1.0.0/24 \
--region us-central1

gcloud compute networks subnets create hub-subnet2 \
--network hub-vpc \
--range 10.2.0.0/24 \
--region us-east4
  1. สร้างเครือข่ายและซับเน็ต workload-vpc ดังนี้
gcloud compute networks create workload-vpc \
--subnet-mode custom \
--bgp-routing-mode=global

gcloud compute networks subnets create workload-subnet1 \
--network workload-vpc \
--range 192.168.235.0/24 \
--region us-central1
  1. สร้างกฎไฟร์วอลล์ Hub-VPC เพื่ออนุญาตสิ่งต่อไปนี้
  • SSH
  • ESP, UDP/500, UDP/4500
  • ช่วง 10.0.0.0/8 ภายใน (ซึ่งครอบคลุมพอร์ต TCP 179 ที่ต้องใช้สำหรับเซสชัน BGP จากเราเตอร์ระบบคลาวด์ไปยังอุปกรณ์เราเตอร์)
gcloud compute firewall-rules create hub-ssh \
--network hub-vpc \
--allow tcp:22

gcloud compute firewall-rules create hub-vpn \
--network hub-vpc \
--allow esp,udp:500,udp:4500 \
--target-tags router

gcloud compute firewall-rules create hub-internal \
--network hub-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create hub-iap \
--network hub-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
  1. สร้างกฎไฟร์วอลล์ของ Workload-VPC เพื่ออนุญาตสิ่งต่อไปนี้
  • SSH
  • ช่วง 192.168.0.0/16 ภายใน (ซึ่งครอบคลุมพอร์ต TCP 179 ที่ต้องใช้สำหรับเซสชัน BGP จากเราเตอร์ระบบคลาวด์ไปยังอุปกรณ์เราเตอร์)
gcloud compute firewall-rules create workload-ssh \
--network workload-vpc \
--allow tcp:22

gcloud compute firewall-rules create workload-internal \
--network workload-vpc \
--allow all \
--source-ranges 192.168.0.0/16

gcloud compute firewall-rules create workload-onprem \
--network hub-vpc \
--allow all \
--source-ranges 10.0.0.0/8

gcloud compute firewall-rules create workload-iap \
--network workload-vpc --allow tcp:22 --source-ranges=35.235.240.0/20
  1. เปิดใช้ Cloud NAT ใน Workload-VPC เพื่ออนุญาตให้ workload1-vm ดาวน์โหลดแพ็กเกจโดยการสร้างเราเตอร์ระบบคลาวด์และเกตเวย์ NAT
gcloud compute routers create cloud-router-usc-central-1-nat \
    --network workload-vpc \
    --region us-central1
gcloud compute routers nats create cloudnat-us-central1 \
    --router=cloud-router-usc-central-1-nat \
    --auto-allocate-nat-external-ips \
    --nat-all-subnet-ip-ranges \
    --region us-central1
  1. สร้าง workload1-vm in "us-central1-a" in workload-VPC คุณจะใช้โฮสต์นี้ในการยืนยันเว็บไซต์กับการเชื่อมต่อระบบคลาวด์
gcloud compute instances create workload1-vm \
    --project=$projectname \
    --machine-type=e2-micro \
    --image-family debian-10 \
    --image-project debian-cloud \
    --zone us-central1-a \
    --private-network-ip 192.168.235.3 \
        --no-address \
    --subnet=workload-subnet1 \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to Workload VM1 !!' | tee /var/www/html/index.html
      EOF"

4. ตั้งค่าในอุปกรณ์ภายในองค์กรสำหรับ SD-WAN

80061623e9950756.png

สร้าง VM ภายในองค์กรสำหรับ SDWAN (อุปกรณ์)

ในส่วนต่อไป เราจะสร้าง site1-nva ซึ่งทำหน้าที่เป็นเราเตอร์ภายในองค์กร

สร้างอินสแตนซ์

สร้างอุปกรณ์ site1-router ชื่อ site1-nva

gcloud compute instances create site1-nva \
--zone=us-central1-a \
--machine-type=e2-medium \
--network-interface subnet=site1-subnet \
--network-interface subnet=s1-inside-subnet,no-address \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-central1-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any \
--can-ip-forward

5. ติดตั้ง flexiWAN ใน site1-nva

เปิดการเชื่อมต่อ SSH กับ site1-nva หากหมดเวลาลองอีกครั้ง

gcloud compute ssh site1-nva --zone=us-central1-a

ติดตั้ง flexiWAN ใน site1-nva

sudo su 

sudo curl -sL https://deb.flexiWAN.com/setup | sudo bash -
apt install flexiWAN-router -y

เตรียม VM สำหรับการลงทะเบียนระนาบควบคุม FlexiWAN

หลังจากติดตั้ง flexiWAN เสร็จแล้ว ให้เรียกใช้คำสั่ง fwsystem_checker เพื่อเตรียม VM สำหรับการดำเนินการ flexiWAN คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ

  • เลือกตัวเลือก 2 เพื่อกำหนดค่าที่รวดเร็วและเงียบ
  • ออกหลังจากนั้นด้วย 0
  • อย่าปิดหน้าต่าง Cloud Shell
root@site-1-nva-1:/home/user# fwsystem_checker
 
<output snipped>

        [0] - quit and use fixed parameters
         1  - check system configuration
         2  - configure system silently
         3  - configure system interactively
         4  - restore system checker settings to default
        ------------------------------------------------
Choose: 2

<output snipped>

        [0] - quit and use fixed parameters
         1  - check system configuration
         2  - configure system silently
         3  - configure system interactively
         4  - restore system checker settings to default
        ------------------------------------------------
Choose: 0
Please wait..
Done.
=== system checker ended ====

เปิดเซสชันทิ้งไว้เพื่อทำตามขั้นตอนต่อไปนี้

6. ลงทะเบียน site1-nva ด้วยตัวควบคุม SD-WAN

ขั้นตอนเหล่านี้ต้องดำเนินการเพื่อจัดสรร flexiWAN NVA ให้เสร็จสมบูรณ์จาก flexiManage Console โปรดตรวจสอบว่าองค์กร flexiWAN ได้รับการตั้งค่าแล้วก่อนดำเนินการต่อ

ตรวจสอบสิทธิ์ flexiWAN NVA ที่ทำให้ใช้งานได้ใหม่ด้วย flexiManage โดยใช้โทเค็นความปลอดภัยโดยเข้าสู่ระบบบัญชี flexiManage Account โทเค็นเดียวกันนี้อาจนำกลับมาใช้ซ้ำในอุปกรณ์เราเตอร์ทั้งหมดได้

เลือกพื้นที่โฆษณา → โทเค็น,สร้างโทเค็น และ เลือกคัดลอก

12c173b589d220ee.png

กลับไปที่ Cloud Shell (site1-nva) และวางโทเค็นลงในไดเรกทอรี /etc/flexiWAN/agent/token.txt โดยดำเนินการดังต่อไปนี้

nano /etc/flexiWAN/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

22e1cf5bad3d3086.png

เปิดใช้งานเราเตอร์ของเว็บไซต์ในคอนโซล flexiManage

เข้าสู่ระบบ flexiManage Console เพื่อเปิดใช้งาน site1-nva บนตัวควบคุม

ในแผงด้านซ้าย เลือกพื้นที่โฆษณา → อุปกรณ์ ให้คลิกอุปกรณ์ "ไม่รู้จัก"

f7719c28f78e907a.png

ป้อนชื่อโฮสต์ของ site1-nva และอนุมัติอุปกรณ์โดยเลื่อนแป้นหมุนไปทางขวา

9a6c6c45e1cad732.png

เลือกแท็บ "อินเทอร์เฟซ"

ค้นหา "มอบหมายแล้ว" คอลัมน์และคลิก "ไม่" และเปลี่ยนการตั้งค่าเป็น "ใช่"

a8772059968af13e.png

เลือกแท็บไฟร์วอลล์แล้วคลิกเครื่องหมาย "+" เพื่อเพิ่มกฎของไฟร์วอลล์ขาเข้า

เลือกอินเทอร์เฟซ WAN เพื่อใช้กฎ SSH ตามที่อธิบายไว้ด้านล่าง

df03b8a6c817ccd2.png

คลิก "อัปเดตอุปกรณ์"

96b9feb77b8517cd.png

เริ่ม site1-nva จากตัวควบคุม flexiWAN กลับไปที่พื้นที่โฆษณา → อุปกรณ์ → site1-nva เลือก "เริ่มต้นอุปกรณ์"

708215cf91ffc09.png

สถานะ - กำลังซิงค์

918d72eeacc386fa.png

สถานะ - ซิงค์แล้ว

5135096dbff49819.png

ดูสัญญาณบอกสถานะคำเตือนได้ในส่วนแก้ปัญหา → การแจ้งเตือน เมื่อดูแล้ว ให้เลือกทั้งหมด จากนั้นทำเครื่องหมายว่าอ่านแล้ว

9e79db3572f91925.png

7. ตั้งค่าอุปกรณ์ Hub SDWAN

ในส่วนต่อไปนี้ คุณจะต้องสร้างและลงทะเบียนเราเตอร์ Hub (hub-r1) กับตัวควบคุม FlexiWAN เหมือนกับที่ดำเนินการก่อนหน้านี้กับเส้นทางของเว็บไซต์

เปิดแท็บใหม่และสร้างเซสชัน Cloud Shell อัปเดต $variables เพื่อช่วยในการติดตั้งใช้งานการกำหนดค่า gcloud

gcloud config list project
gcloud config set project [YOUR-PROJECT-NAME]
projectname=[YOUR-PROJECT-NAME]
echo $projectname

สร้างอินสแตนซ์ Hub NVA

สร้างอุปกรณ์ hub-r1 โดยใช้คำสั่งต่อไปนี้

gcloud compute instances create hub-r1 \
--zone=us-central1-a \
--machine-type=e2-medium \
--network-interface subnet=hub-subnet1 \
--network-interface subnet=workload-subnet1,no-address \
--can-ip-forward \
--create-disk=auto-delete=yes,boot=yes,device-name=flex-gcp-nva-1,image=projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20220901,mode=rw,size=20,type=projects/$projectname/zones/us-central1-a/diskTypes/pd-balanced \
--no-shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring \
--reservation-affinity=any

8. ติดตั้ง flexiWAN บนอินสแตนซ์ Hub สำหรับ Hub-r1

เปิดการเชื่อมต่อ SSH กับ Hub-r1

gcloud compute ssh hub-r1 --zone=us-central1-a

ติดตั้ง Agent flexiWAN ใน Hub-r1 ทั้ง 2 อัน

sudo su
sudo curl -sL https://deb.flexiWAN.com/setup | sudo bash -
apt install flexiWAN-router -y

เตรียม VM ของ Hub-r1 สำหรับการลงทะเบียนแบบยืดหยุ่น

หลังจากติดตั้ง FlexiWAN เสร็จแล้ว ให้เรียกใช้คำสั่ง fwsystem_checker เพื่อเตรียม VM สำหรับการดำเนินการ flexiWAN คำสั่งนี้จะตรวจสอบข้อกำหนดของระบบและช่วยแก้ไขข้อผิดพลาดในการกำหนดค่าในระบบ

root@hub-r1:/home/user# fwsystem_checker
  • เลือกตัวเลือก 2 เพื่อกำหนดค่าที่รวดเร็วและเงียบ
  • ออกหลังจากนั้นด้วย 0
  • อย่าปิดหน้าต่าง Cloud Shell

9. ลงทะเบียน VM ฮับ r1 บนตัวควบคุม FlexManage

ตรวจสอบสิทธิ์ flexiWAN NVA ที่ทำให้ใช้งานได้ใหม่ด้วย flexiManage โดยใช้โทเค็นความปลอดภัยโดยเข้าสู่ระบบบัญชี flexiManage Account

  • เลือกพื้นที่โฆษณา → โทเค็น แล้วคัดลอกโทเค็น

กลับไปที่ Cloud Shell (hub-r1) และวางโทเค็นลงในไดเรกทอรี /etc/flexiWAN/agent/token.txt โดยดำเนินการดังต่อไปนี้

nano /etc/flexiWAN/agent/token.txt
#Paste the generated token obtain from flexiManage
#Exit session with CTRL+X and Select Y to save then enter

เปิดใช้งาน Hub Routes Hub-r1 ในคอนโซล FlexiManage

เข้าสู่ระบบคอนโซล FlexiManage

  • ไปที่พื้นที่โฆษณา → อุปกรณ์
  • ค้นหาและจดบันทึกชื่อโฮสต์สำหรับ hub-r1 เป็น "unknown"

1a88ffa4409ad3c0.png

เลือกอุปกรณ์ที่ไม่รู้จักด้วย HostName hub-r1

  • ป้อนชื่อโฮสต์ของ hub-r1
  • อนุมัติอุปกรณ์ เลื่อนแป้นหมุนไปทางขวา

เลือกแท็บอินเทอร์เฟซ

  • ค้นหาคอลัมน์ "มอบหมายแล้ว"
  • คลิก "ไม่" ข้างแถวอินเทอร์เฟซ เพื่อเปลี่ยนการตั้งค่าเป็น "ใช่"

เลือกแท็บไฟร์วอลล์

  • คลิก "+" เพื่อเพิ่มกฎไฟร์วอลล์ขาเข้า
  • เลือกอินเทอร์เฟซ WAN ที่จะรับค่ากฎ
  • อนุญาตให้ใช้พอร์ต SSH 22 ที่มีโปรโตคอล TCP
  • คลิก "อัปเดตอุปกรณ์"

เริ่มอุปกรณ์ hub-r1 สำหรับ SD-WAN จากตัวควบคุมของ flexiWAN

  • กลับไปที่พื้นที่โฆษณา → อุปกรณ์ → Hub-r1

เลือก "เริ่มต้นอุปกรณ์"

  • รอให้การซิงค์เสร็จสมบูรณ์และจดบันทึก "กำลังทำงาน" สถานะ

10. ศูนย์การเชื่อมต่อเครือข่ายในฮับ GCP

a5a454f4a30df82e.png

เปิดใช้บริการ API

เปิดใช้ API การเชื่อมต่อเครือข่ายในกรณีที่ยังไม่ได้เปิดใช้ วิธีการมีดังนี้

gcloud services enable networkconnectivity.googleapis.com

สร้าง NCC Hub

gcloud network-connectivity hubs create ncc-hub
Create request issued for: [ncc-hub]
Waiting for operation [projects/user-3p-dev/locations/global/operations/operation-1668793629598-5edc24b7ee3ce-dd4c765b-5ca79556] to complete...done.     
Created hub [ncc-hub]

กำหนดค่าอุปกรณ์เราเตอร์ทั้ง 2 เครื่องเป็นรูป NCC

ค้นหา URI และที่อยู่ IP สำหรับทั้ง Hub-r1 และจดบันทึกเอาต์พุต คุณจะต้องใช้ข้อมูลนี้ในขั้นตอนถัดไป

อย่าลืมจดบันทึกที่อยู่ IP ของอินสแตนซ์ Hub-r1

gcloud compute instances describe hub-r1 \
--zone=us-central1-a \
--format="value(selfLink.scope(projects))"

gcloud compute instances describe hub-r1 --zone=us-central1-a | grep "networkIP"

เพิ่ม Vnic networkIP ของฮับ r1 เป็นแกน ตามค่าเริ่มต้น การโอนข้อมูลระหว่างเว็บไซต์จะถูกปิดใช้

gcloud network-connectivity spokes linked-router-appliances create s2c-wrk-cr1 \
--hub=ncc-hub \
--router-appliance=instance="https://www.googleapis.com/compute/projects/$projectname/zones/us-central1-a/instances/hub-r1",ip=192.168.235.4 \
--region=us-central1 \
--site-to-site-data-transfer

กำหนดค่าเราเตอร์ระบบคลาวด์เพื่อสร้าง BGP ด้วย Hub-R1

ในขั้นตอนต่อไปนี้ ให้สร้าง Cloud Router และประกาศซับเน็ต VPC 192.168.235.0/24 สำหรับภาระงาน

สร้างเราเตอร์ระบบคลาวด์ใน us-central1 ที่จะสื่อสารกับ BGP ด้วย Hub-r1

gcloud compute routers create wrk-cr1 \
--region=us-central1 \
--network=workload-vpc \
--asn=65002 \
--set-advertisement-groups=all_subnets

การกำหนดค่าอุปกรณ์เราเตอร์เป็น NCC Spoke จะช่วยให้เราเตอร์ระบบคลาวด์เจรจา BGP บนอินเทอร์เฟซเสมือนได้

สร้างอินเทอร์เฟซ 2 รายการบนเราเตอร์ระบบคลาวด์ที่จะแลกเปลี่ยนข้อความ BGP กับ Hub-r1

เลือกที่อยู่ IP จากซับเน็ตของภาระงานและ & สามารถเปลี่ยนแปลงได้หากจำเป็น

gcloud compute routers add-interface wrk-cr1 \
--region=us-central1 \
--subnetwork=workload-subnet1 \
--interface-name=int0 \
--ip-address=192.168.235.101 

gcloud compute routers add-interface wrk-cr1 \
--region=us-central1 \
--subnetwork=workload-subnet1 \
--interface-name=int1 \
--ip-address=192.168.235.102 \
--redundant-interface=int0

กำหนดค่าอินเทอร์เฟซเราเตอร์ระบบคลาวด์เพื่อสร้าง BGP ด้วย vNIC-1 ของฮับ r1 จากนั้นอัปเดตที่อยู่ IP ของฮับ IP ด้วย NetworkIP ของ Hub-r1 โปรดทราบว่าจะใช้ที่อยู่ IP เดียวกันสำหรับ int0 & int1.

gcloud compute routers add-bgp-peer wrk-cr1 \
    --peer-name=hub-cr1-bgp-peer-0 \
    --interface=int0 \
    --peer-ip-address=192.168.235.4 \
    --peer-asn=64111 \
    --instance=hub-r1 \
    --instance-zone=us-central1-a \
    --region=us-central1

gcloud compute routers add-bgp-peer wrk-cr1 \
    --peer-name=hub-cr1-bgp-peer-1 \
    --interface=int1 \
    --peer-ip-address=192.168.235.4 \
    --peer-asn=64111 \
    --instance=hub-r1 \
    --instance-zone=us-central1-a \
    --region=us-central1

ยืนยันสถานะ BGP ณ จุดนี้ของ Code Lab ระบุว่า BGP เป็น "สถานะการเชื่อมต่อ" เนื่องจากอุปกรณ์ของเราเตอร์เครือข่ายยังไม่ได้รับการกำหนดค่าสำหรับ BGP

gcloud compute routers get-status wrk-cr1 --region=us-central1

11. กำหนดค่าอุปกรณ์ของเราเตอร์ฮับสำหรับ BGP

กำหนดค่า Hub-r1 สำหรับ BGP

ตรวจสอบว่าได้เข้าสู่ระบบคอนโซล flexiManage Console

ไปที่พื้นที่โฆษณาอุปกรณ์hub-r1 แล้วเลือกอุปกรณ์ที่มี HostName:hub-r1

  • คลิกแท็บ "การกำหนดเส้นทาง"
  • คลิก "BGP Configuration"
  • ปิดใช้ "แจกจ่ายเส้นทาง OSPF ใหม่"
  • กำหนดค่า hub-r1 สำหรับ BGP ด้วยพารามิเตอร์เหล่านี้ แล้วคลิก "Save"

8d470056f620717f.png

เลือก "อินเทอร์เฟซ" แท็บ ให้ค้นหาอินเทอร์เฟซ LAN ค้นหาคอลัมน์ "Routing"

  • คลิก "none" เพื่อเปิดเมนูเพื่อเลือก BGP เป็นโปรโตคอลการกำหนดเส้นทาง

82310aab05e9e414.png

  • คลิก "อัปเดตอุปกรณ์" ที่ด้านบนของหน้า

12. การแลกเปลี่ยนเส้นทาง BGP ระหว่างอุปกรณ์เราเตอร์

สร้าง ASN ท้องถิ่นสำหรับเว็บไซต์ระยะไกล

กำหนดค่า BGP ASN ในเครื่องสำหรับ site1-nva เมื่อกำหนดค่าแล้ว เราจะสร้างอุโมงค์ IPSEC ระหว่างเว็บไซต์ระยะไกลกับเราเตอร์ฮับ

เลือกอุปกรณ์ที่มี HostName:site1-nva

  • คลิกแท็บ "การกำหนดเส้นทาง"
  • คลิก "BGP Configuration"
  • ปิดใช้ "แจกจ่ายเส้นทาง OSPF ใหม่"
  • ASN ภายใน 7269 → บันทึก
  • อัปเดตอุปกรณ์
  • แท็บอินเทอร์เฟซ → การกำหนดเส้นทาง → BGP
  • อัปเดตอุปกรณ์

กำหนดค่าอุโมงค์ข้อมูล VPN ระหว่างอุปกรณ์ Site1 และ Hub1

ตรวจสอบว่าได้เข้าสู่ระบบคอนโซล flexiManage Console

  • ไปที่พื้นที่โฆษณา → อุปกรณ์
  • เลือกช่องถัดจากชื่อโฮสต์ของ site1-nva และ hub-r1 เพื่อสร้างอุโมงค์ข้อมูล VPN ระหว่าง NVA คู่นี้
  • คลิกการดำเนินการ→ สร้างอุโมงค์ข้อมูล และกำหนดค่ารายการต่อไปนี้

d870b4049a0e7fcf.png

c50d794442c0bdd0.png

  • เลือกสร้างอุโมงค์ข้อมูล

ตรวจสอบว่า "site1-nva" เรียนรู้เส้นทางไปยังซับเน็ต 192.168.235.0/24 และ 192.168.236.0/24

  • เลือกพื้นที่โฆษณา → อุปกรณ์ → site1-nva และคลิกแท็บ "การกำหนดเส้นทาง"

ในเอาต์พุตตัวอย่างด้านล่าง flexiWAN จะสร้างอุโมงค์ข้อมูลโดยอัตโนมัติโดยใช้ที่อยู่ IP ของโฮสต์ 10.100.0.6 cef8dee200ac600a.png

13. ยืนยันการเชื่อมต่อเส้นทางข้อมูล

ยืนยันการเชื่อมต่อเว็บไซต์กับระบบคลาวด์จากภายในองค์กร

ดูแผนภาพ ยืนยันว่าเส้นทางข้อมูลระหว่าง s1-vm และ workload1-vm

e96022cff4642fc9.png

กำหนดค่าเส้นทาง VPC แบบคงที่สำหรับเว็บไซต์ไปยังระบบคลาวด์

Site1-VPC ภายในองค์กรจะจำลองเครือข่ายศูนย์ข้อมูลภายในองค์กร

อุปกรณ์ของเราเตอร์ Site-1-nva ทั้ง 2 เครื่องใช้การเชื่อมต่อ VPN เพื่อเข้าถึงเครือข่ายฮับ

สำหรับกรณีการใช้งานเว็บไซต์ไปยังระบบคลาวด์**** ให้สร้างเส้นทางแบบคงที่ไปยังปลายทาง 192.168.0.0/16 โดยใช้อุปกรณ์เราเตอร์เป็นฮอพถัดไปเพื่อเข้าถึงเครือข่ายในเครือข่ายระบบคลาวด์ของ GCP

ใน s1-inside-vpc ให้สร้างเส้นทางแบบคงที่สำหรับปลายทางระบบคลาวด์ (192.168.0.0/16) ดังนี้

gcloud compute routes create site1-subnet-route  \
--network=s1-inside-vpc \
--destination-range=192.168.0.0/16  \
--next-hop-instance=site1-nva \
--next-hop-instance-zone=us-central1-a

ค้นหาที่อยู่ IP ของ workload1-vmnee ใน Cloudshell ซึ่งคุณจะต้องใช้เพื่อทดสอบการเชื่อมต่อจาก "s1-vm"

gcloud compute instances describe workload1-vm --zone=us-central1-a | grep "networkIP"

SSH ไปยัง "s1-vm" และใช้คำสั่ง "curl" เพื่อสร้างเซสชัน TCP ไปยังที่อยู่ IP ของ Workload1-VM

s1-vm:~$ curl 192.168.235.3 -vv
*   Trying 192.168.235.3:80...
* Connected to 192.168.235.3 (192.168.235.3) port 80 (#0)
> GET / HTTP/1.1
> Host: 192.168.235.3
> User-Agent: curl/7.74.0
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Date: Wed, 07 Dec 2022 15:12:08 GMT
< Server: Apache/2.4.54 (Debian)
< Last-Modified: Tue, 06 Dec 2022 00:57:46 GMT
< ETag: "1f-5ef1e4acfa1d9"
< Accept-Ranges: bytes
< Content-Length: 31
< Content-Type: text/html
< 
Page served from: workload1-vm
* Connection #0 to host 192.168.235.3 left intact

14. ล้างข้อมูล

ลบทรัพยากรภายในองค์กร

เข้าสู่ระบบ Cloud Shell และลบอินสแตนซ์ VM ในเครือข่ายของเว็บไซต์ฮับและสาขา

#onprem instances
gcloud compute instances delete s1-vm --zone=us-central1-a --quiet


#delete on prem firewall rules
gcloud compute firewall-rules delete site1-ssh --quiet
gcloud compute firewall-rules delete site1-internal --quiet
gcloud compute firewall-rules delete site1-cloud --quiet
gcloud compute firewall-rules delete site1-vpn  --quiet
gcloud compute firewall-rules delete site1-iap --quiet


#delete on prem subnets
gcloud compute networks subnets delete site1-subnet --quiet
gcloud compute networks subnets delete s1-inside-subnet --quiet
gcloud compute networks subnets delete s1-inside-subnet --quiet


#delete on prem vpcs
gcloud compute networks delete site1-vpc --quiet
gcloud compute networks delete s1-inside-vpc --quiet

ลบทรัพยากร Cloud Hub

เข้าสู่ระบบ Cloud Shell และลบอินสแตนซ์ VM ในเครือข่ายของเว็บไซต์ฮับและสาขา

#delete ncc spokes
gcloud network-connectivity spokes delete s2c-wrk-cr1 --region us-central1 --quiet

#delete ncc hub
gcloud network-connectivity hubs delete ncc-hub --quiet


#delete hub instances
gcloud compute instances delete hub-r1 --zone=us-central1-a --quiet


#delete hub firewall rule
gcloud compute firewall-rules delete hub-ssh --quiet
gcloud compute firewall-rules delete hub-vpn --quiet
gcloud compute firewall-rules delete hub-internal --quiet
gcloud compute firewall-rules delete hub-iap --quiet

gcloud compute firewall-rules create workload-ssh --quiet
gcloud compute firewall-rules create workload-internal --quiet
gcloud compute firewall-rules create workload-onprem --quiet
gcloud compute firewall-rules create workload-iap --quiet

#delete hub subnets
gcloud compute networks subnets delete workload-subnet1 --quiet

gcloud compute networks subnets delete hub-subnet1 --quiet

#delete hub vpcs
gcloud compute networks delete workload-vpc --quiet
gcloud compute networks delete hub-vpc --quiet

15. ยินดีด้วย

คุณทำภารกิจของศูนย์การเชื่อมต่อเครือข่ายเสร็จสมบูรณ์แล้ว

สิ่งที่คุณได้ครอบคลุม

  • การผสานรวม WAN ที่กำหนดโดยซอฟต์แวร์สำหรับเว็บไซต์ NCC กับระบบคลาวด์

ขั้นตอนถัดไป

©Google, LLC หรือบริษัทในเครือ สงวนลิขสิทธิ์ ห้ามเผยแพร่