의식여행

[Bacula] 오픈소스 백업 솔루션 Bacula 설치 및 설정하기 본문

IT(리눅스&보안&개발)/리눅스-CentOS

[Bacula] 오픈소스 백업 솔루션 Bacula 설치 및 설정하기

의식여행중 2018. 6. 22. 16:33

Bacula 란?

-Bacula Director(9101)

: Client 와 통신하면 모든 백업, 복원, 확인 및 기록하는 작업을 감독하는 프로그램이다.

(/etc/bacula/bacula-dir.conf, Director { } 부분)

-Bacula Console

: Bacula Director 와 통신하며 명령을 수행할 수 있는 프로그램이다.
(텍스트 기반 콘솔 인터페이스 사용)

-Bacula File(9102)

: 백업 대상의 Client에 설치 필요한 프로그램이다.
(Director와 통신하며 파일 속성 정보 등, 즉 데이터 전달)

-Bacula Storage(9103)

: 파일 속성 및 데이터를 물리적인 백업 미디어 또는 볼륨에 저장하는 프로그램이다.

-Bacula Monitor

: 서비스 관리자에게 데몬 상태를 제공해주는 프로그램이다.


Bacula 및 MariaDB 설치

-yum -y install bacula*(dirctor, storage, console 등) mariadb-server


MariaDB 설정

-systemctl start mariadb.service

-/usr/libexec/bacula/grant_mysql_privileges // bacula 계정 및 권한 추가
-/usr/libexec/bacula/create_mysql_database -u root // bacula 데이터베이스 생성
-/usr/libexec/bacul/make_mysql_table -u bacul // bcul 테이블 생성

-mysql_secure_installation // mysql에서 제공하는 보안 관련 스크립트
(root password 설정, anonymous user 제거, 원격 접속 설정, Test DB 삭제 등)

-mysql -u root -p // 이전에 설정한 Root 패스워드로 접속
-UPDATE mysql.user SET Password=PASSWORD('123456') WHERE User='bacula';
-FlUSH PRIVILEGES:
-exit

** bacula Table 정보 확인(basefiles, client, file, job, log 등)

BACULA(MYSQL LIB 사용 설정)

-alternatives --config libbaccats.so // Bacula 에서 제공하는 3가지 DB(Postgrsql, sqlite3, mysql 중 선택)
-'1' 입력 (mysql 선택)

백업 및 복구 디렉토리 생성

-mkdir -p /bacula/backup /bacula/restore

-chown -R bacula:bacula /bacula // Bacula프로세스 및 Super유저만이 액세스 가능
-chmod -R 700 /bacula 
acula프로세스 및 Super유저만이 사용 가능

Director 설정

-vi /etc/bacula/bacula-dir.conf
- Director { } 안에, DirAddress = 127.0.0.1 추가 // LocalHost 수신 가능

백업 설정

-'BackupClient1' 검색 후, Name 변경(BackupClient1 -> BackupLocalFiles)

복구 설정

-'RestoreFiles' 검색 후, Name 변경(BackupClient1 -> RestorLocalFiles)
-Where 변경(/tmp/bacul -> */bacula/restore)

 FileSet 설정

-Options - signature 하단에, compression = GZIP 추가
-Exclue { } 부분에, File = /bacula 추가 

Storage 설정

-'Storage' 검색 후 Address 부분에, 외부 연결이 필요한 경우 내용 변경 (localhost -> x.x.x.x)

Catalog 설정

-'Catalog' 검색 후 dbpassword 내용 변경 (bacula의 Mysql Password)

Pool 설정(Storage의 집합)

-'File Pool definition' 검색 후, Pool { } 부분 Pool Type 하단에 Label Format = Local- 추가

Config 설정 점검

-bacula-dir -tc /etc/bacula/bacula-dir.conf


저장소 Deamon 설정

-vi /etc/bacula/bacula-sd.conf
-'Storage' 검색 후, SDAddress = x.x.x.x 추가
-'FileStorage' 검색 후, Archive Device 수정 (/tmp -> */bacula/backup)

-bacula-sd -tc /etc/bacula/bacula-sd.conf 를 통한 Config Error 확인
























Comments