SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Bacula
The leading Opensource Backup Solution
OpenSource Project
Bacula is a network backup solution, designed for
*BSD, Linux, Mac OS X, Unix and Windows systems.
Original project goals were to:
● backup any client from a Palm to a mainframe computer
● provide “Enterprise” features similar to the largest commercial applications
● assure data compatibility for 30 years
● use a Free and Open Source (GPL v2) license
Project History
Bacula = Backup + Dracula
● January 2000 – Project started
● 14 April 2002 – First release to Source Forge (version 1.16)
● 29 June 2006 – Release 1.38.11
● January 2007 – Release 2.0.0
● August 2007 – Release 2.2.0 (current 2.2.8)
● ...
Downloads 670,013 all versions 4.2 TB
Introduction
Do you do backups?
No
Yes, I did one last month
Yes, tarballs every week
Sometimes I rsync ...
Yes, CDs every week
I use custom scripts
Problems:
How do you find the files you need to restore?
How do you restore to a point in time?
What is on what medium?
How do you handle 2000 machines?
Government regulations
Introduction
Bacula to the rescue:
● Open Source (GPLv2)
● Centrally managed
● Network backup/restore
● Many platforms (*BSD, Linux, Mac OS X, Unix Win32, ...)
● Different media (Tape, disk, USB, CD/DVD)
● Reliable
● Knows what was backed up when and where
● Allows restoring files you want (Catalog + GUI)
● Restores to a point in time
● Scales to handle 10,000 machines
Five Main Components
The Five Bacula Components
● Control and administration for everything is centralized
● Basic unit is a Job (one client, one set of files, ...)
● Schedules, initiates and supervises all Jobs
● Maintains the catalog (SQL database)
● Typically one Director except in very large shops
● Does file backup, restore and verification requested by Director
● Installed on each machine as a service (daemon)
● Communicates over network with Director and Storage daemon
● Needs access to all files to be backed up (root, SYSTEM)
● Typically multiple File daemons per Director; one for each machine
● Reads and writes data to the physical medium
● Disk, Tape, CD/DVD, USB, ...
● Accepts orders and authorization from the Director
● Accepts and returns data to/from File daemons (FD)
● Sends file storage location to Director -> Catalog
● Typically one per Director but with multiple devices
The Five Bacula Components
● Allows user or administrator to control Bacula
● Communicates with Director via network
● Start jobs, review Job output, query/modify catalog
● Consoles available
○ TTY (bconsole)
○ bat a Qt 4 (GUI) – most comprehensive
○ wxWidgets (GUI) – Linux, Unix, Win32
○ Gnome (GUI) – deprecated
○ Several web interfaces (bweb is most comprehensive)
● Restricted consoles permit users to restore their own files
● Only component not written by Bacula team
● SQL database (MySQL, PostgreSQL, or SQLite) - unique
● Tracks Jobs run, Volumes used, File locations, ...
● Permits rapid restores
● Allows inquiry of when and where files were backed up
● Old data automatically pruned by Director
● Supports multiple databases for scaling
Features
● A central server and catalog with distributed backup
● All components communicate via the network.
● Internal scheduler for automatic and simultaneous job execution with priorities.
● Interactive restore with many options, for example:
○ current backup (most common)
○ prior backup of time and date
○ list of files/directories to restore
○ restore by JobId
● Simple administration with consoles (command line, GUI, and web)
● Labeled Volumes, to prevent accidental overwriting
● Support for ANSI / IBM labels
● Machine independent Volume data format - extensible
● Support for Unicode on Win32; UTF-8 on Unix
● Rescue CDROM for “bare metal” recovery (very complicated)
Bacula - Hardware Features
● Backups can span multiple volumes
● Multiple backups (jobs, clients, OSes) per volume
● Supports most tape drives with configurable Device resources
● Support for multiple drive autochangers (libraries)
● Supports tape barcode readers
● Extensive Pool and Volume library management
● Rapid restoration of individual files (one user reported 4 to 6
● hours with tar and 3 to 4 minutes with Bacula!).
Bacula - Security Feaures
● Daemon authorization with CRAM--MD5
● Director and Storage daemon can be run non--root
● MD5, SHA1, ... signatures for each file
● CRC checksum for each Volume block
● Restricted consoles and tray-monitors
● Communications (TLS) encryption
● Data (PKI) encryption
● Tripwire like intrusion detection (Verify)
Bacula - Jobs
who, what, where, when
Jobs are the basic unifying structure
Name – unique name (who)
Type – what to do: backup, Backup, Migrate, Admin, Restore
Level – level of detail of type: Full, Differential, Incremental
FileSet – what to files to backup
Client – where to get the files (machine name)
Storage – where to put the files (which hardware)
Pool – which set of Volumes (tapes, disk) to use
Schedule – when to do it
Bacula - Director Configuration File
Director {
Name = bacula-dir
Query File = “/usr/local/etc/query.sql”
Working Directory = “/var/bacula”
PID Directory = “/var/run”
Maximum Concurrent Jobs = 20
Password = “secret”
Messages = Standard
}
Bacula - Director Configuration File
Job { # who, what, where, when
Name = “Music”
Type = Backup
Client = bcli
FileSet = “Full Set”
Storage = File
Schedule = “Weekly”
Pool = Standard
Messages = Standard
Write Bootstrap = “/var/bacula/bcli.bsr”
}
Bacula - Director Configuration File
Client {
Name = bcli
Address = 10.0.0.1
Catalog = MyCatalog
Password = “secret--bcli”
File Retention = 30 days
Job Retention = 6 months
AutoPrune = yes
Maximum Concurrent Jobs = 20
}
Bacula Configuration - Fileset
● Include/Exclude files and/or directories
● Regex or wildcard for file/directory name selection
● Compression using similar selection criteria
● Which filesystem types to backup
● Backup OS Access Control List data (permissions)
● Sparse file handling
● Signature (MD5, SHA1, ...)
Bacula Configuration - Fileset
FileSet {
Name = “Full Set”
Include {
Options {
signature=SHA1;
regex = ".*.bak$";
exclude = yes
}
File = /
File = /usr
File = /var
}
Exclude {
File = /proc; File = /tmp; File = /sys; File = /.journal
}
}
Bacula Configuration - Schedule
Schedule {
Name = “Weekly”
Run = Level=Full 1st sun at 2:05
Run = Level=Differential 2nd--5th sun at 2:05
Run = Level=Incremental mon--sat at 2:05
}
Total directives per resource:
Director=27 Client=21 Storage=21 Job=60 Schedule=3, Device=52, ...
Bacula Configuration - Storage
Device {
Name = File
Archive Device = /var/bacula/backups
Device Type = File # Directory, DVD, FIFO, Tape
Media Type = File
Label Media = yes
Random Access = yes
...
}
Bacula Configuration - Storage
AutoChanger {
Name = LTO-Changer
Device = Drive-0, Drive-1
Changer Device = /dev/sg0
...
}
Device {
Name = Drive-0
Archive Device = /dev/nst0
Device Type = Tape # DVD, File, FIFO
Media Type = LTO-2
Autochanger = yes
...
}
Real Installation
● 53TB, 150,000,000 files, 90 clients, Linux
● 40TB, 40,000,000 files, 30 clients, Solaris
● LTO-3 libraries with several drives
● Large libraries with 100's of tape slots
● Libraries and drives connected with FC SAN
● 20GB, 200,000 files, 1 client, Linux disk and tape
Project Development
Project development
Site : http://www.bacula.org/
Development style:
○ SourceForge project
○ Developer's guide with code style guidelines
○ Developer SVN access. Currently 16 developers may commit
○ Patches and commits reviewed by K. Sibbald
○ Code tested using a regression test suite
○ Email list for developers (bacula-devel)
License:
○ GPL 2 copyright assigned to FSFE.
○ Freedom Task Force (FTF)
Resources
For users and system administrators
Manual: http://www.bacula.org/en/rel-manual/index.html
OS and Hardware compatibility lists (in manual)
Bugs reports: http://bugs.bacula.org/
Email support list: bacula-users@lists.sourceforge.net
For developers
Docs: http://www.bacula.org/en/developers/index.html
Email list: bacula-devel@lists.sourceforge.net,
bacula-commits@lists.sourceforge.net
SVN at Source Forge
Credits
Thanks
Dan Langille who created the original presentation
Karl Cunningham who updated it
This presentation draws heavily on their work
A .pdf copy of this presentation can be found at:
http://www.bacula.org -> Presentations -> ...
Many Thanks!
samba@netstudent.polito.it

