1. Vì sao backend bắt buộc phải dùng IP tĩnh?
Trong kiến trúc Reverse Proxy, các máy chủ backend không xuất hiện trực tiếp trên Internet, nhưng lại là thành phần quyết định sự ổn định của toàn bộ hệ thống web.
Do đó, việc sử dụng IP tĩnh cho backend là yêu cầu bắt buộc, không phải khuyến nghị.
IP tĩnh giúp:
Reverse Proxy luôn xác định chính xác backend.
Tránh lỗi gián đoạn khi server reboot.
Đảm bảo cơ chế failover thủ công hoạt động đúng.
Đơn giản hóa cấu hình và xử lý sự cố.
Trong hệ thống này:
Backend không dùng DHCP.
Mỗi IP gắn chặt với một vai trò.
2. Quy hoạch IP cho backend
Hệ thống backend sử dụng dải mạng riêng:
Subnet:
10.10.x0.0/24Gateway:
10.10.10.1(Reverse Proxy)
Phân bổ IP:
| Máy chủ | Vai trò | IP |
|---|---|---|
| Reverse Proxy (backend interface) | Gateway | 10.10.10.1 với cổng cho QMS 10.10.20.1 với cổng cho AI |
| QMS Server | Backend chính | 10.10.10.66 |
| AI Server | Backend dự phòng | 10.10.20.88 |
Nguyên tắc:
IP dễ nhớ, có quy luật.
Tránh dùng IP thấp cho backend để chừa chỗ mở rộng.
3. Xác định công cụ quản lý mạng trên backend
Tùy cách cài đặt hệ điều hành, backend có thể dùng:
ifupdownsystemd-networkdnetplan(Ubuntu)
Trong bài này giả định backend chạy Debian / Ubuntu Server không GUI, sử dụng ifupdown.
Kiểm tra:
Nếu file tồn tại, hệ thống đang dùng ifupdown.
4. Cấu hình IP tĩnh cho QMS và AI Server
4.1. Máy chủ QMS
Kiểm tra xem đang dùng NetworkManager hay ifupdown:
systemctl status NetworkManager
hoặc
systemctl status systemd-networkd
Khi đó cần đổi qua dùng: ifupdown
systemctl stop NetworkManagersystemctl disable NetworkManager
systemctl enable networking
Sau đó sửa cấu hình:
nano /etc/network/interfaces
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# Network interface
auto enp0s25
iface enp0s25 inet static
address 10.10.10.66
netmask 255.255.255.0
gateway 10.10.10.1
dns-nameservers 8.8.8.8 1.1.1.1
Sau đó:
systemctl restart networking
4.2. Máy chủ AI
Thực hiện như máy chu QMS, chỉ khác cấu hình:
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# Network interface
auto enp0s25
iface enp0s25 inet static
address 10.10.20.88
netmask 255.255.255.0
gateway 10.10.20.1
dns-nameservers 8.8.8.8 1.1.1.1
Sau đó:
systemctl restart networking
Bạn cần ssh vào Proxy sau đó mới ssh vào máy chủ QMS, AI nhé. Sau đó tham khảo hướng dẫn này để có thể ssh trực tiếp vào QMS, AI (về kỹ thuật vẫn qua Proxy, nhưng thao tác thì chỉ cần
ssh qmshayssh ailà được)
- 8.1. Truy cập ssh nhanh bằng ssh tenmaychu thay vì nhập đủ thông tin đăng nhập
- 8.2. Truy cập bằng ssh đến máy chủ đứng sau proxy
6. Kiểm tra kết nối end-to-end
6.1. Từ backend về Reverse Proxy
6.2. Từ backend ra Internet
Nếu ping Internet không được:
Kiểm tra IP forwarding trên Reverse Proxy.
Kiểm tra firewall (sẽ cấu hình ở phần sau).
--> Tham khảo Bài 6.1. Cấu hình để Backend truy cập được internet và kết nối với nhau
6.3. Từ backend đến backend
Ngay cả khi backend không expose Internet, vẫn cần tuân thủ các nguyên tắc:
Không mở port web trực tiếp ra Internet.
Firewall backend chỉ cho phép:
Reverse Proxy truy cập dịch vụ web.
SSH từ IP quản trị.
Các cấu hình firewall chi tiết sẽ được trình bày ở phần bảo mật.
8. Chuẩn bị cho failover QMS ↔ AI
Nhờ IP tĩnh:
Reverse Proxy có thể trỏ đến
10.10.10.66hoặc10.10.10.88bất cứ lúc nào.Failover không phụ thuộc DNS.
Không phụ thuộc cấu hình backend phức tạp.
Việc chuyển đổi chỉ diễn ra ở:
Cấu hình Nginx trên Reverse Proxy.
9. Những lỗi thường gặp cần tránh
Dùng DHCP cho backend.
Gateway backend trỏ thẳng modem/router.
Backend có nhiều default gateway.
Trùng IP khi mở rộng.
Không ghi chép bảng IP.
Những lỗi này khiến hệ thống:
Khó debug,
Dễ gián đoạn,
Và tiềm ẩn rủi ro lớn khi sự cố xảy ra.
Kết luận
Thiết lập IP tĩnh cho backend là bước:
Đơn giản nhưng cực kỳ quan trọng.
Ảnh hưởng trực tiếp đến độ ổn định của Reverse Proxy.
Sau khi hoàn thành Bài 6:
Backend đã sẵn sàng nhận traffic từ Reverse Proxy.
Kiến trúc mạng đã hoàn chỉnh để triển khai Nginx.
- Đăng nhập để gửi ý kiến