「オープンソース」を使ってみよう
(第41回 Bacula)

No Comments
このエントリーをはてなブックマークに追加

  • 1.Bacula.jpについて
  • 2.Baculaとは?
  • 3.Baculaの基本
  •  3.1 Directorデーモン
     3.2 Storageデーモン
     3.3 Fileデーモン
     3.4 コンソール
     3.5 大規模なバックアップシステム

  • 4.Bacula環境の構築
  • 5.バックアップ手順
  • 6.リストア手順
  • 7.GUIツール
  • 8.Baculaのよくある質問
  • 9.今後のイベント活動について
  • 10.まとめ
  • 1 Bacula.jpについて

    Bacula.jpはBaculaの日本での普及を目的としたコミュニティです。
    現在の主な活動として、Baculaのインストール手順、構築手順などの公開、
    ハンズオンなどの勉強会、Baculaの公式ドキュメントの日本語への翻訳を
    実施しています。

    Bacula.jpではBaculaの最新情報を掲載しています。
    Bacula.jp公式サイト 

    またハンズオンや勉強会の告知はconnpassで実施しています。
    ハンズオンや勉強会にご興味お持ちいただけましたらグループ登録
    していただくと最新の勉強会開催日程をお知らせできます。
    http://bacula.connpass.com/

    2 Baculaとは?

    Baculaはオープンソースのバックアップソフトウェアで、
    Linux、UNIX、Windows、Macなどのサーバおよびクライアントの
    バックアップ、リストアを簡単に実施することができます。
    バックアップの種類はもちろん「フルバックアップ」「差分バックアップ」
    「増分バックアップ」に対応しています。
    Source Forgeのダウンロード統計によりますとオープンソースの
    バックアップソフトとしては世界一のダウンロード数を誇っています。

    3 Baculaの基本

    Baculaは実際にどのようにしてバックアップを取得しているのかご紹介します。
    BaculaはサーバとなるBaculaサーバとバックアップ取得対象となるサーバおよび
    クライアントが存在します。関係図を示すと以下図1のようになります。

    図1 Baculaサーバ関係図
                図1 Baculaサーバ関係図

    BaculaサーバにはDirectorデーモン、Storageデーモン、Fileデーモン、
    カタログ(データベース)、コンソールをインストールし、バックアップ取得
    対象となるサーバおよびクライアントにFileデーモンをインストールします。
    Baculaサーバとバックアップ取得対象となるサーバおよびクライアントの
    Fileデーモンが通信することによりバックアップ、リストアが可能となります。

    次にBaculaサーバの動きをもう少し詳しく紹介します。
    Directorデーモン、Storageデーモン、Fileデーモン、カタログ(データベース)、
    コンソールは図解すると以下の図2のようにお互いデーモン同士でデータを送受信
    して動作しています。以下の図2ではサーバ1台にデーモンを1つずつ存在する図に
    なっていますが、わかりやすくするため便宜上記載しているだけで、1台のサーバ
    に全てのデーモン、データベース、コンソールをインストールすることが可能です。

    図2 各デーモンの動き
                  図2 各デーモンの動き

    あとでご紹介するBaculaサーバ構築手順も1台のサーバに全てのデーモン、
    データベース、コンソールをインストールする手順になっています。

    次に各デーモンとコンソールがどのような働きをしているのかを紹介します。

    3.1 Directorデーモン

    Bacula全体を管理する指令塔の役割を担っています。
    データベースと連携して、すべてのクライアントに関するバックアップと
    リストアの設定とデータを管理し、ジョブの実行を制御します。
    Baculaではバックアップ、リストアをJOBという単位で管理します。
    また、Bacula用語でデータベースのことをカタログと呼びます。

    3.2 Storageデーモン

    バックアップデータの保存先へ書き込み処理やバックアップストレージを管理します。
    ハードディスク、テープ、オートチェンジャー、USBメモリなど多様なストレージを
    扱えます。

    3.3 Fileデーモン

    クライアント側(バックアップ対象機)で発生する処理
    (バックアップデータのデータ圧縮、暗号化)や
    、バックアップ、リストアデータの読み込みを行います。
    バックアップ対象サーバおよびクライアントにインストールします。

    また多様なプラットフォームをサポートします。

    様々なLinuxディストリビューション
    (Red Hat Enterprise Linux、CentOS、Ubuntu、SUSEなど)
    Windows
    Mac OSX
    FreeBSD
    Solaris
    AIX
    HP-UX
    など

    3.4 コンソール

    Directorを操作するためのコンソールです。
    コンソールには以下のような種類があります。

    名称 ツールタイプ
    bconsole       CUIベースのツール
    baculum Webベースのツール
    bacula-web Webベールのツール
    Webacula Webベースのツール
    bat GUIベースのアプリケーションツール

    標準でbconsoleがインストールされます。
    その他のツールは別途インストールが必要です。

    3.5 大規模なバックアップシステム

    各デーモンを1つのサーバインストールすることが可能とご紹介してきましたが、
    各デーモンを別々のサーバにインストールし大規模なバックアップシステムを作る
    ことも可能です。
    イメージは以下の図3のようになります。

    図3 大規模バックアップシステム
                図3 大規模バックアップシステム

    Directorデーモンを1台のサーバにインストール。
    Storageデーモンを2台のサーバにインストールそしてStorageデーモンの配下に
    各バックアップ対象のサーバをぶら下げることも可能です。Storageデーモンの
    数やバックアップ対象のサーバの数は図3以上に増やすことも、もちろん可能です。

    4 Bacula環境の構築

    BaculaサーバとBaculaクライアントのインストール手順、設定手順をご紹介します。
    ご紹介するBacula環境の構築手順は一番シンプルなBaculaサーバ1台にDirector
    デーモン、Storageデーモン、Fileデーモン、カタログ(データベース)、
    コンソールをインストールし、バックアップ取得対象となるサーバ1台に
    Fileデーモンをインストールします。
    図4のような構成になります。

    図4 Bacula環境構築の構成図
              図4 Bacula環境構築の構成図

    ご紹介する手順はBacula.jpに掲載しています。
    インストール手順→設定手順→Baculaサーバ起動・停止の順番で
    進めていただくとBacula環境が構築できます。また、バックアップ対象機となる
    サーバではBaculaクライアントインストール手順、Baculaクライアント設定を
    実施してください。
    ※手順はCentOS7をベースにしています。

    Baculaサーバインストール手順

    Baculaクライアントインストール手順

    Baculaサーバ設定手順

    Baculaクライアント設定

    Baculaサーバ起動・停止

    また上記でBacula設定手順を紹介していますが、
    そのまま使える設定ファイルのサンプルもありますので、是非ご活用ください。
    各サーバのIPアドレスとデータベースのパスワード部分は環境に合わせて変更して
    ください。

    bacula-dir.conf

    bacula-sd.conf

    bconsole.conf

    bacula-fd.conf

    Baculaで設定変更が必要なファイルは基本的に上記の4ファイルになります。

    5 バックアップ手順

    Bacula環境が構築できたところでバックアップを実施します。
    バックアップ手順に関してもBacula.jpにてご紹介しています。

    バックアップ手順

    6 リストア手順

    バックアップができたところでリストアがしっかりできることを確認してみましょう。
    リストア手順に関してもBacula.jpにてご紹介しています。

    リストア手順

    7 GUIツール

    bconsoleとよばれるCUIツールは標準でインストールされていますが、
    その他のGUIツールは別途インストールが必要です。
    現時点で開発が活発な2つのツールについてインストール手順をご紹介します。
    こちらもBacula.jpにてご紹介していますのでCUIではなくGUIが必要な場合は
    ご参照ください。
    基本的にGUIツールで設定変更はできません。GUIツールはJOBの実行結果の確認、
    JOBの再実行やステータス確認に使用します。

    Baculumインストール手順

    Baculumダッシュボード
    Bacula-Webダッシュボード

    Bacula-Webインストール手順

    Bacula-Webダッシュボード
    Bacula-Webダッシュボード

    8 Baculaのよくある質問

    Baculaを使う上でよくある質問をまとめてBacula.jpでご紹介しています。
    Bacula環境構築の上でご参考になれば幸いです。

    Baculaのよくある質問

    9 今後のイベント活動について

    ■第4回Baculaハンズオン
    2016年10月15日(土)
    http://bacula.connpass.com/event/39627/

    ■OSC2016 Tokyo/Fall
    2016年11月5日(土)-6日(日)
    http://www.ospn.jp/osc2016-fall/
    ブース出展(デモ展示)

    10 まとめ

    最後までお読みいただきありがとうございました。
    今回ご紹介したようにBaculaを使って簡単にバックアップ、リストアを
    することができます。またBacula.jpでは今後も最新情報を随時追加して
    いきますので、是非ご参照ください。

    最後に、Baculaに興味をお持ちいただきコミュニティ活動に参加したいと
    思っていただけましたらBacula.jpコミュニティへのご参加をお待ちして
    おります。

    ======
    Bacula.jp
    澤田 健
    ======

Comments are closed.