Bỏ qua

02.ip plan2

🎯 VPC Sizing & IP Plan: Tư duy của Kiến trúc sư Cloud


image

PHẦN 1: Lý thuyết nền tảng (Phải nhớ)

1. Tại sao phải lên kế hoạch cho VPC & Subnet?

  • VPC là “mảnh đất” của bạn trên AWS (mỗi VPC là 1 khu đất riêng, chọn kích thước và chia phòng sao cho hợp lý).
  • Nếu chọn sai từ đầu (IP chồng lấn, subnet quá nhỏ/không đủ dùng), sau này mở rộng, kết nối, hoặc migrate sẽ cực kỳ đau đầu và tốn tiền!

2. Các khái niệm cơ bản

  • CIDR Block: Dải IP của VPC/subnet. VD: 10.16.0.0/16 (65,536 IPs), 10.16.0.0/20 (4,096 IPs).
  • Subnet: Mỗi subnet là một “phòng” trong “ngôi nhà” VPC, gán vào 1 AZ duy nhất.

3. Các mẫu VPC sizing thường gặp (theo AWS)

Loại VPC CIDR VPC Số Subnet CIDR mỗi Subnet Số IP/subnet Tổng IP usable
Micro /24 8 /27 27 216
Small /22 8 /25 123 984
Medium /20 8 /27 27 216
Large /16 16 /20 4,091 65,456

Ghi nhớ: Mỗi lần tăng số ở sau dấu “/” lên 1 thì số mạng con gấp đôi, số IP mỗi mạng con giảm một nửa.

4. Nguyên tắc chuẩn khi chia subnet

  • Mỗi AZ → ít nhất 1 subnet cho mỗi tier (web/app/db/“buffer”)
  • Luôn dành “spare/buffer” subnet cho mở rộng
  • Các subnet phải nằm trọn trong VPC, không trùng nhau
  • Chọn dư IP hơn nhu cầu hiện tại (dự phòng mở rộng)

PHẦN 2: Thực tế công việc (Cách chuyên gia làm ngoài đời)

1. Quy trình chuẩn để thiết kế VPC IP plan

Bước 1: Xác định số lượng AZ sẽ dùng - Hầu hết region có 3 AZ, chọn 3 AZ + 1 buffer (tổng 4 AZ) để mở rộng dễ. - Tên AZ: a, b, c, (d hoặc spare)

Bước 2: Xác định số tiers (lớp) của hệ thống - Thường có 3 tier: Web, App, Database + 1 buffer (tổng 4 tier)

Bước 3: Số subnet cần thiết = Số AZ x Số tier = 4 x 4 = 16 subnet

Bước 4: Chọn dải IP cho VPC (thường /16) - VD: 10.16.0.0/16 cho mỗi VPC (65,536 IP usable) - Chia ra 16 subnet, mỗi subnet là /20 (mỗi subnet ~4,091 IP usable)

Bước 5: Lập bảng phân bổ IP - Tạo file excel/pdf lưu lại từng dải IP cho từng region, từng account để không trùng lặp. - Ví dụ:

Region Account VPC CIDR Subnet AZa Subnet AZb ...
us-east-1 general 10.16.0.0/16 10.16.0.0/20 10.16.16.0/20 ...
us-east-1 prod 10.17.0.0/16 10.17.0.0/20 10.17.16.0/20 ...
eu-west-1 dev 10.64.0.0/16 10.64.0.0/20 10.64.16.0/20 ...
  • Tip: Tránh dùng các dải 10.0.0.0/8, 10.1.0.0/16… (Google/GCP thường dùng), tránh luôn 192.168.x.x trùng mạng nội bộ công ty.

2. Tư duy thiết kế subnet thực tế

  • Lúc phát triển có thể chỉ dùng 1-2 AZ, nhưng luôn nên chia 4 AZ/subnet ngay từ đầu (tránh thiếu sau này).
  • Web/App tier để ở public/private subnet tùy nhu cầu, DB tier nên luôn ở private subnet.
  • Không để mọi thứ ở public subnet như Default VPC!

3. Bài học từ thực tế

  • Nếu không lên plan ngay từ đầu, khi cần kết nối hybrid (VPN, Direct Connect, VPC Peering) sẽ bị trùng IP, phải migrate cực kỳ tốn kém.
  • Một số công ty lớn phải thuê ngoài dịch vụ audit lại toàn bộ VPC/subnet/IP, mất hàng tuần chỉ vì không có IP plan.
  • Luôn lưu lại bảng IP plan, share cho team để tránh conflict!

PHẦN 3: Tư duy thực chiến & bài tập áp dụng

1. Checklist khi design VPC

  • [ ] Đã chọn đủ AZ (tối thiểu 3, tốt nhất 4)
  • [ ] Đã dự phòng số tier/subnet cho tương lai
  • [ ] Đã chọn dải IP không trùng với các hệ thống khác
  • [ ] Đã chia subnet đủ rộng, dư so với nhu cầu hiện tại
  • [ ] Có file lưu lại toàn bộ IP plan

2. Các câu hỏi phỏng vấn/cert hay gặp

  • “Vì sao nên tránh dùng 10.0.0.0/16 cho VPC?”
  • “Nếu thiết kế VPC cho 4 AZ và 4 tier, cần bao nhiêu subnet? Mỗi subnet nên là CIDR gì?”
  • “Làm thế nào để tránh trùng IP khi có nhiều VPC/account/region?”
  • “Default VPC khác gì Custom VPC về mặt subnetting và IP planning?”

3. Bài tập hands-on

  • Tự lập plan IP cho 2 region (us-east-1, ap-southeast-1), mỗi region có 2 account (prod/dev). Mỗi account 1 VPC /16, chia thành 16 subnet /20.
  • Vẽ sơ đồ/mindmap phân bổ subnet cho mỗi AZ, mỗi tier.
  • Thực hành tạo VPC và subnet thủ công trên AWS Console hoặc dùng Terraform.

PHẦN 4: Tips nhớ lâu & tổng kết

  • Rule of 4: 4 AZ x 4 tier = 16 subnet (rất chuẩn để đi thi và đi làm)
  • /16 → chia 16 subnet = /20 mỗi subnet
  • File IP plan là “bảo bối” khi đi làm, đi audit, đi thi
  • Lúc nào cũng dư subnet & IP, không bao giờ chia sát nút!
  • Tránh IP phổ biến, tránh trùng GCP/Azure/văn phòng

📌 Kết luận

  • Lên IP plan VPC/subnet là kỹ năng “core” của architect/cloud eng, phải làm thật chắc, không được ẩu.
  • Đọc lại bài này mỗi lần chuẩn bị setup môi trường mới hoặc đi phỏng vấn, đi thi!
  • Có thể dùng “Animals for Life” IP plan hoặc tự tạo file riêng cho công ty/dự án của mình.

Bình luận