🌐 Hướng Dẫn Thực Hành VPC Network Peering trên Google Cloud
Trong các dự án đám mây thực tế, bạn thường cần kết nối hai mạng VPC tách biệt để các tài nguyên của chúng có thể giao tiếp an toàn qua IP nội bộ mà không cần phải công khai ra Internet. Đây chính là lúc VPC Network Peering phát huy tác dụng. Nó cung cấp khả năng giao tiếp riêng tư, độ trễ thấp giữa các VPC trong khi vẫn giữ chúng tách biệt về quản lý.
Trong bài viết này, chúng ta sẽ thiết lập hai VPC, tạo ra các subnet và VM instances, kiểm tra khả năng kết nối và sau đó kích hoạt VPC Peering để cho phép giao tiếp nội bộ an toàn.
📚 Mục Lục
- Giới thiệu
- Tạo VPC1 và Subnet
- Tạo VPC2 và Subnet
- Tạo VM Instances
- Kiểm tra Kết nối Ban đầu
- Cấu hình VPC Peering
- Xác minh trạng thái kết nối VPC Peering
- Xác minh khả năng kết nối sau Peering
- Dọn dẹp
- Tóm tắt
- Các Thực Hành Tốt nhất
- Các Cạm Bẫy Thường Gặp
- Mẹo Tối Ưu Hiệu Suất
- Khắc Phục Sự Cố
🔹 Giới thiệu
Chúng ta sẽ thực hiện các bước sau:
- Tạo hai VPC (vpc1 và vpc2)
- Tạo các subnet trong mỗi VPC (vpc1subnet, vpc2subnet)
- Tạo VM trong mỗi subnet (vpc1-vm, vpc2-vm)
- Kiểm tra ping giữa các VM (sẽ thất bại ban đầu)
- Cấu hình VPC Peering giữa các VPC
- Thực hiện lại kiểm tra ping (sẽ thành công 🎉)
🔹 Tạo VPC1 và Subnet
Cấu hình VPC1
- Tên: vpc1
- Chế độ: Tùy chỉnh
- Quy tắc tường lửa: allow-ssh, allow-icmp, allow-custom
- Định tuyến: Mặc định (Toàn cầu)
Subnet cho VPC1
- Tên: vpc1subnet
- Khu vực: us-central1
- CIDR: 10.1.0.0/16
🔹 Tạo VPC2 và Subnet
Cấu hình VPC2
- Tên: vpc2
- Chế độ: Tùy chỉnh
- Quy tắc tường lửa: allow-ssh, allow-icmp, allow-custom
- Định tuyến: Mặc định (Toàn cầu)
Subnet cho VPC2
- Tên: vpc2subnet
- Khu vực: us-central1
- CIDR: 10.8.0.0/16
🔹 Tạo VM Instances
bash
# Đặt Dự án
gcloud config set project gcpdemos
# VM trong vpc1subnet
gcloud compute instances create vpc1-vm \
--zone=us-central1-a \
--machine-type=e2-micro \
--network-interface=subnet=vpc1subnet
# VM trong vpc2subnet
gcloud compute instances create vpc2-vm \
--zone=us-central1-a \
--machine-type=e2-micro \
--network-interface=subnet=vpc2subnet
🔹 Kiểm tra Kết nối Ban đầu
bash
# Kết nối tới vpc1-vm
gcloud compute ssh vpc1-vm --zone=us-central1-a --project=gcpdemos
# Thử ping đến IP nội bộ vpc2-vm
ping <vpc2-vm-internal-ip>
# ❌ Sẽ THẤT BẠI
# Kết nối tới vpc2-vm
gcloud compute ssh vpc2-vm --zone=us-central1-a --project=gcpdemos
# Thử ping đến IP nội bộ vpc1-vm
ping <vpc1-vm-internal-ip>
# ❌ Sẽ THẤT BẠI
🔹 Cấu hình VPC Peering
Từ VPC1 → VPC2
- Truy cập VPC Network -> VPC network peering -> TẠO KẾT NỐI PEERING
- Tên: vpc1-to-vpc2-peering
- VPC của bạn: vpc1
- Dự án Peer: gcpdemos
- VPC Peer: vpc2
- Bật nhập/xuất định tuyến subnet
Từ VPC2 → VPC1
- Tên: vpc2-to-vpc1-peering
- Truy cập VPC Network -> VPC network peering -> TẠO KẾT NỐI PEERING
- Tên: vpc2-to-vpc1-peering
- VPC của bạn: vpc2
- Dự án Peer: gcpdemos
- VPC Peer: vpc1
- Bật nhập/xuất định tuyến subnet
🔹 Xác minh trạng thái kết nối VPC Peering
- Truy cập VPC Network -> VPC network peering
- Kiểm tra trạng thái → Cả hai kết nối nên ở trạng thái ACTIVE ✅
🔹 Xác minh khả năng kết nối sau Peering
bash
# Từ vpc1-vm → vpc2-vm
gcloud compute ssh vpc1-vm --zone=us-central1-a --project=gcpdemos
ping <vpc2-vm-internal-ip>
# ✅ Sẽ THÀNH CÔNG
# Từ vpc2-vm → vpc1-vm
gcloud compute ssh vpc2-vm --zone=us-central1-a --project=gcpdemos
ping <vpc1-vm-internal-ip>
# ✅ Sẽ THÀNH CÔNG
🔹 Dọn dẹp
- Xóa 2 VM
- Xóa các kết nối VNET Peering
- Xóa 2 VPC
🎯 Tóm tắt
- Trước Peering → VMs trong các VPC khác nhau không thể giao tiếp
- Sau Peering → Kết nối riêng tư, độ trễ thấp hoạt động qua IP nội bộ
- Các trường hợp sử dụng:
- Kiến trúc đa dự án
- Các nhà cung cấp SaaS cung cấp dịch vụ một cách an toàn
- Kết nối các VPC dev/test với VPC dịch vụ chung
🛠️ Các Thực Hành Tốt nhất
- Luôn kiểm tra các quy tắc tường lửa để đảm bảo không bị chặn kết nối.
- Sử dụng CIDR một cách hợp lý để tránh xung đột IP.
⚠️ Các Cạm Bẫy Thường Gặp
- Không cấu hình đúng các kết nối VPC Peering có thể dẫn đến mất kết nối.
- Bật nhầm nhập/xuất định tuyến có thể gây ra xung đột trong mạng.
⚡ Mẹo Tối Ưu Hiệu Suất
- Sử dụng VPC Peering cho các dự án yêu cầu độ trễ thấp và băng thông cao.
- Tối ưu hóa quy tắc tường lửa để giảm thiểu độ trễ.
🛠️ Khắc Phục Sự Cố
- Nếu không thể ping giữa các VM, hãy kiểm tra lại cấu hình tường lửa và Peering.
🔥 Chỉ với một vài bước đơn giản, bạn đã kích hoạt giao tiếp riêng tư giữa các VPC trên Google Cloud bằng cách sử dụng VPC Network Peering.