Tìm hiểu về Bacula Server Backup + Webmin [ Phần 2]

Tác giả: 12/01/2023

Tiếp theo bài viết Tìm hiểu về Bacula Server Backup + Webmin [ Phần 1], hôm nay Nhân Hòa sẽ tiếp tục phần bài viết thứ 3 Demo triển khai Bacula server + webmin.

Qua phần bài viết 1 các bạn có thể hiểu cơ bản về các khái niệm Bacula và webmin.

Chuẩn bị môi trường triển khai: Bacula client có thể triển khai trên cả window, centos,ubuntu,…phần mềm được thiết kế với nhiều hệ điều hành, ở phần này mình sẽ làm trên centos 7.

  • Hai máy centos 7 blank, đã update OS, 1 máy làm bacula server + webmin server, 1 máy làm bacula client ,máy client cần backup các dữ liệu định trước.
  • Baculaserver có IP =45.117.80.128, baculaclient có IP = 45.117.80.123
  • Các bạn có thể share disk cho Bacula Server thông qua NFS hoặc ISCSI

I.Server Bacula

Cài MariaDB server:

yum install mariadb-server -y
vi /etc/my.cnf

Thêm vào

character-set-server=utf8

Khởi động maria

service mariadb start
systemctl enable mariadb

Khai báo đầu tiên trong MariaDB

mysql_secure_installation

Cài Director and Storage

yum -y install bacula-director-mysql bacula-storage-mysql bacula-console

Chọn loại DB server lưu trữ thông tin về backup , ở đây mình cài mariadb nên chọn mysql

alternatives   --config libbaccats.so

Tạo database , phân quyền và table bacula:

/usr/libexec/bacula/grant_mysql_privileges -p
/usr/libexec/bacula/create_mysql_database -p
/usr/libexec/bacula/make_mysql_tables -p

Tạo user bacula local và bacula remote

mysql -u root -p
set password for bacula@'%'=password('password');
set password for bacula@'localhost'=password('password');

Cấu hình Bacula Dir

vi /etc/bacula/bacula-dir.conf
22: Password = "password"

94: Compression = GZIP    thêm vào
110: File = /home      thư mục backup, nếu muốn nhiều dùng dấu cách hoạc bk thư mục cha và ngoại trừ…

158: Address = 45.117.80.123    (backup client) muốn bk nhiều client thì làm nhiều đoạn

161: Password = "password"

187: Address = 45.117.80.128    Backup Server

189: Password = "password"

236: dbname = "bacula"; dbuser = "bacula"; dbpassword = "password"

286: Volume Retention = 180 days

287: Maximum Volume Jobs = 1   thêm vào

288: Label Format = Vol-

312-316 thêm #

vi /usr/libexec/bacula/make_catalog_backup.pl

108: exec("HOME='$wd' mysqldump -f -u$args{db_user} -p$args{db_password} --opt $args{db_name} > '$wd/$args{db_name}.sql'");

service bacula-dir restart

systemctl enable bacula-dir

Cấu hình storage

vi /etc/bacula/bacula-sd.conf

26: Password = "password"

33-37: thêm #

55: Chọn vùng lưu các volum backup : /mnt/bacula/iscsi

service bacula-sd restart

systemctl enable bacula-sd

Cấu hình  Bacula bconsole

vi /etc/bacula/bconsole.conf

Address = 45.117.80.128

Password = "password"

II.Cấu hình trên Client

Cài bacula client

yum -y install bacula-client bacula-console

vi /etc/bacula/bacula-fd.conf

15: Password = "password"

22-26 xóa hoặc thêm #

service bacula-fd restart

systemctl enable bacula-fd

Cấu hình bconsole

vi /etc/bacula/bconsole.conf

address = 45.117.80.128

Password = "password"

Như vậy là đã xong phần cấu hình.

Đầu tiên chúng ta sẽ đặt tên các Volum backup của client.

bconsole

*label

Vol-45.117.80.123

Qua bên bacula server xem thử

 

III.Cài webmin để sử dụng bacula = giao diện

yum install perl-Net-SSLeay -y

