How it Works

 director client storage

The Bacula Director is the "brains" of the operation

Bacula Director, Clients + Storage

Bacula Director Server

  • Operating in the backend, the Director stores details of all tasks assigned to Bacula and executes them based on parameters entered by Bacula4Hosts customers
  • The Director communicates with the package installed on servers (File Daemon or FD) and determines what jobs to execute against the Client (server) and when
  • Based on the job (ie Backup or Restore), the Director communicates with the Storage Daemon (SD) and either reads data from the SD and writes to the Client (restore) or reads data from the Client (server) and writes to the SD (backup)
  • A job can be any task executed on the Client or SD and is not limited to backup and restore tasks. A job can be used to execute scripts or many other actions that you may required the director to execute

b4h web gui-vert


Bacula4Hosts GUI & API

  • The Bacula4Host GUI and APIs sit between Bacula users (Service Providers or End Users) and communicates with the Bacula Director.
  • Service Providers utilize the Bacula4Hosts GUI to configure Bacula Director to perform their required tasks. Items like installing File Daemons (ie agents) on the servers, determining which servers to backup, when and how often and much much more.
  • Service Providers can also log in to restore any file or database on any server they have asked Director to backup. Viewing detailed logs, creating custom jobs and an array of other functions can be set via the Bacula4Hosts GUI.
  • Utilizing Bacula4Hosts Control Panel modules, or using our API to create your own Control Panel modules, service providers are able to activate end user restore capabilities so that their end users, right from their hosting control panel, can restore any of their own files or databases. Whether your end users are hosting on Linux servers or Windows servers, Bacula4Hosts enables you to grant your end users access to perform self service restores of any of their data you have backed up for them.


Director Catalogue

director catalogue

  • The Bacula Director communicates with its own Database server that is called the Catalog.
  • Bacula supports multiple database platforms for its Catalog including MySQL, MSSQL and pgSQL. Bacula4Hosts utilizes and supports pgSQL for the Catalog service.
  • The Director Catalog stores all configurations, schedules, jobs, etc. Director reads from the Catalog and passes instructions to clients and other devices as required.
  • The Catalog can be backed up to multiple storage devices and easily replicated.

file daemon


File Daemon

  • File Daemons are installed onto Clients (servers).
  • x32 and x64 support for all common operating systems.
  • File Daemons are used to communicate with Bacula Director.
  • File Daemons can be used to execute backup/recovery tasks or to execute any other task or script on a Client (server).

client bu restore


Client

  • A client in Bacula is a server or workstation. It is backed up by Bacula using a File Daemon (FD) which is installed on the client/server.
  • The Director communicates with the File Daemon (FD) installed on the client/server.
  • The Client writes data directly to the Storage Daemon (SD) during a backup job and data is written from the SD directly to the Client during restores.
  • If both the SD and the Client are located within the same network, backups and restores can be completed over an established LAN network, regardless of where the Director is located.


Storage Daemon (SD)

backup server

  • Storage Daemon (SD) is disk based backup server used by Bacula4Hosts to backup data.
  • A backup server can be different drives or directories on the same client which is being backed up, or a different server completely. Bacula4Hosts recommends building specialized backup servers to be used to backup and restore your servers data.


Storage Pools

storage pool

  • Storage Pools are units of capacity within Storage Daemons (SD).
  • A storage pool is comprised of volumes.
  • Storage Pools and volumes are used to carve out allocations within your Storage Daemon (SD).
  • Storage Pools can be resized by increasing the number of volumes associated with it. For example, a storage pool with 1 volume of 50GB, will be 50GB in size. By increasing the number of volumes to 2, the storage pool increases in size to 100GB.
  • Storage Pools can also be spread out and striped across multiple Storage Daemons.
apps banner