Mặc dù những người có nhu cầu lưu trữ dữ liệu lớn thường hạn chế sử dụng SSD vì chu kỳ ghi hạn chế và khả năng lưu trữ dài hạn không tối ưu, nhưng những ổ đĩa siêu tốc này lại là lựa chọn tuyệt vời cho ổ đĩa khởi động (boot drive) trên các máy tính cá nhân và máy chủ gia đình. Với ưu điểm về tốc độ, SSD được ưa chuộng hơn HDD khi cài đặt các môi trường ảo hóa, nền tảng containerization, hay các hệ điều hành máy chủ/NAS. Tuy nhiên, một số dịch vụ nhất định có thể gây hao mòn nghiêm trọng cho SSD, đặc biệt trong các tác vụ máy chủ nặng. Đối với những ai đang sử dụng Proxmox cho các nhiệm vụ tự host và thử nghiệm điện toán, việc áp dụng các biện pháp phòng ngừa là cần thiết để đảm bảo ổ đĩa khởi động luôn hoạt động ổn định và bền bỉ. Bài viết này sẽ đi sâu vào các nguyên nhân gây hao mòn SSD trên Proxmox và cung cấp các giải pháp tối ưu hóa hiệu quả, giúp kéo dài tuổi thọ cho ổ đĩa quý giá của bạn.
Nguyên nhân gây hao mòn SSD trong Proxmox
iotop
– Công cụ tiết lộ mọi thứ
Không giống như ổ đĩa cơ học, SSD được trang bị các tế bào flash NAND. Mỗi khi bạn thực hiện các thao tác ghi dữ liệu lên ổ đĩa tốc độ cao này, lớp oxit bên trong tế bào flash sẽ bị hao mòn, dẫn đến giới hạn về chu kỳ ghi. Ngay cả khi bạn đã chuyển các máy ảo có tải I/O (input/output) nặng sang HDD, Proxmox vẫn có một số dịch vụ nền nổi tiếng với việc ghi dữ liệu quá mức lên ổ đĩa khởi động.
Tiện ích iotop
cung cấp một cách dễ dàng để kiểm tra những dịch vụ nào đang thực hiện nhiều thao tác ghi lên ổ đ đĩa. Vì Proxmox được xây dựng trên nền Debian, bạn chỉ cần thực thi lệnh apt install iotop -y
trong giao diện Shell UI của node Proxmox để cài đặt công cụ, sau đó chạy iotop -ao
.
Giao diện dòng lệnh cài đặt tiện ích iotop trên Proxmox VE để theo dõi hoạt động ghi của ổ đĩa SSD.
Trên hầu hết các cấu hình Proxmox, bạn sẽ nhận thấy rằng dịch vụ systemd-journald
và một số tiến trình pve-cfs
là nguyên nhân chính gây ra nhiều thao tác ghi nhất trên SSD. Dịch vụ systemd-journald
đóng vai trò rất quan trọng trong việc khắc phục sự cố (mặc dù có cách để kiểm soát mức độ hao mòn), nhưng hai dịch vụ pve-cfs
mới là trọng tâm chính mà chúng ta cần quan tâm.
Kiểm tra các tiến trình ghi dữ liệu nhiều nhất trên SSD Proxmox bằng công cụ iotop, hiển thị systemd-journald và pve-cfs.
Vô hiệu hóa các dịch vụ gây hao mòn
Giải pháp hiệu quả cho cấu hình Proxmox đơn node
Trong số hai “thủ phạm” gây ra các thao tác ghi dữ liệu quá mức, pve-ha-lrm.service
chịu trách nhiệm xử lý việc phân bổ tài nguyên trên node PVE cục bộ. Dịch vụ còn lại, pve-ha-crm.service
, quản lý tài nguyên cho toàn bộ cluster, giám sát trạng thái của từng node và đảm bảo rằng thiết lập High-Availability (HA) tiếp tục hoạt động miễn là số lượng máy chủ tối thiểu để duy trì quorum vẫn được duy trì.
Vì các dịch vụ này là cần thiết cho các cluster Proxmox, bạn sẽ muốn chúng được bật nếu đang cố gắng xây dựng một cấu hình High-Availability. Tuy nhiên, đối với những người dùng home lab chỉ có kế hoạch sử dụng một cấu hình single-node (một node duy nhất), bạn có thể vô hiệu hóa chúng để ngăn chặn (hoặc ít nhất là làm chậm đáng kể) tốc độ hao mòn của ổ đĩa khởi động.
Việc này khá dễ dàng: chỉ cần gọi trình quản lý systemd
thông qua systemctl
để dừng mỗi dịch vụ trước khi chạy lệnh disable
để vô hiệu hóa nó vĩnh viễn.
systemctl stop pve-ha-lrm.service
systemctl disable pve-ha-lrm.service
systemctl stop pve-ha-crm.service
systemctl disable pve-ha-crm.service
Vô hiệu hóa các dịch vụ cluster pve-ha-lrm và pve-ha-crm trên Proxmox bằng lệnh systemctl để giảm tải cho SSD.
Bonus: Tối ưu lưu trữ nhật ký hệ thống
Log2Ram – Giải pháp lý tưởng cho nhật ký
Bạn còn nhớ tiến trình systemd-journald
mà chúng ta đã phát hiện trước đó trong iotop
? Không giống như trường hợp sử dụng cụ thể của các dịch vụ cluster mà chúng ta đã vô hiệu hóa, systemd-journald
chịu trách nhiệm ghi lại các thống kê hệ thống. Đối với những người quản trị hệ thống, những nhật ký này thực sự là “vị cứu tinh” khi bạn cần khắc phục sự cố máy chủ PVE sau một thử nghiệm thất bại hoặc một tệp cấu hình không chính xác làm hỏng một số chức năng của node Proxmox.
Nếu bạn đang sử dụng một SSD chất lượng thấp, bạn có thể chạy lệnh nano /etc/systemd/journald.conf
để mở tệp journald.conf
và sửa đổi tham số Storage
thành Storage=volatile
. Điều này sẽ buộc node PVE của bạn ghi nhật ký vào RAM và giải phóng SSD khỏi các thao tác ghi thêm. Tuy nhiên, nhược điểm ở đây là nhật ký của bạn sẽ bị xóa khỏi bộ nhớ khi máy chủ tắt. Trong trường hợp hệ thống gặp sự cố, việc khắc phục sẽ trở nên cực kỳ khó khăn, vì bạn sẽ không có phương tiện nào để tìm ra lỗi thực sự của máy chủ.
Thay vào đó, chúng tôi đề xuất sử dụng Log2Ram. Gói tiện ích này ghi nhật ký hệ thống vào bộ nhớ RAM trước khi đồng bộ chúng với SSD định kỳ, nhờ đó mang lại cả hai lợi ích: bảo vệ SSD và giữ lại nhật ký để khắc phục sự cố. Việc thiết lập Log2Ram có thể mất một vài bước. Vì Log2Ram không được bao gồm trong các kho lưu trữ PVE cơ bản, bạn sẽ phải thêm kho lưu trữ của nó theo cách thủ công trước khi chạy lệnh apt install
.
echo "deb [signed-by=/usr/share/keyrings/azlux-archive-keyring.gpg] http://packages.azlux.fr/debian/ bookworm main" | tee /etc/apt/sources.list.d/azlux.list
wget -O /usr/share/keyrings/azlux-archive-keyring.gpg https://azlux.fr/repo.gpg
apt update && apt install log2ram -y
Sau khi cài đặt gói, hãy nhớ khởi động lại node PVE của bạn. Nếu bạn đã làm theo tất cả các bước một cách chính xác, lệnh systemctl status log2ram
sẽ hiển thị Log2Ram ở trạng thái enabled
. Bạn có thể để Log2Ram ở cài đặt mặc định, nhưng bạn cũng có thể sửa đổi các tham số SIZE
và PATH_DISK
của nhật ký bằng cách chạy lệnh nano /etc/log2ram.conf
trong giao diện Shell.
Giao diện chỉnh sửa tệp cấu hình log2ram.conf để tối ưu dung lượng và đường dẫn lưu trữ nhật ký trên Proxmox.
Lời khuyên: Đừng tiết kiệm khi chọn SSD khởi động cho Proxmox
Những biện pháp phòng ngừa được liệt kê ở đây sẽ rất hữu ích cho những người dùng dựa vào SSD làm ổ đĩa khởi động cho Proxmox. Tuy nhiên, các ổ đĩa chất lượng thấp từ các nhà sản xuất không tên tuổi có xu hướng bị hao mòn nhanh hơn nhiều so với các đối tác cao cấp của chúng, ngay cả khi đã áp dụng các biện pháp này. Mặc dù không nên mua một SSD PCIe 5.0 hàng đầu chỉ để làm ổ đĩa khởi động PVE, chúng tôi vẫn khuyên bạn nên chọn một ổ đĩa tương đối tốt để tránh những rắc rối về sau. Đầu tư vào một SSD có độ bền và hiệu suất ổn định sẽ giúp hệ thống của bạn hoạt động trơn tru hơn và giảm thiểu rủi ro mất dữ liệu do hao mòn ổ đĩa.
Hình ảnh một ổ đĩa SSD Samsung 990 EVO, minh họa tầm quan trọng của việc chọn SSD chất lượng cao cho Proxmox VE.
Việc tối ưu hóa và bảo vệ SSD khởi động trên Proxmox là một bước quan trọng để đảm bảo tính ổn định và tuổi thọ cho hệ thống máy chủ của bạn. Bằng cách vô hiệu hóa các dịch vụ không cần thiết và sử dụng các công cụ quản lý nhật ký thông minh như Log2Ram, bạn có thể giảm đáng kể lượng ghi dữ liệu, qua đó kéo dài tuổi thọ cho SSD. Hãy luôn ưu tiên chất lượng khi lựa chọn ổ đĩa cho các tác vụ quan trọng như Proxmox VE để có trải nghiệm sử dụng tốt nhất và an tâm hơn về dữ liệu.