Mais conteúdo relacionado

Mais procurados

PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PGConf APAC
 
What's new in Oracle 19c & 18c Recovery Manager (RMAN)
What's new in Oracle 19c & 18c Recovery Manager (RMAN)What's new in Oracle 19c & 18c Recovery Manager (RMAN)
What's new in Oracle 19c & 18c Recovery Manager (RMAN)Satishbabu Gunukula
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsMydbops
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1Federico Campoli
 
1.mysql disk io 모니터링 및 분석사례
1.mysql disk io 모니터링 및 분석사례1.mysql disk io 모니터링 및 분석사례
1.mysql disk io 모니터링 및 분석사례I Goo Lee
 
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]Markus Michalewicz
 
Oracle RAC features on Exadata
Oracle RAC features on ExadataOracle RAC features on Exadata
Oracle RAC features on ExadataAnil Nair
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기NeoClova
 
What to Expect From Oracle database 19c
What to Expect From Oracle database 19cWhat to Expect From Oracle database 19c
What to Expect From Oracle database 19cMaria Colgan
 
Oracle 12c Multitenant architecture
Oracle 12c Multitenant architectureOracle 12c Multitenant architecture
Oracle 12c Multitenant architecturenaderattia
 
Oracle 12c PDB insights
Oracle 12c PDB insightsOracle 12c PDB insights
Oracle 12c PDB insightsKirill Loifman
 
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...turgaysahtiyan
 
