CentOS Stream 9: Sao Lưu Và Phục Hồi ‘Trắng Án’ Với Veeam Agent For Linux

CentOS tutorial - IT technology blog
CentOS tutorial - IT technology blog

Khi kịch bản xấu nhất xảy ra vào lúc 3 giờ sáng

Điện thoại rung bần bật. Server chạy database quan trọng nhất của công ty trên CentOS Stream 9 bỗng dưng mất kết nối. Bạn cố gắng SSH nhưng vô vọng. Tại phòng máy, ổ cứng báo đèn đỏ lịm – lỗi vật lý hoàn toàn. Lúc này, mồ hôi bắt đầu chảy ròng ròng. Bạn chợt nhận ra các script rsync hay tar hàng ngày chỉ copy file dữ liệu. Toàn bộ cấu hình hệ thống, kernel và các thư viện phức tạp đều chưa có bản sao nào.

Đây là thực tế khắc nghiệt mà mình từng trải qua khi quản trị hệ thống. Việc phục hồi lại toàn bộ một OS từ con số 0 (Bare Metal Recovery) thường tốn từ 4 đến 8 tiếng nếu làm thủ công. Đừng bao giờ đặt cược giấc ngủ của bạn vào những script tự viết. Một giải pháp sao lưu chuyên nghiệp sẽ là cứu cánh duy nhất khi thảm họa ập đến.

Tại sao các phương pháp backup truyền thống thường ‘phản chủ’?

Hồi mới vào nghề, mình thường dùng cronjob kết hợp mysqldump. Cách này bộc lộ 3 điểm yếu chí mạng khi hệ thống lớn dần:

  • Dữ liệu không đồng nhất: Nếu script chạy đúng lúc database đang ghi, bản backup rất dễ bị lỗi (corrupted).
  • Thời gian phục hồi (RTO) quá lâu: Bạn phải cài lại OS, cấu hình package, user rồi mới đổ data vào. Với một server 500GB, quy trình này có thể ngốn cả ngày làm việc.
  • Quá tải quản lý: Khi vận hành trên 10 server, việc kiểm tra log của hàng chục script riêng lẻ là một cực hình.

Veeam Agent: Lựa chọn tối ưu cho CentOS Stream 9

Veeam Agent for Linux không chỉ copy file. Nó sử dụng kernel module để tạo snapshot ở mức block (Image-level backup). Nó sao chép chính xác từng bit trên ổ cứng ngay cả khi server đang online. Nếu server sập, bạn chỉ cần một USB cứu hộ để đẩy ngược toàn bộ trạng thái hệ thống về 15 phút trước đó. Đặc biệt, bản FREE vẫn hỗ trợ đầy đủ các tính năng cốt lõi cho server đơn lẻ.

Bước 1: Chuẩn bị môi trường (Cực kỳ quan trọng)

Veeam cần các gói kernel header để build module snapshot. Nếu phiên bản kernel-devel không khớp với kernel đang chạy, quá trình cài đặt sẽ thất bại ngay lập tức. Hãy thực hiện lệnh sau:

sudo dnf update -y
sudo dnf install -y epel-release
sudo dnf install -y kernel-devel-$(uname -r) dkms elfutils-libelf-devel gcc make

Mẹo nhỏ: Nếu bạn vừa cập nhật kernel, hãy reboot server trước. Điều này đảm bảo lệnh uname -r trả về đúng phiên bản kernel mới nhất đang hoạt động.

Bước 2: Cài đặt Veeam Repository

Chúng ta sẽ lấy repo trực tiếp từ nguồn chính thống của Veeam để đảm bảo tính bảo mật. Tránh tuyệt đối việc tải các file RPM không rõ nguồn gốc trên mạng.

# Tải cấu hình repo cho EL9
sudo rpm -ivh https://repository.veeam.com/backup/linux/agent/rpm/el/9/x86_64/veeam-release-el9-1.0.8-1.x86_64.rpm

# Cài đặt Veeam Agent
sudo dnf install -y veeam

Sau khi cài đặt, hãy kiểm tra xem module veeamsnap (hoặc blksnap trên các bản mới) đã sẵn sàng chưa bằng lệnh: lsmod | grep veeam.

Bước 3: Cấu hình Backup Job đầu tiên

Veeam cung cấp giao diện dòng lệnh dạng TUI (Text User Interface) rất trực quan. Bạn chỉ cần gõ:

veeamconfig ui

Nhấn C để tạo Job mới. Mình thường ưu tiên chọn Entire Machine để sao lưu toàn bộ. Nếu bạn dùng ổ cứng ngoài hoặc NAS, hãy chọn mục Shared folder. Một kinh nghiệm thực tế: Hãy đặt lịch backup vào 1:00 AM để tránh ảnh hưởng đến hiệu năng khi có người dùng truy cập.

Bước 4: Kiểm tra – Đừng phó mặc cho may mắn

Làm backup mà không test phục hồi thì coi như chưa làm. Bạn nên chạy thử backup ngay để kiểm tra tốc độ:

veeamconfig job start --name "Daily_Full_Backup"

Theo dõi tiến trình qua lệnh veeamconfig session list. Thông thường, một server 100GB chỉ mất khoảng 15-20 phút cho lần backup đầu tiên qua mạng LAN nội bộ.

Kinh nghiệm thực chiến để không mất tiền oan

Qua nhiều lần “vào sinh ra tử” với các hệ thống Linux, mình rút ra 3 lưu ý:

  1. Tạo ngay Recovery Media: Hãy xuất file ISO cứu hộ của Veeam và lưu trên Cloud hoặc USB. Thiếu file này, bản backup của bạn chỉ là một đống dữ liệu vô dụng khi OS không thể boot.
  2. Giám sát dung lượng: Veeam dùng cơ chế Incremental (chỉ lưu phần thay đổi). Tuy nhiên, nếu server ghi log quá nhiều, dung lượng backup sẽ tăng phi mã. Hãy thiết lập Retention Policy khoảng 7-14 ngày để tối ưu không gian.
  3. Mở Port Firewall: Nếu backup lên NAS qua giao thức SMB/NFS, hãy nhớ allow các port liên quan trên firewalld. Đừng để mất cả buổi chiều chỉ vì lỗi kết nối ngớ ngẩn.

Lời kết

Triển khai Veeam Agent trên CentOS Stream 9 là khoản đầu tư thông minh cho sự an tâm của bạn. Thay vì ngồi cài lại từng package khi gặp sự cố, bạn chỉ cần vài cú click để hệ thống tự hồi sinh. Nếu bạn đang quản lý những dự án quan trọng, hãy cài đặt nó ngay hôm nay. Đừng đợi đến lúc “mất bò mới lo làm chuồng”.

Share: