Tạo AWS VPC gồm Public Subnet và Private Subnet – Cuongquach.com | Tiếp tục chuỗi bài về AWS VPC Networking, thì giờ chúng ta sẽ tìm hiểu cách tạo một Public Subnet và một Private Subnet như thế nào nhé ?! Đơn giản vì sao phải tìm hiểu cách tạo 2 subnet này, vì một kiến trúc hạ tầng mạng thường chỉ có vài Public IP Node là được phép access từ bên ngoài, còn lại đều phải nằm trong kiến trúc mạng nội bộ bên trong.
Contents
Mô hình Lab AWS VPC Public Subnet và Private Subnet
Trong bài viết này chúng ta sẽ kết hợp kiến thức của các phần gồm :
- VPC
- Subnet
- Route Table
- Internet Gateway
- Elastic IP
Trong mô hình như dưới, chúng ta sẽ học cách cấu hình một Subnet trong VPC được phép truy cập Internet Public, còn subnet còn lại thì chỉ để trong lớp mạng private không ra Internet Public. Để dễ hình dung thì chúng ta sẽ đánh dấu subnet nào đi public là SubnetPublic còn Subnet nào dùng private thôi thì là Subnet Private.

1. Tạo một VPC
Ở phần này bạn có thể tham khảo chi tiết lại bài viết : Hướng dẫn tạo AWS VPC và AWS VPC Subnet , mục VPC nhằm hướng dẫn cách tạo VPC.
Trong bài lab này thì mình sẽ tạo một VPC tên : prod.cuongquach.main , dùng để quy hoạch toàn bộ network subnet cho các ứng dụng của sản phẩm chẳng hạn. Lớp mạng thì mình cho theo ý của mình.
Thông tin VPC:
- Name Tag : prod.cuongquach.main
- IPv4 CIDR Block: 10.110.0.0/16
- Tenancy: Default

2. Tạo các Subnet
Ở phần tạo các Subnet bạn có thể tham khảo chi tiết tại bài viết : Hướng dẫn tạo AWS VPC và AWS VPC Subnet, mục Subnet để hiểu rõ quy trình tạo chuẩn về Subnet trong VPC giữa các Availability Zones.
Trong bài lab này mình sẽ tạo 2 Subnet đánh dấu public và private để dễ phân biệt khi lab gồm :
- prod.cuongquach.web.1a.public (Public Subnet)
- prod.cuongquach.web.1b.private (Private Subnet)
+ Tạo Subnet Public
- Name Tag: prod.cuongquach.web.1a.public
- VPC : prod.cuongquach.main
- Availability Zone : ap-southeast-1a (Singapore Region)
- IPv4 CiDR Block: 10.110.4.0/22

+ Tạo Subnet Private
- Name Tag: prod.cuongquach.web.1b.private
- VPC : prod.cuongquach.main
- Availability Zone : ap-southeast-1b (Singapore Region)
- IPv4 CiDR Block: 10.110.8.0/22

3. Tạo Internet Gateway
Giờ chúng ta sẽ tạo Internet Gateway, chỉ định gateway dành cho các Instance sở hữu địa chỉ IP Public biết đường đi ra Internet Public từ các Subnet trong VPC của bạn.
Đầu tiên ta chọn tạo “Internet Gateway” với thông tin tên ví dụ : prod.cuongquach.main.igw , dành cho VPC ‘prod.cuongquach.main‘ đã tạo ở trên.
Chọn “Internet Gateway” bên pannel trái > “Create Internet Gateway“.

Nhập tên của Internet Gateway và chọn “Create” để tiến hành khởi tạo.
Thực hiện gắn Internet Gateway vừa tạo vào VPC ‘prod.cuongquach.main‘. Chọn “Internet Gateway” và click “Actions” > “Attach to VPC“.

Chọn VPC mà ta mong muốn attach IGW vào.

Sau khi gắn IGW vào VPC, thì trạng thái sẽ là ‘attached‘.

4. Thêm route ở Public Subnet
Để các Instance được tạo ở Public Subnet có thể kết nối ra ngoài Internet thì bạn cần tạo một Route Table riêng để cấu hình thông tin định tuyến cho Subnet đó. Do ta tránh chỉnh sửa trực tiếp Route Table default.
Tạo một Route Table tên : prod.cuongquach.web.public.rt . Chọn “Route Tables” > “Create route table“.

Nhập thông tin tên Route Table và VPC mà Route Table đó sẽ thuộc về.

Kế đến bạn cần gán Route Table đó cho một Subnet cụ thể mà bạn muốn. Với route table public này ta sẽ dùng cho Subnet public : prod.cuongquach.web.1a.public

Chọn Subnet public và nhấn “Save“.

Giờ bạn sẽ thêm route cho Route Table vừa tạo. Chọn Route Table và tab “Routes” > “Edit Routes“.

Với thông tin route default đi về Internet Gateway prod.cuongquach.main.igw . Còn phần route local private mặc định sẽ chạy về local router tự định tuyến rồi.
Chọn “Save routes” và hoàn tất việc add route default về Internet Gateway, như vậy nếu các Instance trong Subnet gặp route default là các IP Public Dest thì sẽ mặc định chạy về Internet Gateway đã gán cho VPC đó để đi Internet.

Bạn cũng đã hoàn tất việc khởi tạo VPC Subnet Private và Subnet Public.
Bước 5 : gán IP public cho EC2 Instance
Ở phần này chỉ là nhắc lại bạn những lưu ý sau :
- Subnet/ VPC dù đã có Internet Gateway và route về IGW nhưng nếu EC2 Instance không có địa chỉ IP Public để sử dụng thì cũng không thể đi Internet, đó là điều hiển nhiên.
- Bạn có thể gán IP Public cho EC2 Instance với 2 kiểu : 1 là Elastic IP , 2 là IPv4 Public tự động của AWS.
- Bạn đã có thể tạo EC2 Instance trong 2 subnet cụ thể gồm : Subnet Public , có route đi ra Internet Public hoặc Subnet Private, không có route đi ra Internet Public nên ở trong mạng nội bộ mà thôi.
+ IPv4 Public tự động của AWS
Khi bạn tạo một Instance mới trong VPC và Subnet public ở trên , bạn có thể chọn “Auto-assign Public IP” để có địa chỉ IP.
+ Elastic IP
Bạn vui lòng xem lại bài viết này để có thể cấu hình Elastic IP : Hướng dẫn cài đặt Elastic IP cho Amazon EC2 Instance
Tổng kết
Vậy là bạn có thể tự trải nghiệm kiến trúc network VPC trên, bằng cách tự tạo các Instance trong các Subnet Private và Public rồi test mạng với nhau là xong. Chúc các bạn thành công.
Nguồn: https://cuongquach.com/