Bacula Enterprise Edition 8 for UCS

 Bacula Enterprise Edition for UCS. Best Out-Of-The-Box Experience

Bacula Logo

Bacula Enterprise Edition

 Guide For Univention Corporate Server Users


Bacula Enterprise Edition is the leading Enterprise Open Core network backup and restore software, combining Bacula's enterprise-class open standards software with first-class support and professional services. The purpose of the Bacula Enterprise Edition for Univention Corporate Server (UCS) is to provide you with the best possible user experience whilst evaluating our Enterprise products.

Bacula Enterprise Edition 8 for UCS is intended to be used as a proof of concept. It allows you to test all Bacula Enterprise products and also install on the clients of all supported platforms.

It also provides an automated way to install Bacula Enterprise Edition in your Univention environment. The resulting installation is intended to be administered using Linux command-line.

To be introduced and get to know Bacula Enterprise Edition, you can simply play with the software by following some of the scenarios described in this guide. These scenarios are designed to demonstrate the basic functionality of Bacula Enterprise Edition 8. More advanced features and plugins are available on request. Please contact us for more information.

If you are not able to complete these scenarios, or have an issue regarding any products, please contact us.

Thank you for using Bacula Enterprise Edition!


Introducing Bacula Enterprise Edition 8

Let's have a look at the main components of Bacula Enterprise and how the data and commands flow between them.

Bacula Principles

Bacula Enterprise is composed of five main components:
  • The Director which supervises all the backup, restore, verify and archive operations.
  • The Storage Daemon is the software that performs the storage of the file attributes and data to the physical backup media.
  • The File Daemon or Client is installed on each machine to be backed up.
  • The Catalog is responsible for maintaining the file indexes for all files backed up.
  • The Consoles allow the user to interact with the Director. It is available in two versions:
    • a text-based console interface, called BConsole.
    • a web interface, called BWeb Management Suite.
For more detailed information, please refer to our main manual.

Minimum Requirements

Bacula Enterprise Edition can be installed on both physical and virtual servers running Univention Corporate Server.  The server should meet the following minimum specifications:

    * 64-bit AMD64/Intel CPU supporting the x86_64 instruction set.
    * Minimum 4GB of RAM for large-scale use (2GB is ok for small-scale tests).
    * For testing purpose, internal hard disk greater than 200GB in capacity.
    * At least one ethernet interface on your network.
    * Univention Corporate Server installed and running.

If installing on a virtual machine, it is strongly recommended to use a single virtual hard disk that is large enough to accommodate the operating system and backup storage space.

Step 1: Installation

In the following scenarios, you have the opportunity to use Bacula Enterprise Edition to backup and recover data using BConsole.
Install Bacula Enterprise Edition by going to the App Center in the UCS management system. In the search field, type Bacula Enterprise. You will find the Bacula Enterprise Edition App, as the following image:


Search for BEE in the App
                  Center
Click on the App and you will be able to install Bacula Enterprise Edition by clicking on the Install button as shown below.

Install BEE from the
                  AppCenter

To verify that Bacula Enterprise Edition is well installed on your server running UCS, please open a terminal or connect to your server via ssh. Once connected, please first install sudo typing univention-install sudo. Once done, type sudo -u bacula /opt/bacula/bin/bconsole and you should get the following output:

Check if BEE is well
                  installed

If you don't have a * but an error, please contact us. If you succeed, please keep your console 5. community-fd contre ucs...open and continue with the following scenarios.

Step 2: Using Bacula Enterprise Edition

In the following scenarios, you have the opportunity to use Bacula Enterprise Edition to backup and recover data using BConsole.

Scenario 1: Running a local backup of /opt/bacula/bin using BConsole

The first scenario demonstrates BConsole, a text based console interface used to interact with the Director, to run backup and restore jobs and to monitor your Bacula infrastructure.

To access BConsole, log on your server directly or via ssh as explained above.