yum install http://download.webmin.com/download/yum/webmin-2.010-1.noarch.rpm -y

service webmin restart

Truy cập: https://(server’s hostname or IP address):10000

Kết nối dịch vụ bacula vào panel webmin

 

IV.Test backup restore

Vì đang chỉ backup mỗi cái /home nên mình tải lên cái j đó có dung lượng ở client /home

Log

Kiểm tra Vol-45.117.80.123

Như vậy mình đã tạo backup thủ công trên giao diện, phần restore các bạn vào mục Restore Backup trên webmin để restore

Thao tác trên giao diện ssh thủ công từ client 45.117.80.123

[root@tudv-cl1 home]# bconsole

Connecting to Director 45.117.80.128:9101

1000 OK: bacula-dir Version: 5.2.13 (19 February 2013)

Enter a period to cancel a command.

*run

Automatically selected Catalog: MyCatalog

Using Catalog "MyCatalog"

A job name must be specified.

The defined Job resources are:

1: BackupClient1

2: BackupCatalog

3: RestoreFiles

Select Job resource (1-3): 1

Run Backup job

JobName:  BackupClient1

Level:    Incremental

Client:   bacula-fd

FileSet:  Full Set

Pool:     File (From Job resource)

Storage:  File (From Job resource)

When:     2023-01-06 02:37:48

Priority: 10

OK to run? (yes/mod/no): yes

Job queued. JobId=2

*messages

06-Jan 02:38 bacula-dir JobId 2: Start Backup JobId 2, Job=BackupClient1.2023-01-06_02.38.07_25

06-Jan 02:38 bacula-dir JobId 2: Using Device "FileStorage" to write.

06-Jan 02:38 bacula-sd JobId 2: Volume "Vol-45.117.80.123" previously written, moving to end of data.

06-Jan 02:38 bacula-sd JobId 2: Ready to append to end of Volume "Vol-45.117.80.123" size=750804659

*messages

06-Jan 02:38 bacula-sd JobId 2: Elapsed time=00:00:02, Transfer rate=28.87 M Bytes/second

06-Jan 02:38 bacula-dir JobId 2: Bacula bacula-dir 5.2.13 (19Jan13):

Build OS:               x86_64-redhat-linux-gnu redhat (Core)

JobId:                  2

Job:                    BackupClient1.2023-01-06_02.38.07_25

Backup Level:           Incremental, since=2023-01-06 02:30:31

Client:                 "bacula-fd" 5.2.13 (19Jan13) x86_64-redhat-linux-gnu,redhat,(Core)

FileSet:                "Full Set" 2023-01-06 02:30:29

Pool:                   "File" (From Job resource)

Catalog:                "MyCatalog" (From Client resource)

Storage:                "File" (From Job resource)

Scheduled time:         06-Jan-2023 02:37:48

Start time:             06-Jan-2023 02:38:09

End time:               06-Jan-2023 02:38:12

Elapsed time:           3 secs

Priority:               10

FD Files Written:       2

SD Files Written:       2

FD Bytes Written:       57,749,172 (57.74 MB)

SD Bytes Written:       57,749,370 (57.74 MB)

Rate:                   19249.7 KB/s

Software Compression:   0.6 %

VSS:                    no

Encryption:             no

Accurate:               no

Volume name(s):         Vol-45.117.80.123

Volume Session Id:      2

Volume Session Time:    1672944927

Last Volume Bytes:      808,597,329 (808.5 MB)

Non-fatal FD errors:    0

SD Errors:              0

FD termination status:  OK

SD termination status:  OK

Termination:            Backup OK

Restore


bconsole


*restore


Select item: (1-13): 5


ls


mark home


lsmark


done

V.Tổng Kết

Như vậy Nhân Hòa đã giới thiệu với các bạn Backup Bacula đi kèm panel Webmin,

Bacula có thể đặt backup tự động theo ý muốn tại thẻ schedue backup trên webmin.

Chúc các bạn thực hiện thành công , hẹn gặp lại các bạn tại các bài viết sau tại wiki.nhanhoa.com

 

Trả lời