Replace Bacula with Bareos
The powerful Bacula network backup solution has switched from being Open Source friendly to being almost closed source. Originally the project was conceived totally as Open Source, but since the creation of Bacula Systems and its proprietary Bacula Enterprise Edition product, the Open Source (now called "Community Edition") has received less and less updates and is mostly abandoned.
- Name: Simone Caronni
- Email: negativo17 <at> gmail.com
- Release notes owner: <to be assigned by docs team>
- Targeted release: Fedora 21
- Last updated: 1st November 2013
- Tracker bug: <will be assigned by the Wrangler>
The most important points that are left "abandoned" are the following:
- Installation scripts and updates to makefiles are not updated anymore.
- New plugins and functionalities are not added anymore, except those in the "core" daemons.
- Gaphical (and buggy) console has not received any update in almost two years.
- Patches and bugs opened in the bug tracker are mostly left abandoned. Even trivial fixes are not imported in the source.
- Windows binaries are no longer provided, nor the source for the clients has been updated. Even if compiled with difficulties, there is no support for recent Windows versions.
A former Bacula developer, frustrated by the situation created the fork Bareos a long time ago from Bacula 5.2.x (the current Fedora and RHEL 7 version). This version has now received a lot of bugfixes compared to the original Bacula source. This makes compilation and installation a lot easier than it was with Bacula.
On top of this, a lot of new features have been added; some unique to Bareos but many available only in the closed source Bacula Enterprise.
Here is the list of new features compared to the current Bacula 5.2.13:
Some highlights include NDMP support for enterprise class storage (NetApp, etc.), support for enterprise class tape libraries and Windows support (including Windows Server 2012) with Bareos generated binaries.
For further details on why a Bacula fork was created please look at the following links:
Bareos can also be fully compatible with Bacula by setting a specific configuration directive in the Daemon configuration files; thus providing the option for RHEL 6/7 users to interoperate with Fedora systems.
Benefit to Fedora
Fedora will move from an almost proprietary product that is no longer supported upstream to a fully Open Source equivalent with a lot of new features, developer involvment and bugfixing.
Enterprise users will benefit of the cross-system integration (AIX, Windows binaries, etc.) and of the new enterprise grade features (NDMP support, bigger tape libraries, client initiated backups for laptops, etc.).
To accomplish the goal, the following Bacula packages need to be replaced with Bareos equivalents:
Currently, the same Fedora packages can be rebuilt as they are, to work also on CentOS/RHEL 5 and 6, upgrading the EPEL or official Bacula packages in the distributions. This is to have a consistent backup infrastructure across all the Fedora/CentOS/RHEL ecosystem.
To ease installation, a repository for installing those packages on a CentOS/RHEL system do exist:
The idea is the same for Bareos: import into Fedora 21 packages that can be rebuilt for all supported Fedora/RHEL/CentOS releases and provide a repository that can upgrade any Bacula release currently installed in the system with the new one. In detail; the upgrade scenarios supported when going from Bacula to Bareos would be:
From Bacula 2.4:
- RHEL/CentOS 5 with EPEL repository
From Bacula 5.0:
- RHEL/CentOS 6
From Bacula 5.2.13:
As written before, the change is impacting only Fedora 21, the list of upgrades supported are only for users who want a consistent backup solution across the enterprise.
Proposal owners: I'm the current Bacula mantainer in Fedora and will complete the transition in time for the release.
Other developers: N/A (not a System Wide Change)
Release engineering: the release engineering team should make sure the new Bareos packages are in place instead of the current Bacula packages for the new release.
Policies and guidelines: N/A (not a System Wide Change)
Upgrades are not different than Bacula upgrades between major releases (i.e. Fedora 16 bacula 5.0 to Fedora 17 Bacula 5.2).
Systems that are currently running Bacula will have their system upgraded to Bareos by correct dependencies in the packages. Current preferences for the database backend (MySQL, PostgreSQL, SQLite) will be retained across the upgrade.
The procedure involves a bit of tuning of configuration files for new features and upgrades for the database schema. This is exactly what needs to be done between the various Bacula iterations that Fedora and EPEL have seen across the year.
Apart from this, Bareos can also be fully compatible with Bacula by setting a specific configuration directive in the Daemon configuration files; thus providing the option for RHEL 6/7 users to interoperate with Fedora systems:
How To Test
Install a Bareos environment on a new Fedora system and configure some backups.
Upgrade a current Fedora release with Bacula installed to get the new Bareos packages. Test the upgrade from the Bacula 5.2.13 database schema to the new Bareos one, make sure all backups work as before. No difference than performing a normal Bacula update.
Lots and lots of new features for Bacula users, bugfixing, ability to backup also newer Windows systems, more Open Source friendly software.
Bacula has a static UID/GID defined in the setup package. A bug needs to be filed as the "label" should change from "bacula" to "bareos" for Fedora 21.
All the other requirements are self-contained in the Bareos packages.
- DONE - Create Bareos packages
- DONE - Make sure Bareos packages upgrade/obsolete/provide Bacula packages
- DONE - Make sure Bareos packages keep Bacula preferences (2.4, 5.0 and 5.2)
- DONE - Write documentation to be included in the package
- 50% - Integrate previous Fedora patches upstream
- 50% - Create backports repository to test packages across all supported RHEL/CentOS/Fedora releases
- TBD - Post review of packages in Bugzilla
- TBD - File bug against setup package in Bugzilla
Revert to previous Bacula packages (considered current Community version development decline, they will still be probably at version 5.2.13).
- Contingency mechanism: N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change)
N/A (not a System Wide Change)
Fedora now ships Bareos in place of Bacula. Bareos is a fork of Bacula since the latest was abandoned in favour of the proprietary Bacula Enterprise edition. Many of the features / bugfixes and enhancements removed from the community version of Bacula are now included in Bareos. For details on Bareos features and Bacula compatibility see:
Upgrades from Bacula to Bareos are not different than those from different Bacula major versions (i.e. 5.0 and 5.2) and are performed in the same way. Please refer to the documentation files in the bareos-common packages for quickstart and upgrade procedures.
/usr/share/doc/bareos-common/README.Redhat /usr/share/doc/bareos-common/quickstart_mysql.txt /usr/share/doc/bareos-common/quickstart_postgresql.txt /usr/share/doc/bareos-common/quickstart_sqlite3.txt