Less17 flashback tb3
Less17 flashback tb3Less17 flashback tb3
Less17 flashback tb3Imran Ali
 
When is MyRocks good?
When is MyRocks good? When is MyRocks good?
When is MyRocks good? Alkin Tezuysal
 
MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바NeoClova
 
Sql 2012 always on
Sql 2012 always onSql 2012 always on
Sql 2012 always ondilip nayak
 
Kevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres Open
Kevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres OpenKevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres Open
Kevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres OpenPostgresOpen
 

Mais procurados (20)

PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs PostgreSQL WAL for DBAs
PostgreSQL WAL for DBAs
 
Oracle Tablespace - Basic
Oracle Tablespace - BasicOracle Tablespace - Basic
Oracle Tablespace - Basic
 
What's new in Oracle 19c & 18c Recovery Manager (RMAN)
What's new in Oracle 19c & 18c Recovery Manager (RMAN)What's new in Oracle 19c & 18c Recovery Manager (RMAN)
What's new in Oracle 19c & 18c Recovery Manager (RMAN)
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient Backups
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1
 
1.mysql disk io 모니터링 및 분석사례
1.mysql disk io 모니터링 및 분석사례1.mysql disk io 모니터링 및 분석사례
1.mysql disk io 모니터링 및 분석사례
 
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
Oracle RAC 12c Practical Performance Management and Tuning OOW13 [CON8825]
 
Oracle RAC features on Exadata
Oracle RAC features on ExadataOracle RAC features on Exadata
Oracle RAC features on Exadata
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
 
What to Expect From Oracle database 19c
What to Expect From Oracle database 19cWhat to Expect From Oracle database 19c
What to Expect From Oracle database 19c
 
Oracle 12c Multitenant architecture
Oracle 12c Multitenant architectureOracle 12c Multitenant architecture
Oracle 12c Multitenant architecture
 
Oracle 12c PDB insights
Oracle 12c PDB insightsOracle 12c PDB insights
Oracle 12c PDB insights
 
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
High Availability & Disaster Recovery with SQL Server 2012 AlwaysOn Availabil...
 
ASM
ASMASM
ASM
 
Less17 flashback tb3
Less17 flashback tb3Less17 flashback tb3
Less17 flashback tb3
 
When is MyRocks good?
When is MyRocks good? When is MyRocks good?
When is MyRocks good?
 
MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바MySQL Administrator 2021 - 네오클로바
MySQL Administrator 2021 - 네오클로바
 
The Google Bigtable
The Google BigtableThe Google Bigtable
The Google Bigtable
 
Sql 2012 always on
Sql 2012 always onSql 2012 always on
Sql 2012 always on
 
Kevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres Open
Kevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres OpenKevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres Open
Kevin Kempter PostgreSQL Backup and Recovery Methods @ Postgres Open
 

Semelhante a Bacula Overview

Containerization Is More than the New Virtualization
Containerization Is More than the New VirtualizationContainerization Is More than the New Virtualization
Containerization Is More than the New VirtualizationC4Media
 
Introduction to containers
Introduction to containersIntroduction to containers
Introduction to containersNitish Jadia
 
Lamp1
Lamp1Lamp1
Lamp1Reka
 
Lamp
LampLamp
LampReka
 
24HOP Introduction to Linux for SQL Server DBAs
24HOP Introduction to Linux for SQL Server DBAs24HOP Introduction to Linux for SQL Server DBAs
24HOP Introduction to Linux for SQL Server DBAsKellyn Pot'Vin-Gorman
 
Backing up Wikipedia Databases
Backing up Wikipedia DatabasesBacking up Wikipedia Databases
Backing up Wikipedia DatabasesJaime Crespo
 
Percona xtrabackup - MySQL Meetup @ Mumbai
Percona xtrabackup - MySQL Meetup @ MumbaiPercona xtrabackup - MySQL Meetup @ Mumbai
Percona xtrabackup - MySQL Meetup @ MumbaiNilnandan Joshi
 
Scalable and High available Distributed File System Metadata Service Using gR...
Scalable and High available Distributed File System Metadata Service Using gR...Scalable and High available Distributed File System Metadata Service Using gR...
Scalable and High available Distributed File System Metadata Service Using gR...Alluxio, Inc.
 
Linux kernel architecture
Linux kernel architectureLinux kernel architecture
Linux kernel architectureSHAJANA BASHEER
 
Lamp ppt
Lamp pptLamp ppt
Lamp pptReka
 

Semelhante a Bacula Overview (20)

Dumitru Enache - Bacula
Dumitru Enache - BaculaDumitru Enache - Bacula
Dumitru Enache - Bacula
 
Bacula - Backup system
Bacula - Backup systemBacula - Backup system
Bacula - Backup system
 
Containerization Is More than the New Virtualization
Containerization Is More than the New VirtualizationContainerization Is More than the New Virtualization
Containerization Is More than the New Virtualization
 
Introduction to containers
Introduction to containersIntroduction to containers
Introduction to containers
 
Lamp1
Lamp1Lamp1
Lamp1
 
Lamp1
Lamp1Lamp1
Lamp1
 
Lamp
LampLamp
Lamp
 
24HOP Introduction to Linux for SQL Server DBAs
24HOP Introduction to Linux for SQL Server DBAs24HOP Introduction to Linux for SQL Server DBAs
24HOP Introduction to Linux for SQL Server DBAs
 
Edubooktraining
EdubooktrainingEdubooktraining
Edubooktraining
 
Backing up Wikipedia Databases
Backing up Wikipedia DatabasesBacking up Wikipedia Databases
Backing up Wikipedia Databases
 
File
FileFile
File
 
Percona xtrabackup - MySQL Meetup @ Mumbai
Percona xtrabackup - MySQL Meetup @ MumbaiPercona xtrabackup - MySQL Meetup @ Mumbai
Percona xtrabackup - MySQL Meetup @ Mumbai
 
Scalable and High available Distributed File System Metadata Service Using gR...
Scalable and High available Distributed File System Metadata Service Using gR...Scalable and High available Distributed File System Metadata Service Using gR...
Scalable and High available Distributed File System Metadata Service Using gR...
 
Linux kernel architecture
Linux kernel architectureLinux kernel architecture
Linux kernel architecture
 
Lamp ppt
Lamp pptLamp ppt
Lamp ppt
 
Puppet
PuppetPuppet
Puppet
 
All about InfluxDB.
All about InfluxDB.All about InfluxDB.
All about InfluxDB.
 
Lamp ppt
Lamp pptLamp ppt
Lamp ppt
 
Ioppt
IopptIoppt
Ioppt
 
Linux Internals - Part I
Linux Internals - Part ILinux Internals - Part I
Linux Internals - Part I
 

Último

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 