This scenario uses the folder /opt/bacula/bin located on your server.
  1. In the console (if you don't have a * starting the command line, please follow Step 1 above), type in run, then type enter (please type enter after each command).

  2. Select the job labeled BackupClient1 by typing the number in front of it.
    Example: 1: BackupClient1  you hit the 1 key and validate with Enter.
    5. community-fd contre ucs...
  3. Review the job settings. Note that this job is an incremental one. You may modify parameters at run time, but in this case just type yes to start the job.

    Bconsole - Running a Job

  4. You should be returned to the prompt and given an indication that the job has been queued (Job queued. JobId=x).

  5. 5. community-fd contre ucs...To view the status of the job, type status dir.

  6. You might see the job listed under Running Jobs or under Terminated Jobs if it is already finished. You can also see scheduled jobs and previously completed jobs here. 

  7. At any time, you can type messages in BConsole to review the job log.

  8. You should now have a full backup of your /opt/bacula/bin folder. Next step is to restore this data to the default restore location, currently the folder /var/lib/bacula/bacula-restores.

Scenario 2: Running a restore of /opt/bacula/bin using BConsole

In this scenario we are restoring some data from an existing backup folder from /opt/bacula/bin. Please follow scenario 1 first to have a complete backup of /opt/bacula/bin.
  1. To begin with, enter restore mode by typing restore in BConsole.

  2. 5. community-fd contre ucs...Here you will see the different ways to find what you want to restore. Type 5, which will select the last backup job run. Note that your backup client is automatically selected since there is only one client available.

  3. When you hit enter, Bacula Enterprise Edition builds a file tree from the catalog, allowing you to browse and select files you want to restore.

  4. Many standard commands are available such as ls to list the directory, cd to change directories.

    Let's restore now /opt/bacula/bin.

  5. 5. community-fd contre ucs...Start by typing  cd /opt/bacula/bin , then type enter. The path is case sensitive.

  6. Type the command mark * . That will mark the contents of the directory for restore.

    5. community-fd contre ucs...5. community-fd contre ucs...Bconsole - Select
                    Restore

  7. When you are done selecting files and folders, type done.

  8. Review the job settings, most importantly the Where and Restore Client directives. We can leave these alone for now, but if you ever want to restore to a different location or another client machine, here is one way to accomplish it.

  9. Type yes to run the restore job.

  10. To view the status of the job, type status dir.

  11. Type messages in BConsole to review the job log. You should type it many times to see the termination status "Restore OK".

  12. Type exit to close BConsole.

  13. Do a ls /var/lib/bacula/bacula-restores/opt/bacula/bin/ from a bash shell to check that files have been restored.

Scenario 3: Running a remote backup of /root using BConsole

The third scenario demonstrates how to use BConsole to run remote backup jobs and to monitor your Bacula infrastructure.

To access BConsole, log on your server directly or via ssh as explained above.
  1. Collect the needed information from the Director running on your UCS system. Do a grep -1 "Director {" /opt/bacula/etc/bacula-dir.conf to list your Director's name.

    Get Dir Name

  2. Install the File Daemon or agent on the client you want to backup. Please follow the steps in the Appendix below.

  3. Once installed and running, edit your FD (File Daemon) configuration on the client side vi /etc/bacula/bacula-fd.conf .

  4. Correct all entries referring to the Director:
    1. in the first Director {} resource, replace the Name = *** by Name = ucs-4548-dir like our example below. Please replace '***' with the name you get from the grep command.
    2. in the Messages {} resource, replace the director = *** = all, !skipped, !restored by director = ucs4548-dir = all, !skipped, !restored. Please replace '***' with the name you get from your own grep command again. Don't replace the string following the second "=".

  5. Collect the following information from this open configuration file on the client side (/etc/bacula/bacula-fd.conf):
    1. Password = ***
    2. Name = *** in the FileDaemon {}  resource.

      FD configuration
                        example

  6. Test your new configuration entries with the command /usr/sbin/bacula-fd -t or simply bacula-fd -t . Please correct any mistake. Restart your File Daemon on the client side /etc/init.d/bacula-fd restart .

  7. On the Director side on your UCS server, open the Director configuration file vi /opt/bacula/etc/bacula-dir.conf .

  8. Search for the first Client {} resource. Found in this example (yours should have the same structure):

    Client to Copy

  9. Duplicate in the same configuration file (bacula-dir.conf) the whole Client {} resource.

  10. Change the directives Name = and Password = to the one you collected from the client in the /etc/bacula/bacula-fd.conf configuration file, in point 5. above. In our example:
    1. Name = community-fd
    2. Password = "pbR_1Y-0qS0bzLK7I....fd6V"

  11. Change the Address = directive to the IP address or the hostname of your client to backup.

  12. Save and exit your configuration file called /opt/bacula/etc/bacula-dir.conf . To test your added resources, type /opt/bacula/bin/bacula-dir -t . Please correct any mistake.

  13. Start bconsole to test the connection to your new client sudo -u bacula /opt/bacula/bin/bconsole and reload the configuration by typing reload in bconsole. If there are any mistakes, please correct them following the previous steps.

  14. Type in bconsole status client=<name of your client> . Please replace accordingly to your client name. After typing the "=", you might type twice the <tab> key to list all clients available, then type the first letters of your client and again <tab> to complete its name.
    If you don't get the same kind of information than the screenshot below, please check you typed the right Director's name, the right password, the right File Daemon's name in the bacula-fd.conf file and that your client is not protected by a firewall or by SELINUX.

    Status Client output

  15. If the connection succeeds, type quit in bconsole.

  16. A new Job and a new FileSet must be created now to be able to backup data from your second client. Please edit your Director configuration file vi /opt/bacula/etc/bacula-dir.conf .

  17. Add the following Job and FileSet definition:
    Job {
      Name = "BackupClient2"
      Client = community-fd
      JobDefs = "DefaultJob"
      FileSet = "root-fs"
    }

    FileSet {
      Name = "root-fs"
      Include {
        Options {
          signature = MD5
        }
        File = /root
      }
      Exclude {
        File = /root/toto #this is an exclude example
      }
    }

  18. Save and exit your configuration file called /opt/bacula/etc/bacula-dir.conf . To test your added resources, type /opt/bacula/bin/bacula-dir -t . Please correct any mistake.

  19. Enter bconsole sudo -u bacula /opt/bacula/bin/bconsole and reload the configuration by typing reload . If there are any mistakes, please correct them following the previous steps.

  20. To run the new backup, type run in bconsole, choose the job name from point 17. above, in our example BackupClient2.

    Run the job on the
                      external client

  21. Type yes.

  22. You should be returned to the prompt and given an indication that the job has been queued (Job queued. JobId=x).

  23. To view the status of the job, type status dir.

  24. You might see the job listed under Running Jobs or under Terminated Jobs if it is already finished. You can also see scheduled jobs and previously completed jobs here.

  25. At any time, you can type messages in BConsole to review the job log. If the job is terminated, you should get this kind of output:

    Job Log Output

  26. You should now have a full backup of your /etc/bacula folder on your client. To restore the data, you can follow previous scenario 2.


This completes our suggested test scenarios. We hope that you enjoyed using Bacula Enterprise Edition. If you would like the opportunity to further test your Bacula Enterprise Edition installation, please refer to our main manual, in particular the chapters "A Brief Tutorial" and "Getting Started with Bacula".

If you have any comments/suggestions please fill out the feedback form and let us know. We'll get back to you in a timely manner.

For more information about plugins, support options, features and pricing, please contact the sales team via our contact form.

If you are not able to complete these scenarios, or have an issue regarding any products, please contact the sales team via our contact form.

Thank you for having evaluated Bacula Enterprise Edition 8 for UCS.
With our best regards,
The Bacula Systems Support Team



Additional notes: Your installation of Bacula Enteprise Edition becomes unusable after 45 days. It cannot backup more than 5 jobs resources and you are limited to backup maximum 2 clients. Please contact us if you need more time.


Appendix

Installation of a File Daemon (a backup agent) on Debian or Ubuntu

  1. Log in into your system where you want to install a Bacula Community backup agent, called a File Daemon.

  2. Run the following command as root:

    1. apt-get install bacula-client

  3. Please setup your local firewall to accept a Bacula Enterprise Edition connection (the File Daemon is listening by default on port 9102), or disable it completely for test purpose only:

    1. /etc/init.d/iptables stop

    2. chkconfig iptables off

  4. If successfully installed, continue by adding a client as explained in scenario 3 above.

Installation of a File Daemon (a backup agent) on CentOS or Red Hat

  1. Log in into your system where you want to install a Bacula Community backup agent, called a File Daemon.

  2. To install the client, type the following command:

    1. yum install bacula-client

  3. Please setup your local firewall and SELinux to accept a Bacula Enterprise Edition connection (the File Daemon is listening by default on port 9102), or disable it completely for test purpose only:

    1. /etc/init.d/iptables stop

    2. chkconfig iptables off

    3. edit /etc/selinux/config and change SELINUX=enforcing to SELINUX=permissive

  4. If successfully installed, continue by adding a client as explained in scenario 3 above. 






For more information, http://www.baculasystems.com/contactus



Bacula Systems SA
Rue Galilee 5
1400 Yverdon-les-Bains
Switzerland
+41 21 641 60 80