System Architect
Hacker 6009
Blog Adminnote
Do trình độ kỹ thuật hạn hẹp, mong các bạn đọc giả có thể góp ý hoặc đặt câu hỏi thông qua phần Liên Hệ
ở trên.
#
Virtual EnviromentProxmox - Virtual Environment
một nền tảng quản lý ảo hóa máy chủ mã nguồn mở. Đây là bản phân phối Linux dựa trên Debian với nhân Ubuntu LTS đã được sửa đổi và cho phép triển khai và quản lý các máy ảo và vùng chứa.
Xem thông tin chi tiết & document tại đây
Tình trạng hiện tại của VZ01
- Chỉ sử dụng ảo hóa Virtual Machine cho tất cả các máy chủ
- 1 dây Ethernet số 1 được bridge với internet vmbr0 và vmbr1 là IP
10.10.10.1
được bridge qua vmbr0. - Ổ cứng (3,2TB 10K RPM)
- 48 x Intel(R) Xeon(R) CPU E5-2678 v3 @ 2.50GHz (2 Sockets)
- 190GB RAM
- Kernel Version: Linux 5.4.73-1-pve #1 SMP PVE 5.4.73-1 (Mon, 16 Nov 2020 10:52:16 +0100)
- PVE Manager Version: pve-manager/6.3-2/22f57405
#
LXC ContainersMặc dù Proxmox
cung cấp cho chúng ta 2 cơ chế ảo hóa, gồm LXC Container
và Virtual Machine
. Tuy nhiên, chúng tôi chỉ sử dụng Virtual Machine
để đảm bảo hệ thống hoạt động ổn định.
caution
Không có kế hoạch sử dụng LXC Container
#
Virtual MachineID được đặt theo cấu trúc:
ví dụ Virtual Machine có ID là 100 thì ta sẽ có IP là 10.10.10.100
#
FirewallĐể thuận tiện cho việc automation trong tương lai, đơn giản hóa trong việc cấu hình và tài nguyên. Chúng tôi đã sử dụng Shorewall
. Xem chi tiết tại trang chủ
#
InterfaceChúng tôi có 3 interfaces:
#
NAT PortChúng tôi có quy định NAT port như sau:
#
Đối với các Protocol HTTPĐối với HTTP/HTTPS, mô hình không sử dụng NAT. Mà sử dụng Domain Resolved, vui lòng xem phần Domain Resolved
.
#
Đối với Protocal != HTTP/HTTPSPort > 100
Luôn ưu tiên NAT Port mặc định của protocol nếu chỉ có một máy chủ trong hệ thống sử dụng port này.
Ví dụ email server, có POP3 và SMTP. Vui lòng NAT Port mặc định vào Protocol đó của Virtual Machine.
Trường hợp không phải port mặc định của máy chủ, vui lòng ghi chú thêm vào bản ghi của Shorewall
Port < 100 Có quy tắc sau:
Đa số port < 100 thường là các port được tất cả hầu hết Virtual Machine sử dụng, nên ta có quy tắc sau:
ví dụ VM có ID là 100
thì ta sẽ NAT Port 10022
cho port 22 (SSH Protocol) như ví dụ phía dưới.
#
Anti DDoS- Mail Server được sử dụng
CSF
của Direct Admin. - Proxmox Server sử dụng
fail2ban
bảo vệ.
#
Domain Resolved#
Cách Hoạt ĐộngTất cả các Request HTTP/HTTPS đều được đưa qua Nginx xử lý trước khi đưa vào máy chủ Virtual Machine bên trong. Ví dụ:
#
SSL RenewalChúng tôi sử dụng certbot
để kích hoạt SSL tự động. Xem document chính tại đây
Để thao tác với SSL của Nginx, bạn có thể sử dụng lệnh:
#
Monitoring#
Prometheus#
Các Exporters#
Grafana#
Alert Manager#
Operation ExecutedCác yêu cầu thực hiện thay đỗi hệ thống đều được lập trình và thể hiện qua UI của Cloud Portal có phân quyền.
Yêu cầu của cấp dưới có thể được thực thi ngay hoặc phải được duyệt qua Slack
#
Công Nghệ Sử Dụng#
Slack#
Front-end- Bootstrap
- Codeingiter
#
Back-end- Strapi
#
Data Backup- Backup duy nhất tầng Application
#
High Available#
Nginx#
Các Backend Quan Trọng#
DatabaseCân bằng tải và Failover