Cài đặt Veeam Agent cho CentOS 8 Stream

Tổng quan

Đây là tài liệu hướng dẫn cài đặt Veeam Backup Agent Linux trên CentOS 8 Stream

Quy trình

  • OS: CentOS is 8 Stream, running kernel 4.18.0-500.el8.x86_64

  • Veeam repository: veeam-release-el8-1.0.8-1.x86_64.rpm

  • Veeam Agent: veeam-6.0.3.1221-1.el8.x86_64

Bước 1: Tải Veeam repository:

Veeam repository cho Linux có thể tìm thấy tại Index of /backup/linux/agent/rpm/el/8/x86_64/ . Trên trang này, chọn "veeam-release-el8-1.0.8-1.x86_64.rpm".

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

  • Điều này sẽ tải xuống một tệp RPM. Có thể bạn sẽ không thể tải tệp này trực tiếp từ trang này về máy Linux của mình, vì máy chủ của bạn có thể không có GUI và trình duyệt web. Để khắc phục điều này, tốt nhất là tải tệp RPM về máy tính của bạn, sau đó sử dụng WinSCP hoặc MobaXterm để sao chép tệp RPM vào máy chủ qua SSH.

  • Khi tệp RPM đã có trên máy chủ, hãy cài đặt nó.

# dnf clean all
# rpm -hi veeam-release-el8-1.0.8-1.x86_64.rpm
# dnf install -y veeam
  • Điều này sẽ cài đặt các gói yêu cầu cho Veeam agent, bao gồm gói kmod-veeamsnap; tuy nhiên, bạn sẽ nhận thấy vẫn có vấn đề với module kernel của Linux cho veeamsnap. Nếu chúng ta kiểm tra các tệp đã cài đặt với kmod-veeamsnap và so sánh với phiên bản kernel hiện tại, chúng ta có thể thấy rằng module kernel chưa được cài đặt cho phiên bản của chúng ta. Sự khác biệt này rất nhỏ.

[root@centos8 ~]# uname -r
4.18.0-500.el8.x86_64

[root@centos8 ~]# dnf download kmod-veeamsnap
Last metadata expiration check: 0:32:53 ago on Mon 07 Aug 2023 04:10:27 PM +07.
kmod-veeamsnap-6.0.3.1221-1.el8.x86_64.rpm

[root@centos8 ~]# rpm -qlp kmod-veeamsnap-6.0.3.1221-1.el8.x86_64.rpm | grep ko$
/lib/modules/4.18.0-147.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-193.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-240.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-305.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-348.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-372.9.1.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-425.10.1.el8_7.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-425.3.1.el8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-477.10.1.el8_8.x86_64/extra/veeamsnap.ko
/lib/modules/4.18.0-80.el8.x86_64/extra/veeamsnap.ko
  • Từ đây, chúng ta có thể thấy rằng module kernel đã được cài đặt cho 4.18.0-477.10.1.el8_7.x86_64, nhưng kernel hiện tại của chúng ta là 4.18.0-500.el8.x86_64.

  • Nếu thiếu module kernel này, các sao lưu dựa trên agent của Veeam sẽ không thành công

  • Chúng ta có thể xác nhận rằng module này chưa được tải bằng cách chạy lsmod và tìm kiếm Veeam. Bạn sẽ thấy rằng lệnh grep trả về 0 dòng đầu ra.

[root@centos8 ~]# lsmod | grep veeam -c 
0
  • May mắn thay, sự khác biệt giữa các phiên bản kernel này là đủ nhỏ để tệp veeamsnap.ko vẫn có thể hoạt động với chúng ta.

  • Trước tiên, chúng ta phải tạo thư mục /extra/ cho phiên bản kernel của mình, sau đó sao chép module kernel vào thư mục này.

[root@centos8 ~]# mkdir -p /lib/modules/$(uname -r)/extra
[root@centos8 ~]# cp /lib/modules/4.18.0-477.10.1.el8_7.x86_64/extra/veeamsnap.ko /lib/modules/$(uname -r)/extra/.
[root@centos8 ~]# ls /lib/modules/$(uname -r)/extra
veeamsnap.ko

Bước 3: Insert module veeamsnap:

Chúng ta cần tải module vào kernel đang chạy hiện tại bằng cách sử dụng insmod:

[root@centos8 ~]# insmod /lib/modules/$(uname -r)/extra/veeamsnap.ko
[root@centos8 ~]# lsmod | grep veeam
veeamsnap             225280  0

Vào thời điểm này, các sao lưu dựa trên agent của chúng ta sẽ chạy bình thường; tuy nhiên, module đã tải sẽ không tồn tại nếu chúng ta khởi động lại. Chúng ta cần tạo một tệp có tên /etc/modules-load.d/veeam.conf, và đảm bảo rằng nó có tên của module kernel trong đó. Chúng ta cũng cần chạy depmod để thêm module kernel đã tải vào danh sách phụ thuộc module kernel.

[root@centos8 ~]# depmod
[root@centos8 ~]# echo veeamsnap > /etc/modules-load.d/veeam.conf
[root@centos8 ~]# cat /etc/modules-load.d/veeam.conf
veeamsnap

Bây giờ, khi chúng ta khởi động lại máy chủ CentOS, module veeamsnap sẽ tự động được tải dưới dạng một kernel module.

[root@centos8 ~]# uptime && lsmod | grep veeam
 14:55:59 up 0 min,  1 user,  load average: 0.00, 0.00, 0.00
veeamsnap             225280  0

Và sau đó agent-based backups của chúng ta sẽ hoạt động chính xác.

Last updated