1. บทนำ
เส้นทางตามนโยบาย
เส้นทางตามนโยบายจะช่วยให้คุณเลือกการ Hop ถัดไปโดยอิงตามที่อยู่ IP ปลายทางของแพ็กเกตได้มากกว่า คุณสามารถจับคู่การเข้าชมตามโปรโตคอลและที่อยู่ IP ต้นทางได้เช่นกัน ระบบจะเปลี่ยนเส้นทางการรับส่งข้อมูลที่ตรงกันไปยังตัวจัดสรรภาระงานเครือข่ายภายใน การดำเนินการนี้จะช่วยคุณแทรกอุปกรณ์ เช่น ไฟร์วอลล์ ลงในเส้นทางการจราจรของข้อมูลในเครือข่ายได้
เมื่อสร้างเส้นทางตามนโยบาย คุณจะเลือกทรัพยากรที่สามารถประมวลผลการรับส่งข้อมูลของเส้นทางนั้นได้ เส้นทางนี้ใช้ได้กับสิ่งต่อไปนี้
- เครือข่ายทั้งหมด: อินสแตนซ์เครื่องเสมือน (VM), เกตเวย์ VPN และการเชื่อมต่อถึงกันทั้งหมด
- การใช้แท็กเครือข่าย: เลือกอินสแตนซ์ VM ใน VPC
- ภูมิภาคการเชื่อมต่อถึงกัน: การรับส่งข้อมูลทั้งหมดที่เข้าสู่เครือข่าย VPC โดยใช้ไฟล์แนบ VLAN สำหรับภูมิภาค
ฮอพถัดไปของเส้นทางตามนโยบายต้องเป็นตัวจัดสรรภาระงานเครือข่ายภายในที่ถูกต้อง ซึ่งอยู่ในเครือข่าย VPC เดียวกับเส้นทางตามนโยบาย
ตัวจัดสรรภาระงานเครือข่ายภายในใช้การแฮชแบบสมมาตรโดยค่าเริ่มต้น ดังนั้นการรับส่งข้อมูลจึงเข้าถึงอุปกรณ์เดียวกันได้ในเส้นทางขาออกและพาธกลับโดยไม่ต้องกำหนดค่า NAT ของต้นทาง
เส้นทางตามนโยบายจะมีลำดับความสำคัญสูงกว่าเส้นทางประเภทอื่น ยกเว้นเส้นทางส่งกลับแบบพิเศษ
หากเส้นทางที่อิงตามนโยบาย 2 เส้นทางมีลำดับความสำคัญเหมือนกัน Google Cloud จะใช้อัลกอริทึมภายในเชิงกำหนดเพื่อเลือกเส้นทางตามนโยบายเดียว โดยจะละเว้นเส้นทางอื่นๆ ที่มีลำดับความสำคัญเท่ากัน เส้นทางตามนโยบายจะไม่ใช้การจับคู่คำนำหน้าที่ยาวที่สุด และเลือกเฉพาะเส้นทางที่มีลำดับความสำคัญสูงสุด
คุณสามารถสร้างกฎเดียวสำหรับการเข้าชมทางเดียวหรือหลายกฎเพื่อจัดการการเข้าชมแบบ 2 ทิศทาง
หากต้องการใช้เส้นทางตามนโยบายกับ Cloud Interconnect เส้นทางดังกล่าวต้องใช้กับการเชื่อมต่อ Cloud Interconnect ทั้งหมดทั่วทั้งภูมิภาค เส้นทางตามนโยบายจะใช้ไม่ได้กับการเชื่อมต่อ Cloud Interconnect แต่ละรายการเท่านั้น
อินสแตนซ์ VM ที่ได้รับการรับส่งข้อมูลจากเส้นทางตามนโยบายต้องเปิดใช้การส่งต่อ IP
ข้อควรพิจารณาเกี่ยวกับ PBR
จำเป็นต้องมีการกำหนดค่าพิเศษเพื่อใช้เส้นทางตามนโยบายในลักษณะต่อไปนี้
เช่น การใช้ PBR กับ GKE, PSC หรือกับ PGA/PSA
ดูรายละเอียดเพิ่มเติมเกี่ยวกับ PBR ที่ใช้ GKE ได้ที่นี่ และส่วนข้อจำกัดทั่วไปของ PBR ได้ที่นี่
สิ่งที่คุณจะได้เรียนรู้
- วิธีกำหนดค่าเส้นทางตามนโยบาย
สิ่งที่ต้องมี
- ความรู้ในการทำให้อินสแตนซ์ใช้งานได้และการกำหนดค่าคอมโพเนนต์เครือข่าย
- ความรู้เกี่ยวกับการกำหนดค่าไฟร์วอลล์ VPC
2. สภาพแวดล้อมการทดสอบ
Codelab นี้จะใช้ประโยชน์จาก VPC เดี่ยว ในสภาพแวดล้อมนี้จะมีทรัพยากรในการประมวลผล 2 รายการคือ Clienta และ Clientb ในสภาพแวดล้อมนี้ซึ่งจะส่งแพ็กเก็ตไปยังทรัพยากรเซิร์ฟเวอร์อื่น การใช้ PBR และตัวกรองเราจะบังคับการรับส่งข้อมูลจากไคลเอ็นต์ผ่านทรัพยากรการประมวลผลอื่นสำหรับการบังคับใช้ไฟร์วอลล์ ขณะที่การรับส่งข้อมูลของไคลเอ็นต์จะไปที่เซิร์ฟเวอร์โดยตรง แผนภาพด้านล่างจะแสดงเส้นทาง
ในแผนภาพด้านบน ในทางเทคนิค ควรมี ILB (ตัวจัดสรรภาระงานภายในเครือข่าย) สำหรับเส้นทาง PBR ส่วนนี้ถูกตัดออกเพื่อให้แผนภาพดูง่ายขึ้น
3. ก่อนเริ่มต้น
Codelab ต้องใช้โปรเจ็กต์เดียว
จาก Cloudshell:
export project_id=`gcloud config list --format="value(core.project)"` export region=us-central1 export zone=us-central1-a export prefix=codelab-pbr
4. เปิดใช้ API
หากยังไม่ได้ดำเนินการ ให้เปิดใช้ API เพื่อใช้ผลิตภัณฑ์
จาก Cloudshell:
gcloud services enable compute.googleapis.com gcloud services enable networkconnectivity.googleapis.com
5. สร้างเครือข่าย VPC และซับเน็ต
เครือข่าย VPC
สร้าง VPC ของ Codelab-pbr-vpc:
จาก Cloudshell:
gcloud compute networks create $prefix-vpc --subnet-mode=custom
ซับเน็ต
สร้างเครือข่ายย่อยที่เกี่ยวข้องในภูมิภาคที่เลือก:
จาก Cloudshell:
gcloud compute networks subnets create $prefix-vpc-subnet \ --range=10.10.10.0/24 --network=$prefix-vpc --region=${region}
6. สร้างกฎไฟร์วอลล์
หากต้องการอนุญาตให้ IAP เชื่อมต่อกับอินสแตนซ์ VM ให้สร้างกฎของไฟร์วอลล์ที่มีลักษณะดังนี้
- ใช้กับอินสแตนซ์ VM ทั้งหมดที่คุณต้องการให้เข้าถึงได้โดยใช้ IAP
- อนุญาตการรับส่งข้อมูลขาเข้าจากช่วง IP 35.235.240.0/20 ช่วงนี้ประกอบด้วยที่อยู่ IP ทั้งหมดที่ IAP ใช้สำหรับการส่งต่อ TCP
จาก Cloudshell:
gcloud compute firewall-rules create $prefix-allow-iap-proxy \ --direction=INGRESS \ --priority=1000 \ --network=$prefix-vpc \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=35.235.240.0/20
วิธีอนุญาตพอร์ต HTTP มาตรฐาน (TCP 80) และโปรโตคอล ICMP ไปยังเซิร์ฟเวอร์
- ใช้กับทรัพยากรที่มีแท็กเครือข่าย "เซิร์ฟเวอร์"
- อนุญาตข้อมูลขาเข้าจากทุกต้นทาง
จาก Cloudshell:
gcloud compute firewall-rules create $prefix-allow-http-icmp \ --direction=INGRESS \ --priority=1000 \ --network=$prefix-vpc \ --action=ALLOW \ --rules=tcp:80,icmp \ --source-ranges=0.0.0.0/0 \ --target-tags=server
หากต้องการให้ FW รับแพ็กเก็ตได้ ให้อนุญาตการรับส่งข้อมูลขาเข้าในโปรโตคอลและพอร์ตทั้งหมด
- ใช้กับทรัพยากรที่มีแท็กเครือข่าย "fw"
- อนุญาตข้อมูลขาเข้าจากต้นทาง 10.10.10.0/24
จาก Cloudshell:
gcloud compute firewall-rules create $prefix-fw-allow-ingress \ --direction=INGRESS \ --priority=1000 \ --network=$prefix-vpc \ --action=ALLOW \ --rules=all \ --source-ranges=10.10.10.0/24 \ --target-tags=fw
เพื่ออนุญาตการตรวจสอบประสิทธิภาพการทำงาน
- ใช้กับทรัพยากรที่มีแท็กเครือข่าย "fw"
- อนุญาตข้อมูลขาเข้าจากช่วงการตรวจสอบประสิทธิภาพการทำงาน
จาก Cloudshell:
gcloud compute firewall-rules create $prefix-allow-hc-ingress \ --direction=INGRESS \ --priority=1000 \ --network=$prefix-vpc \ --action=ALLOW \ --rules=tcp:80 \ --source-ranges=130.211.0.0/22,35.191.0.0/16 \ --target-tags=fw
7. สร้าง Cloud Router และ Cloud NAT
วัตถุประสงค์ของส่วนนี้คือให้เครื่องเสมือนส่วนตัวดาวน์โหลดแพ็กเกจซอฟต์แวร์ที่เหมาะสมจากอินเทอร์เน็ต
สร้างเราเตอร์ระบบคลาวด์
จาก Cloudshell:
gcloud compute routers create ${prefix}-cr \ --region=${region} \ --network=${prefix}-vpc
สร้างเกตเวย์ Cloud NAT
จาก Cloudshell:
gcloud compute routers nats create ${prefix}-nat-gw-${region} \ --router=${prefix}-cr \ --router-region=${region} \ --auto-allocate-nat-external-ips \ --nat-all-subnet-ip-ranges
8. สร้างอินสแตนซ์การประมวลผล
สร้างอินสแตนซ์การประมวลผล ClientA, ClientB, FW และเซิร์ฟเวอร์ดังนี้
จาก Cloudshell:
gcloud compute instances create clienta \ --subnet=$prefix-vpc-subnet \ --no-address \ --private-network-ip=10.10.10.10 \ --zone $zone \ --tags client \ --metadata startup-script='#! /bin/bash apt-get update'
จาก Cloudshell:
gcloud compute instances create clientb \ --subnet=$prefix-vpc-subnet \ --no-address \ --private-network-ip=10.10.10.11 \ --zone $zone \ --tags client \ --metadata startup-script='#! /bin/bash apt-get update'
จาก Cloudshell:
gcloud compute instances create server \ --subnet=$prefix-vpc-subnet \ --no-address \ --private-network-ip=10.10.10.200 \ --zone $zone \ --tags server \ --metadata startup-script='#! /bin/bash sudo su apt-get update apt-get -y install tcpdump apt-get -y install nginx cat > /var/www/html/index.html << EOF <html><body><p>Server</p></body></html> EOF'
จาก Cloudshell:
gcloud compute instances create fw \ --subnet=$prefix-vpc-subnet \ --can-ip-forward \ --no-address \ --private-network-ip=10.10.10.75 \ --zone $zone \ --tags fw \ --metadata startup-script='#! /bin/bash apt-get update sudo apt-get -y install tcpdump sudo apt-get -y install nginx sudo sysctl -w net.ipv4.ip_forward=1 sudo iptables -I FORWARD -d 10.10.10.200 -j REJECT'
9. ทดสอบการเชื่อมต่อโดยไม่ใช้ PBR
SSH ไปยัง VM การประมวลผลของไคลเอ็นต์ที่เราเพิ่งสร้างและยืนยันการเชื่อมต่อจากทั้ง 2 ไคลเอ็นต์ไปยังเซิร์ฟเวอร์
จาก cloudshell1 ลงชื่อเข้าสู่ระบบไปยัง clienta:
gcloud compute ssh clienta --zone=$zone --tunnel-through-iap
เรียกใช้คำสั่งต่อไปนี้
ping 10.10.10.200 -c 5
curl 10.10.10.200/index.html
การใช้คำสั่ง ping และ curl จะต้องเสร็จสมบูรณ์
เอาต์พุต:
root@clienta:~$ ping 10.10.10.200 -c 5 PING 10.10.10.200 (10.10.10.200) 56(84) bytes of data. 64 bytes from 10.10.10.200: icmp_seq=1 ttl=64 time=1.346 ms 64 bytes from 10.10.10.200: icmp_seq=2 ttl=64 time=0.249 ms 64 bytes from 10.10.10.200: icmp_seq=3 ttl=64 time=0.305 ms 64 bytes from 10.10.10.200: icmp_seq=4 ttl=64 time=0.329 ms 64 bytes from 10.10.10.200: icmp_seq=5 ttl=64 time=0.240 ms
root@clienta:~$ curl 10.10.10.200/index.html <html><body><p>Server</p></body></html>
เปิดแท็บ Cloudshell เพิ่มเติมโดยคลิก +
จากตัวแปรตั้งค่า cloudshell2 สำหรับการใช้งาน:
export project_id=`gcloud config list --format="value(core.project)"` export region=us-central1 export zone=us-central1-a export prefix=codelab-pbr
จาก cloudshell2 SSH ไปยังไคลเอ็นต์:
gcloud compute ssh clientb --zone=$zone --tunnel-through-iap
เรียกใช้คำสั่งต่อไปนี้
ping 10.10.10.200 -c 5
curl 10.10.10.200/index.html
การใช้คำสั่ง ping และ curl จะต้องเสร็จสมบูรณ์
เอาต์พุต:
root@clientb:~$ ping 10.10.10.200 -c 5 PING 10.10.10.200 (10.10.10.200) 56(84) bytes of data. 64 bytes from 10.10.10.200: icmp_seq=1 ttl=64 time=1.346 ms 64 bytes from 10.10.10.200: icmp_seq=2 ttl=64 time=0.249 ms 64 bytes from 10.10.10.200: icmp_seq=3 ttl=64 time=0.305 ms 64 bytes from 10.10.10.200: icmp_seq=4 ttl=64 time=0.329 ms 64 bytes from 10.10.10.200: icmp_seq=5 ttl=64 time=0.240 ms
root@clientb:~$ curl 10.10.10.200/index.html <html><body><p>Server</p></body></html>
จากนั้นออกจากเทอร์มินัล VM แล้วกลับไปที่ Cloudshell
10. สร้างกลุ่มอินสแตนซ์
สร้างกลุ่มอินสแตนซ์ที่ไม่มีการจัดการสำหรับ VM เฟิร์มแวร์
จาก Cloudshell:
gcloud compute instance-groups unmanaged create pbr-uig --zone=$zone
เพิ่มอินสแตนซ์ fw ลงในกลุ่มอินสแตนซ์ที่ไม่มีการจัดการ
จาก Cloudshell:
gcloud compute instance-groups unmanaged add-instances pbr-uig --instances=fw --zone=$zone
11. สร้างการตรวจสอบประสิทธิภาพการทำงาน
สร้างการตรวจสอบประสิทธิภาพการทำงานสำหรับบริการแบ็กเอนด์ เราจะดำเนินการตรวจสอบประสิทธิภาพการทำงานของพอร์ต TCP 80 อย่างง่าย
จาก Cloudshell:
gcloud compute health-checks create tcp $prefix-hc-tcp-80 --region=$region --port 80
12. สร้างบริการแบ็กเอนด์
สร้างบริการแบ็กเอนด์เพื่อแนบกับกฎการส่งต่อ
จาก Cloudshell:
gcloud compute backend-services create be-pbr --load-balancing-scheme=internal --protocol=tcp --region=$region --health-checks=$prefix-hc-tcp-80 --health-checks-region=$region
ตอนนี้ให้เพิ่มกลุ่มอินสแตนซ์ลงในบริการแบ็กเอนด์
จาก Cloudshell:
gcloud compute backend-services add-backend be-pbr --region=$region --instance-group=pbr-uig --instance-group-zone=$zone
13. สร้างกฎการส่งต่อ
จาก Cloudshell:
gcloud compute forwarding-rules create fr-pbr --region=$region --load-balancing-scheme=internal --network=$prefix-vpc --subnet=$prefix-vpc-subnet --ip-protocol=TCP --ports=ALL --backend-service=be-pbr --backend-service-region=$region --address=10.10.10.25 --network-tier=PREMIUM
14. สร้างกฎ PBR
กฎ PBR นี้จะมีผลกับไคลเอ็นต์ และจะกำหนดเส้นทางการรับส่งข้อมูล IPv4 ทั้งหมดไปยังกฎการส่งต่อ 10.10.10.25 หาก IP ต้นทางคือ 10.10.10.10/32 (ที่อยู่ของไคลเอ็นต์) และ IP ปลายทางคือ 10.10.10.0/24
ซึ่งหมายความว่า Clienta จะจับคู่ PBR และ ไม่ใช่ clientb
จาก Cloudshell:
gcloud network-connectivity policy-based-routes create pbr-client \ --network=projects/$project_id/global/networks/$prefix-vpc \ --next-hop-ilb-ip=10.10.10.25 \ --source-range=10.10.10.10/32 \ --destination-range=10.10.10.0/24 \ --protocol-version=IPv4 \ --priority=1000 \ --tags=client
กฎ PBR นี้จะมีผลกับเซิร์ฟเวอร์ และจะกำหนดเส้นทางการรับส่งข้อมูลแบบ IPv4 ทั้งหมดไปยังกฎการส่งต่อ 10.10.10.25 หาก IP ต้นทางเป็น 10.10.10.200/32 และ IP ปลายทางคือ 10.10.10.10/32
จาก Cloudshell:
gcloud network-connectivity policy-based-routes create pbr-server \ --network=projects/$project_id/global/networks/$prefix-vpc \ --next-hop-ilb-ip=10.10.10.25 \ --source-range=10.10.10.200/32 \ --destination-range=10.10.10.10/32 \ --protocol-version=IPv4 \ --priority=2000 \ --tags=server
15. ทดสอบการเชื่อมต่อกับ PBR
ตอนนี้เราจะยืนยันฟังก์ชันการทำงาน PBR "ส่งต่อ" อินสแตนซ์ได้รับการกำหนดค่าด้วย iptables เพื่อปฏิเสธคำขอที่ส่งไปยังเซิร์ฟเวอร์ หาก PBR ใช้งานได้ คำขอที่เคยใช้งานใน clienta ก่อนหน้านี้จะล้มเหลวขณะที่ Clientb ยังคงทํางานสําเร็จ
SSH ไปยัง VM ประมวลผลของไคลเอ็นต์ และทำการทดสอบเดียวกัน
จาก Cloudshell1:
gcloud compute ssh clienta --zone=$zone --tunnel-through-iap
เรียกใช้คำสั่งต่อไปนี้
ping 10.10.10.200 -c 5
curl 10.10.10.200/index.html
เอาต์พุต:
root@clienta:~$ ping 10.10.10.200 -c 5 PING 10.10.10.200 (10.10.10.200) 56(84) bytes of data. From 10.10.10.75 icmp_seq=1 Destination Port Unreachable From 10.10.10.75 icmp_seq=2 Destination Port Unreachable From 10.10.10.75 icmp_seq=3 Destination Port Unreachable From 10.10.10.75 icmp_seq=4 Destination Port Unreachable From 10.10.10.75 icmp_seq=5 Destination Port Unreachable
root@clienta:~$ curl 10.10.10.200/index.html curl: (7) Failed to connect to 10.10.10.200 port 80: Connection refused
เนื่องจากคำขอล้มเหลว เราจึงยืนยันได้ว่า PBR กำลังกำหนดเส้นทางการรับส่งข้อมูลสำหรับไคลเอ็นต์ไปยังอินสแตนซ์ fw ซึ่งกำหนดค่าไว้ให้บล็อกการรับส่งข้อมูลนี้
SSH ไปยังไคลเอ็นต์และทำการทดสอบการเชื่อมต่อเดียวกัน
จาก Cloudshell2:
gcloud compute ssh clientb --zone=$zone --tunnel-through-iap
เรียกใช้คำสั่งต่อไปนี้
ping 10.10.10.200 -c 5
curl 10.10.10.200/index.html
เอาต์พุต:
root@clientb:~$ ping 10.10.10.200 -c 5 PING 10.10.10.200 (10.10.10.200) 56(84) bytes of data. 64 bytes from 10.10.10.200: icmp_seq=1 ttl=63 time=0.361 ms 64 bytes from 10.10.10.200: icmp_seq=2 ttl=63 time=0.475 ms 64 bytes from 10.10.10.200: icmp_seq=3 ttl=63 time=0.379 ms
root@clientb:~$ curl 10.10.10.200 <html><body><p>Server</p></body></html>
ดังที่คุณเห็น คำขอจากไคลเอ็นต์ไปยังเซิร์ฟเวอร์ดำเนินการสำเร็จ เนื่องจากคำขอไม่ตรงกับกฎ PBR สำหรับ IP ต้นทาง
16. [ไม่บังคับ] การตรวจสอบด้วยการจับภาพบนไฟร์วอลล์
ในส่วนที่ไม่บังคับนี้ คุณมีโอกาสตรวจสอบ PBR โดยรับการบันทึกแพ็กเก็ตบน VM ของไฟร์วอลล์
คุณควรยังคงมีการเชื่อมต่อ SSH ใน cloudshell1 และ cloudshell2 กับไคลเอ็นต์และไคลเอ็นต์
เปิดแท็บ Cloudshell เพิ่มเติมโดยคลิก +
จาก cloudshell3 ให้ตั้งค่าตัวแปรดังนี้
export project_id=`gcloud config list --format="value(core.project)"` export region=us-central1 export zone=us-central1-a export prefix=codelab-pbr
SSH ไปยังส่งต่อ:
gcloud compute ssh fw --zone=$zone --tunnel-through-iap
เรียกใช้คำสั่งต่อไปนี้ใน fw (cloudshell3)
sudo tcpdump -i any icmp -nn
จาก clienta (cloudshell1) ให้ทําการทดสอบ ping
ping 10.10.10.200 -c 5
จาก clientb (cloudshell2) ให้ทําการทดสอบ ping
ping 10.10.10.200 -c 5
เอาต์พุตใน fw (cloudshell 3):
root@fw:~$ sudo tcpdump -i any icmp -nn tcpdump: data link type LINUX_SLL2 tcpdump: verbose output suppressed, use -v[v]... for full protocol decode listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes 17:07:42.215297 ens4 In IP 10.10.10.10 > 10.10.10.200: ICMP echo request, id 25362, seq 1, length 64 17:07:42.215338 ens4 Out IP 10.10.10.75 > 10.10.10.10: ICMP 10.10.10.200 protocol 1 port 51064 unreachable, length 92 17:07:43.216122 ens4 In IP 10.10.10.10 > 10.10.10.200: ICMP echo request, id 25362, seq 2, length 64 17:07:43.216158 ens4 Out IP 10.10.10.75 > 10.10.10.10: ICMP 10.10.10.200 protocol 1 port 30835 unreachable, length 92 17:07:44.219064 ens4 In IP 10.10.10.10 > 10.10.10.200: ICMP echo request, id 25362, seq 3, length 64 17:07:44.219101 ens4 Out IP 10.10.10.75 > 10.10.10.10: ICMP 10.10.10.200 protocol 1 port 2407 unreachable, length 92
คุณจะไม่เห็นแพ็กเก็ตใดๆ ใน tcpdump จากไคลเอ็นต์ (10.10.10.11) เนื่องจาก PBR ไม่เกี่ยวข้อง
ออกจาก Cloud Shell เพื่อล้างข้อมูลทรัพยากร
17. ขั้นตอนการทำความสะอาด
จาก Cloud Shell ให้นำกฎ PBR, กฎการส่งต่อ, บริการแบ็กเอนด์, การตรวจสอบประสิทธิภาพการทำงาน, อินสแตนซ์, อินสแตนซ์การประมวลผล, NAT, Cloud Router และกฎไฟร์วอลล์ออก
gcloud -q network-connectivity policy-based-routes delete pbr-client gcloud -q network-connectivity policy-based-routes delete pbr-server gcloud -q compute forwarding-rules delete fr-pbr --region=$region gcloud -q compute backend-services delete be-pbr --region=$region gcloud -q compute health-checks delete $prefix-hc-tcp-80 --region=$region gcloud -q compute instance-groups unmanaged delete pbr-uig --zone=$zone gcloud -q compute instances delete clienta --zone=$zone gcloud -q compute instances delete clientb --zone=$zone gcloud -q compute instances delete server --zone=$zone gcloud -q compute instances delete fw --zone=$zone gcloud -q compute routers nats delete ${prefix}-nat-gw-${region} \ --router=$prefix-cr --router-region=$region gcloud -q compute routers delete $prefix-cr --region=$region gcloud -q compute firewall-rules delete $prefix-allow-iap-proxy gcloud -q compute firewall-rules delete $prefix-allow-http-icmp gcloud -q compute firewall-rules delete $prefix-fw-allow-ingress gcloud -q compute firewall-rules delete $prefix-allow-hc-ingress
นำซับเน็ตและ VPC ออก:
gcloud -q compute networks subnets delete $prefix-vpc-subnet \ --region $region gcloud -q compute networks delete $prefix-vpc
18. ยินดีด้วย
ขอแสดงความยินดีที่เรียน Codelab จนจบ
สรุปประเด็นที่ได้พูดถึง
- เส้นทางตามนโยบาย