Create volume pool#

Pool is a logical space for storing and grouping Bacula volumes. It isn’t any directly accessible place in the file system (such as directory) but is a virtual place defined in the Bacula database.

The main purpose of Pool is to group volumes into sets for given purpose. For example, you can create a pool with volumes to store incremental backups, a pool to store differential backups or a pool to store full backups. Another approach could be to create pools for data from a given Bacula client or clients.

A very important property of a pool is inheritance. Each new volume created in a given pool inherits various directives defined in that Pool. For example, they are limit directives or volume recycling directives or others. If we defined a VolumeRetention directive in a Pool to 180 days, then - thanks to inheritance - every new volume created in that pool will have the VolumeRetention property set to 180 days. So, in this meaning the volume Pool directives are something similar to a template for new pool volumes.

In backup jobs we don’t directly define what volume to use to write backup, but instead we define it by configuring a Pool in the Job. This way the Bacula Storage knows volumes from which Pool it should use to store backup data.

../_images/bacularis_create_volume_pool_using_pool.png

What is required?#

  • Any version of the Bacularis web interface

How to do it?#

You can create Pool on the Director page in the Configure director tab or you can go directly to the Pools page and use the Add pool button. In this chapter we use the second method.

Create Pool#

On the Pools page please click the Add Pool button. It will redirect you to a new page with the Pool directive form.

You must enter the Pool name and optional description.

In the PoolType directive the only allowed value is Backup. This is required to set this directive.

The use of rest Pool directives depends on the user’s needs and plans for current pool and volumes stored on it.

Prepare pool volumes#

There are at least three ways of creating volumes in Pool:

  • Automatically created volumes - This method is mainly used for file volumes. If a new volume is needed, it is created automatically. Continuously creating new volumes instead of reusing existing ones will lead to exhaustion of available disk space. To avoid this and to reuse existing volumes, please read the Automatic Volume Recycling chapter in the Bacula documentation.

  • Predefined volumes in pool - This method can be useful for physical tape volumes and file volumes as well. Volumes can be labeled in advance (before backup starts) and used in autochanger device. It may be necessary to use the Automatic Volume Recycling.

  • Manually created volumes - if new volume is needed, it is manually created/labeled on demand.

Use Pool#

To use Pool, in many cases it must be assigned to a Job resource. It can also be used in the JobDefs resource, Schedule resource or in another Pool (by the NextPool directive).

The Pool can be used in a Job resource in the following Job directives depending on the job type and job use case:

  • Pool - main Pool directive to use in job

  • FullBackupPool - set full backup job pool

  • IncrementalBackupPool - set incremental backup job pool

  • DifferentialBackupPool - set differential backup job pool

  • VirtualFullBackupPool - virtual full backup job pool

  • NextPool - set pol for Copy, Migrate job types or to VirtualFull backup job level.

Important notes#

After changing Pool configuration, to apply new changes you need to run the update pool command. In Bacularis you can do it by clicking the Update pool button on the selected Pool details page:

[Main menu] => [Page: Pools] => [Button: Details for selected Pool in table] => [Button: Update pool]

Volume inherits Pool properties on the volume creation. If the Pool configuration is edited, it is important to know that all the changes are not applied to existing volumes in this Pool, but they will be used only for new volumes created in this Pool. If you want to update existing volumes to use new Pool configuration, you need to update the volume properties in the Pool. It can be done both in Bacula bconsole and in Bacularis. In Bacularis it is done in the selected Pool details page by clicking the Update all vols. in pool button:

[Main menu] => [Page: Pools] => [Button: Details for selected Pool in table] => [Button: Update all vols. in pool]

Video guide#

Here you can watch the video guide that shows creating the Bacula Pool in Bacularis.