バックアップソフトウエアです
本家様 http://blog.bacula.org/ マニュアルhttp://blog.bacula.org/documentation/documentation/
下記6の要素があるようで、ここではDirectorとConsole、Monitor、Catalogを一つにまとめ3つの要素として扱う
もちろん構成によっては全部が1台で動かしても構わない。
でも、バックアップ対象(File)が複数あって、directorとstorageが一緒となるのが多いのかな?
一応、仮想マシンとかデータベースのオンラインバックアップもできるようだけど、こちらは料金が発生するみたい。
まぁファイルだけのバックアップを行うのなら、これでいいかな。
関連:VTL, Bacula/configuration, Bacula/labeling, Bacula/bat, Bacula/bconsole, Bacula/memo
3台構成で、director、storage、fileで構築してみた。OSは共にCentOS7
まずCatalogを収めるデータベース(PostgreSQL)をインストールして、Unix domain socketでtrust認証を可能にさせる。
*IPv4でmd5認証接続でも構わない
[root@director ~]# yum install postgresql-server
[root@director ~]# postgresql-setup initdb
[root@director ~]# vi /var/lib/pgsql/data/pg_hba.conf
- local all all peer
+ local all all trust
[root@director ~]# systemctl enable postgresql
[root@director ~]# systemctl start postgresql
これでCatalogの準備は完了で、次にBacula Directorをインストールする。
[root@director ~]# curl -o /etc/yum.repos.d/slaanesh-Bacula-epel-7.repo \
https://copr.fedorainfracloud.org/coprs/slaanesh/Bacula/repo/epel-7/slaanesh-Bacula-epel-7.repo
[root@director ~]# sed -i 's/enabled=1/enabled=0/' /etc/yum.repos.d/slaanesh-Bacula-epel-7.repo
[root@director ~]# yum --enablerepo=slaanesh-Bacula install bacula-director bacula-console
これで/etc/passwdにbaculaユーザが作成されます。
その後、bacula-directorパッケージに含まれているCatalog向けのSQLを実行します。
これでBacula向けのデータベースとテーブルらと、そのテーブルを操作できるpostgres内ユーザ(bacula)が作られる。
[root@director ~]# su - postgres -c /usr/libexec/bacula/create_postgresql_database
[root@director ~]# su - postgres -c /usr/libexec/bacula/make_postgresql_tables
[root@director ~]# su - postgres -c /usr/libexec/bacula/grant_postgresql_privileges
[root@director ~]# psql -U bacula -l
データベース一覧
名前 | 所有者 | エンコーディング | 照合順序 | Ctype(変換演算子) | アクセス権
-----------+----------+------------------+------------+-------------------+-----------------------
bacula | postgres | SQL_ASCII | C | C |
postgres | postgres | UTF8 | ja_JP.utf8 | ja_JP.utf8 |
template0 | postgres | UTF8 | ja_JP.utf8 | ja_JP.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | ja_JP.utf8 | ja_JP.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 行)
[root@director ~]#
留意
当然このdirectorとは違うマシンのpostgresも利用できる
もし違うマシンのpostgres、違うユーザで使用するなら/etc/bacula/bacula-dir.confのCatalog項を修正する。
Catalog {
Name = MyCatalog
dbname = "bacula"; dbuser = "bacula"; dbpassword = ""
}
これでbacula-directorのインストールは完了
バックアップ先のマシンにbacula-storageパッケージをインストールします。
[root@storage ~]# yum --enablerepo=slaanesh-Bacula install bacula-storage
インストールと同時に/etc/passwdにbaculaユーザが作成されます。またBacula Storageのデーモンも作られる。
[root@storage ~]# getent passwd |grep bacula
bacula:x:133:133:Bacula Backup System:/var/spool/bacula:/sbin/nologin
[root@storage ~]#
[root@storage ~]# systemctl list-unit-files |grep bacula
bacula-sd.service disabled
[root@storage ~]#
いわゆるバックアップソフトのクライアントをバックアップ対象マシンにインストールします。
[root@client ~]# yum --enablerepo=slaanesh-Bacula install bacula-client
[root@client ~]# systemctl list-unit-files |grep bacula
bacula-fd.service disabled
[root@client ~]#
設定はかなり複雑で Bacula/configuration にて提示します。
bconsoleで日本語があると文字化けが生じる。
/etc/sysconfig/bacula-dirにLANG=Cを追加すれば回避可能
|