Bacula Overview

  • 2. OpenSource Project Bacula is a network backup solution, designed for *BSD, Linux, Mac OS X, Unix and Windows systems. Original project goals were to: ● backup any client from a Palm to a mainframe computer ● provide “Enterprise” features similar to the largest commercial applications ● assure data compatibility for 30 years ● use a Free and Open Source (GPL v2) license
  • 3. Project History Bacula = Backup + Dracula ● January 2000 – Project started ● 14 April 2002 – First release to Source Forge (version 1.16) ● 29 June 2006 – Release 1.38.11 ● January 2007 – Release 2.0.0 ● August 2007 – Release 2.2.0 (current 2.2.8) ● ... Downloads 670,013 all versions 4.2 TB
  • 4. Introduction Do you do backups? No Yes, I did one last month Yes, tarballs every week Sometimes I rsync ... Yes, CDs every week I use custom scripts Problems: How do you find the files you need to restore? How do you restore to a point in time? What is on what medium? How do you handle 2000 machines? Government regulations
  • 5. Introduction Bacula to the rescue: ● Open Source (GPLv2) ● Centrally managed ● Network backup/restore ● Many platforms (*BSD, Linux, Mac OS X, Unix Win32, ...) ● Different media (Tape, disk, USB, CD/DVD) ● Reliable ● Knows what was backed up when and where ● Allows restoring files you want (Catalog + GUI) ● Restores to a point in time ● Scales to handle 10,000 machines
  • 7. The Five Bacula Components ● Control and administration for everything is centralized ● Basic unit is a Job (one client, one set of files, ...) ● Schedules, initiates and supervises all Jobs ● Maintains the catalog (SQL database) ● Typically one Director except in very large shops ● Does file backup, restore and verification requested by Director ● Installed on each machine as a service (daemon) ● Communicates over network with Director and Storage daemon ● Needs access to all files to be backed up (root, SYSTEM) ● Typically multiple File daemons per Director; one for each machine ● Reads and writes data to the physical medium ● Disk, Tape, CD/DVD, USB, ... ● Accepts orders and authorization from the Director ● Accepts and returns data to/from File daemons (FD) ● Sends file storage location to Director -> Catalog ● Typically one per Director but with multiple devices
  • 8. The Five Bacula Components ● Allows user or administrator to control Bacula ● Communicates with Director via network ● Start jobs, review Job output, query/modify catalog ● Consoles available ○ TTY (bconsole) ○ bat a Qt 4 (GUI) – most comprehensive ○ wxWidgets (GUI) – Linux, Unix, Win32 ○ Gnome (GUI) – deprecated ○ Several web interfaces (bweb is most comprehensive) ● Restricted consoles permit users to restore their own files ● Only component not written by Bacula team ● SQL database (MySQL, PostgreSQL, or SQLite) - unique ● Tracks Jobs run, Volumes used, File locations, ... ● Permits rapid restores ● Allows inquiry of when and where files were backed up ● Old data automatically pruned by Director ● Supports multiple databases for scaling
  • 9. Features ● A central server and catalog with distributed backup ● All components communicate via the network. ● Internal scheduler for automatic and simultaneous job execution with priorities. ● Interactive restore with many options, for example: ○ current backup (most common) ○ prior backup of time and date ○ list of files/directories to restore ○ restore by JobId ● Simple administration with consoles (command line, GUI, and web) ● Labeled Volumes, to prevent accidental overwriting ● Support for ANSI / IBM labels ● Machine independent Volume data format - extensible ● Support for Unicode on Win32; UTF-8 on Unix ● Rescue CDROM for “bare metal” recovery (very complicated)
  • 10. Bacula - Hardware Features ● Backups can span multiple volumes ● Multiple backups (jobs, clients, OSes) per volume ● Supports most tape drives with configurable Device resources ● Support for multiple drive autochangers (libraries) ● Supports tape barcode readers ● Extensive Pool and Volume library management ● Rapid restoration of individual files (one user reported 4 to 6 ● hours with tar and 3 to 4 minutes with Bacula!).
  • 11. Bacula - Security Feaures ● Daemon authorization with CRAM--MD5 ● Director and Storage daemon can be run non--root ● MD5, SHA1, ... signatures for each file ● CRC checksum for each Volume block ● Restricted consoles and tray-monitors ● Communications (TLS) encryption ● Data (PKI) encryption ● Tripwire like intrusion detection (Verify)
  • 12. Bacula - Jobs who, what, where, when Jobs are the basic unifying structure Name – unique name (who) Type – what to do: backup, Backup, Migrate, Admin, Restore Level – level of detail of type: Full, Differential, Incremental FileSet – what to files to backup Client – where to get the files (machine name) Storage – where to put the files (which hardware) Pool – which set of Volumes (tapes, disk) to use Schedule – when to do it
  • 13. Bacula - Director Configuration File Director { Name = bacula-dir Query File = “/usr/local/etc/query.sql” Working Directory = “/var/bacula” PID Directory = “/var/run” Maximum Concurrent Jobs = 20 Password = “secret” Messages = Standard }
  • 14. Bacula - Director Configuration File Job { # who, what, where, when Name = “Music” Type = Backup Client = bcli FileSet = “Full Set” Storage = File Schedule = “Weekly” Pool = Standard Messages = Standard Write Bootstrap = “/var/bacula/bcli.bsr” }
  • 15. Bacula - Director Configuration File Client { Name = bcli Address = 10.0.0.1 Catalog = MyCatalog Password = “secret--bcli” File Retention = 30 days Job Retention = 6 months AutoPrune = yes Maximum Concurrent Jobs = 20 }
  • 16. Bacula Configuration - Fileset ● Include/Exclude files and/or directories ● Regex or wildcard for file/directory name selection ● Compression using similar selection criteria ● Which filesystem types to backup ● Backup OS Access Control List data (permissions) ● Sparse file handling ● Signature (MD5, SHA1, ...)
  • 17. Bacula Configuration - Fileset FileSet { Name = “Full Set” Include { Options { signature=SHA1; regex = ".*.bak$"; exclude = yes } File = / File = /usr File = /var } Exclude { File = /proc; File = /tmp; File = /sys; File = /.journal } }
  • 18. Bacula Configuration - Schedule Schedule { Name = “Weekly” Run = Level=Full 1st sun at 2:05 Run = Level=Differential 2nd--5th sun at 2:05 Run = Level=Incremental mon--sat at 2:05 } Total directives per resource: Director=27 Client=21 Storage=21 Job=60 Schedule=3, Device=52, ...
  • 19. Bacula Configuration - Storage Device { Name = File Archive Device = /var/bacula/backups Device Type = File # Directory, DVD, FIFO, Tape Media Type = File Label Media = yes Random Access = yes ... }
  • 20. Bacula Configuration - Storage AutoChanger { Name = LTO-Changer Device = Drive-0, Drive-1 Changer Device = /dev/sg0 ... } Device { Name = Drive-0 Archive Device = /dev/nst0 Device Type = Tape # DVD, File, FIFO Media Type = LTO-2 Autochanger = yes ... }
  • 21. Real Installation ● 53TB, 150,000,000 files, 90 clients, Linux ● 40TB, 40,000,000 files, 30 clients, Solaris ● LTO-3 libraries with several drives ● Large libraries with 100's of tape slots ● Libraries and drives connected with FC SAN ● 20GB, 200,000 files, 1 client, Linux disk and tape
  • 22. Project Development Project development Site : http://www.bacula.org/ Development style: ○ SourceForge project ○ Developer's guide with code style guidelines ○ Developer SVN access. Currently 16 developers may commit ○ Patches and commits reviewed by K. Sibbald ○ Code tested using a regression test suite ○ Email list for developers (bacula-devel) License: ○ GPL 2 copyright assigned to FSFE. ○ Freedom Task Force (FTF)
  • 23. Resources For users and system administrators Manual: http://www.bacula.org/en/rel-manual/index.html OS and Hardware compatibility lists (in manual) Bugs reports: http://bugs.bacula.org/ Email support list: bacula-users@lists.sourceforge.net For developers Docs: http://www.bacula.org/en/developers/index.html Email list: bacula-devel@lists.sourceforge.net, bacula-commits@lists.sourceforge.net SVN at Source Forge
  • 24. Credits Thanks Dan Langille who created the original presentation Karl Cunningham who updated it This presentation draws heavily on their work A .pdf copy of this presentation can be found at: http://www.bacula.org -> Presentations -> ... Many Thanks! samba@netstudent.polito.it