1. Vì sao phần cứng và mạng là nền móng của toàn bộ hệ thống?
Trong triển khai Web Server, rất nhiều sự cố về sau thường bị quy cho:
Nginx cấu hình chưa đúng
PHP chậm
Database lỗi
Nhưng khi rà soát lại, nguyên nhân gốc lại nằm ở:
Phần cứng không phù hợp
Thiết kế mạng thiếu tính toán
Chuẩn bị hạ tầng mang tính “tạm bợ”
Một Web Server chạy ổn định nhiều năm không thể xây trên nền móng thiếu chắc chắn.
Vì vậy, trước khi cài Ubuntu/Debian, trước khi gõ bất kỳ dòng lệnh nào, cần trả lời rõ các câu hỏi về phần cứng và mạng.
2. Xác định đúng nhu cầu trước khi chọn phần cứng
2.1. Web Server phục vụ cho mục đích gì?
Không có cấu hình “chuẩn cho mọi hệ thống”.
Cần xác định rõ Web Server sẽ phục vụ:
Website giới thiệu, cổng thông tin
Website chuyên ngành, nhiều nội dung động
Hệ thống quản trị nội bộ
Một hay nhiều website trên cùng server
Mỗi loại hình kéo theo yêu cầu rất khác nhau về:
CPU
RAM
Disk
Network
2.2. Nguyên tắc chọn cấu hình phần cứng
Trong loạt bài này, chúng ta theo nguyên tắc:
Ưu tiên ổn định hơn cấu hình cao
Dễ thay thế, dễ nâng cấp
Không phụ thuộc linh kiện quá đặc thù
Một số định hướng chung:
CPU: không cần quá nhiều core, ưu tiên xung ổn định
RAM: dư để tránh swap
Disk: SSD/NVMe là bắt buộc
Không dùng disk cũ, không rõ lịch sử
3. Cấu hình phần cứng khuyến nghị (tham khảo)
3.1. Mức tối thiểu cho Web Server production
CPU: 2–4 core
RAM: 4–8 GB
Disk: SSD ≥ 50 GB
Network: 1 Gbps (hoặc theo gói VPS)
Phù hợp cho:
Website đơn lẻ
Lưu lượng truy cập thấp – trung bình
3.2. Mức khuyến nghị cho nhiều website / CMS
CPU: 4–8 core
RAM: 8–16 GB
Disk: SSD/NVMe ≥ 100 GB
Network: 1 Gbps ổn định
Phù hợp cho:
Nhiều website
CMS (Drupal, WordPress)
Hệ thống cần uptime cao
Hiện server đang khá rẻ. Các cấu hình dual xeon đang dễ tiếp cận. Thay vì dùng nhiều server nhỏ cho các nhóm mục đích, có thể mua 2 server mạnh để chạy song song. Vừa làm nhiệm vụ live/test/backup.
4. Chuẩn bị hệ thống lưu trữ (Disk)
4.1. Vì sao disk rất quan trọng với Web Server?
Disk ảnh hưởng trực tiếp đến:
Thời gian phản hồi
Khả năng xử lý concurrent request
Backup và restore
Log và giám sát
Nguyên tắc bắt buộc:
Không dùng HDD cho Web Server production
SSD/NVMe giúp hệ thống ổn định hơn rất nhiều so với việc “tối ưu phần mềm”
HDD cũng có thể dùng cho production nếu data lớn dạng files. Có thể chạy Raid1/Raid10/Raid5 hoặc chỉ cần backup tùy tính chất công việc.
4.2. Phân vùng disk – tư duy ngay từ đầu
Dù dùng server vật lý hay VPS, cần tư duy:
Disk hệ thống
Disk dữ liệu
Disk backup (nếu có)
Trong điều kiện đơn giản:
Root (
/)Thư mục web
Thư mục backup
Tách logic từ đầu giúp:
Tránh đầy disk do log
Dễ backup từng phần
Dễ mở rộng sau này
Disk OS nên để riêng. Có thể mount Disk/Folder data vào các thư mục quen thuộc cho web/mariadb
5. Chuẩn bị hạ tầng mạng
5.1. Địa chỉ IP và kết nối Internet
Cần xác định rõ:
IP tĩnh hay động
IPv4 / IPv6
Có NAT hay không (thường có)
Đối với Web Server production:
IP tĩnh là yêu cầu gần như bắt buộc
Cần kiểm tra:
Khả năng mở port
Không bị chặn 80/443
5.2. Port và firewall ở mức hạ tầng
Ngay từ đầu cần thống nhất:
Port nào được mở ra Internet
Port nào chỉ dùng nội bộ
Thông thường:
22 (SSH): giới hạn IP
80, 443: public
Database: không public
Nguyên tắc:
Mạng mở bao nhiêu thì bảo mật phải gánh bấy nhiêu.
6. DNS và domain – chuẩn bị trước khi cài server
Nhiều người cài server xong mới nghĩ đến domain.
Cách làm đúng là chuẩn bị domain và DNS song song.
Cần xác định:
Domain chính
Domain phụ (www, staging)
Cách trỏ:
A record
AAAA record (nếu dùng IPv6)
Việc này giúp:
Kiểm tra SSL sớm
Tránh thay đổi cấu hình nhiều lần
7. Nguồn điện, môi trường và các yếu tố thường bị bỏ quên
Với server vật lý:
Nguồn điện ổn định
UPS
Nhiệt độ phòng
Thông gió
Với VPS / Cloud:
Uy tín nhà cung cấp
Chính sách backup
SLA và hỗ trợ kỹ thuật
Rất nhiều sự cố “khó hiểu” thực chất đến từ:
Nguồn điện chập chờn hoặc môi trường không phù hợp.
UPS là bắt buộc khi để máy chủ tại bệnh viện. Bệnh viện luôn có máy phát điện dự phòng, nên UPS chỉ cần 5-10 phút là được. Cài tự tắt máy chủ nếu UPS chỉ còn 20% pin. Tham khảo loạt bài UPS - Bộ lưu điện
8. Checklist chuẩn bị trước khi cài hệ điều hành
Trước khi sang bài cài Ubuntu, cần đảm bảo:
Xác định rõ mục đích Web Server
Chọn cấu hình phần cứng phù hợp
Disk SSD/NVMe, dung lượng đủ
IP tĩnh, mở đúng port cần thiết
Domain và DNS đã sẵn sàng
Có phương án backup cơ bản
Nếu chưa hoàn tất checklist này, không nên vội cài hệ điều hành.
9. Bài tiếp theo
Trong Bài 6, chúng ta sẽ chính thức bắt đầu triển khai:
Lựa chọn hệ điều hành (Ubuntu Server LTS/Debian): lý do và khuyến nghị
Bài này sẽ giải thích:
Vì sao không dùng bản mới nhất
Vì sao LTS phù hợp với production
Những sai lầm phổ biến khi chọn OS cho Web Server
- Đăng nhập để gửi ý kiến