SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
________________________________
Past, Present & Future of DRLM project
Didac Oliveira
DRLM Chief Architect & Core Developer
About me
Didac Oliveira
Co-Owner & Co-Founder at Brain Updaters, S.L.L.
Co-Founder & Maintainer at DRLM Project
Other OpenSource contributions:
•
Relax-and-Recover (ReaR)
www.relax-and-recover.org
•
Config-to-HTML (cfg2html v6.x)
www.cfg2html.com
DRLM Team
Project founders & maintainers
Didac Oliveira Pau Roura Ruben Carbonell
DRLM Project
Agenda
Past:
- Project history
Present:
- What is DRLM?
- DRLM 2.3.X news
Future:
- DRLM 3.0 and future
Past
Project History
Summer 2013 at GRIFOLS
GRIFOLS needs a proper DR system for it’s strategic projects on GNU/Linux:
●
They were used to propietary UNIXes (AIX and HP-UX) for years.
●
Disaster Recovery is a must for them, as a pharma company needs to report to
organizations like FDA (US Food & Drug Administration) and EMA (European Medical
Agency).
●
They were happy with DR tools for AIX (mysysb/NIM server) and HP-UX (Ignite
Server).
●
What should they use for GNU/Linux?
Project History
GRIFOLS met BU
●
GRIFOLS requirements were analyzed. A solution based
on Relax-and-Recover was proposed.
●
ReaR had some drawbacks in the management area that
are very importat for a big company like GRIFOLS.
●
BU had the commitment to made a PoC for the proposed
solution with ReaR, and to develop a management layer,
released as Open Source software, in few months with
all the requirements needed.
Project History
DRLM v1.0.0 released
DRLM version 1.0 was released in just 6 months of hard effort in
development and testing!
●
GRIFOLS was happy with the Proof of concept results, and this way the DRLM
project was born.
●
The project implementation at GRIFOLS was a success in January 2014.
●
This is not the end of the story, but ...
DRLM at GRIFOLS
Today’s overview
To see what is the situation of DRLM project in a
Big Pharma Company don’t trust me, trust them.
See what GRIFOLS Unix Global Manager told at
Librecon 2018 about us:
http://bit.ly/Librecon18
Project History
Timetable
2013 AUG: DRLM Project was born
2013 DEC: First DRLM stable version (1.0.0)
2014 DEC: DRLM full integration with ReaR
2015 JAN: DRLM project websites released
(www.drlm.org & docs.drlm.org)
2016 JUL: DRLM version 2.0.0 released
2017 MAY: DRLM version 2.1.3 released
2017 SEP: DRLM version 2.2.0 released
2018 OCT: DRLM version 2.2.1 released
2019 JUL: DRLM version 2.3.1 released
Present
What is DRLM?
Brief description of ReaR
ReaR is the best standalone Disaster
Recovery tool for GNU/Linux.
It is able to recover a single
system in few minutes
from scratch.
What is DRLM?
Brief description of DRLM
DRLM is a centralized management tool for
GNU/Linux implementations using ReaR.
An easy-to-use software for Disaster Recovery,
System Migrations and OS Deployments of
GNU/Linux.
What is DRLM?
Feature highlights
Automatic error
reporting
Unattended client installation and
base config
Backup job
scheduler
Export & import
DR images
What is DRLM?
GNU/Linux Disaster Recovery
●
Fast rollback to a pre-upgrade backup after
any wrong OS upgrade causing service
downtime or malfunction.
●
Recover software or hardware failures. From
data corrupted or broken disks to full
hardware replacement issues.
●
Full network recovery system for your
GNU/Linux operating systems.
●
Complementary with your existing data
backup solution. Is not a data backup
replacement.
What is DRLM?
GNU/Linux Deployment tool
1) Install a fresh OS once, with your required FS/LVM layouts,
required software packages and base configs, etc.
2) Register this new client to your DRLM server.
3) Run a DRLM backup on this client
4) Export the resulting DR image and distribute it among your
DRLM servers on diferent locations.
5) Register your new servers (phys. or virt.) in DRLM.
6) Import de template DR image to them.
7) Net boot your servers and recover/install them all.New
system 1
...
New
system 2
New
system 3
New
system N
Network based OS deployments
Install new systems from any DRLM backup
image as a template for a new GNU/Linux
Server or Desktop.
What is DRLM?
GNU/Linux Migration tool
Physical Server
VM
Hypervisor
P2V
VM
Hypervisor B
V2V
VM
Hypervisor A
Physical Server
P2P
Physical Server
Physical Server
VM
Hypervisor
V2P
A vendor agnostic solution for all your system migrations.
●
Migrate your GNU/Linux physical workloads to any
virtualization platform of your choice.
●
Replace your old and out-of-warranty hardware for new one
from any vendor.
●
Migrate your existing VMs to other virtualization platform, without
worring about cumbersome disk format conversion compatibilies or
vendor specific conversion/migration tools.
●
Move virtual workloads to physical, for performance needs or to
test reproduce issues .
DRLM version 2.X
What is new?
●
Golang DRLM API replacing Apache2 and CGI-BIN.
●
Listbackup command shows size and duration of backup.
●
Improved database version control.
●
Added "-C" on install workflow to allow configuration of the client without install dependencies.
●
Added "-I" in the import backup workflow to allow importing a backup from within the same DRLM
server.
●
Added "-U" on list clients to list the clients that have no scheduled jobs.
●
listclient shows if a client has scheduled jobs or not.
●
Added "-p" on list backups workflow to mark the backups that might have failed with colors.
●
Added "-C" on addclient workflow to allow the configuration of the client without installing the
dependencies.
●
Debian 10 Support.
●
Added ReaR 2.5 support on Debian 9, Debian8, Ubuntu 18, Ubuntu 16 and Ubuntu 14.
●
Added OS version and ReaR version in listclient.
●
listclient workflow shows client status (up/down).
●
Installclient workflow install ReaR packages from default.conf by default. Is possible to force to
install ReaR from repositories with -r/--repo parameter (issue #114).
●
Added docker support (not for production) – develop branch
●
Etc.
DRLM version 2.3.1
Lastest production release news
DRLM version 2.3.1
DEMO
DRLM 2.3.1 Demo
https://asciinema.org/a/TUAiTkRzD1J9QBFmOvAL64QA2
A brief demo of how last DRLM production release (v2.3.1) works.
This video shows the basic use of DRLM and some of the latest news of the DRLMv2 and its CLI, displaying
important information to the user like:
●
client is online (GREEN) / offline (RED)
●
client has Scheduled Jobs
●
backup duration / size (gives a clue if our client config is correct and backup is complete)
Anyway is a demo of how easy and fast is to have a proper Disaster Recovery solution for GNU/Linux.
Enjoy!
Future
DRLM version 3
Design Overview
●
Complete rewrite in Golang
●
Modular design
●
S3 Object storage backend
●
MariaDB database
●
More than just GNU/Linux DR
●
Etc.
DRLM version 3 Highlights
DRLM version 3
Development state
●
Functional DRLMv3 CLI tool (drlmctl)
●
Installation of DRLMv3 Core from drlmctl
● Installation of DRLMv3 Agents from drlmctl
●
Working base plugins system
●
Working base task scheduler
●
Working base Storage backend (Minio)
●
Working base Testing environment (cp/tar dummy plugins)
●
All communication with all components with encryption (TLS)
What we’ve done until now?
DRLM version 3
Development, Testing & Build Environment
$ git clone https://github.com/brainupdaters/dr3dev
$ cd dr3dev
$ make build
$ make start ghuser=didacog gitname=’Didac Oliveira’
gitmail=didac@drlm.org
$ Happy hacking!!
dr3dev (DRLMv3 Development, Testing & Build envrionment)
We prepared this repo to avoid issues when developing DRLM version 3, providing exactly de
same environment to every developer contributing to DRLMv3. It’s easier to detect malfunction
components, avoid mismatch of Go libraries used. Is very easy to start, all is setup automagically,
from git configs to mariaDB and Minio setup, etc.
Let’s see how it works:
DRLM version 3
DEMOS
Dr3dev Demo (DRLMv3 Development, Testing & Build tool)
https://asciinema.org/a/PQbT9sbFshl5oZ2alBfgAFYUa
A brief demo of how easy is to contribute to the new DRLM version 3.
This demo shows how to use https://github.com/brainupdaters/dr3dev repository that has a complete environment to
develop, test and build the future DRLMv3.
It has never been easier to contribute to DRLM with all the required tools, editors, database, storage backend, etc. in a
Github repo and keeping your laptop/workstation clean. It uses docker to set up all the environment and is really easy to
use!!
Happy hacking!!
DRLMv3 Testing Demo
https://asciinema.org/a/HkuEfdOkIEIBsmp9JOmPIA4qU
A brief demo of what is the state of the future version of DRLM (version 3) and what can be
tested at this point of development after 7 months of development.
At this point we have the CLI (drlmctl) that is able to install the drlm-core and drlm-agents of
version 3 and a working base plugin system with 2 dummy plugins for testing that store data
to the Minio(S3) backend.
Enjoy the testing!!
Project Future
What is comming ...
Roadmap for DRLM 2.X
●
More automation
●
Add support for new platforms (PPC, RPi3,
etc.).
●
Multiple Boot/restore options (offline, HTTP,
etc.)
●
Packaging and backup improvements.
●
Non planned E.O.L. until version 3 ready for
production.
●
And lot more ....
New DRLM version 3 !
●
design phase ended.
●
Development phase started in march 2019 and
working actively on it..
●
Is going to be a huge change improving
flexibility and modularity of the service.
●
Keep updated for future project news!
Project Future
How to contribute?
•
Try our latest versions and give us your feedback
•
Write code to improve or extend DRLM
•
Start discussions for new feature proposals
•
Report Issues to improve our code and/or documentation
github.com/brainupdaters/drlm*
•
Share your experience with DRLM
•
Contract services and/or Support for DRLM
Visit http://drlm.org/community/ and http://brainupdaters.net/drlm-services/ for more information.
Questions & Answers
Copyright © 2019 - Brain Updaters, S.L.L. Licensed under Creative Commons (CC BY-SA 4.0). DRLM and DRLM logo are registered
trademarks of Brain Updaters, S.L.L.
DRLM at Github: github.com/brainupdaters/drlm
DRLM website: drlm.org
DRLM Docs: docs.drlm.org
Didac Oliveira Phone: +34 629 078 369
DRLM Chief Architect & Core Developer e-mail: didac@brainupdaters.net
Slides: http://bit.ly/FOSDEM20
http://bit.ly/Librecon18

Contenu connexe

Tendances

Kernel Recipes 2014 - The Linux graphics stack and Nouveau driver
Kernel Recipes 2014 - The Linux graphics stack and Nouveau driverKernel Recipes 2014 - The Linux graphics stack and Nouveau driver
Kernel Recipes 2014 - The Linux graphics stack and Nouveau driver
Anne Nicolas
 

Tendances (20)

[Global logic] container runtimes and kubernetes
[Global logic] container runtimes and kubernetes[Global logic] container runtimes and kubernetes
[Global logic] container runtimes and kubernetes
 
Docker for tooling
Docker for toolingDocker for tooling
Docker for tooling
 
Kernel Recipes 2014 - The Linux graphics stack and Nouveau driver
Kernel Recipes 2014 - The Linux graphics stack and Nouveau driverKernel Recipes 2014 - The Linux graphics stack and Nouveau driver
Kernel Recipes 2014 - The Linux graphics stack and Nouveau driver
 
Foss Gadgematics
Foss GadgematicsFoss Gadgematics
Foss Gadgematics
 
Red Hat Container Development Kit
Red Hat Container Development KitRed Hat Container Development Kit
Red Hat Container Development Kit
 
I965g
I965gI965g
I965g
 
Best practices for optimizing Red Hat platforms for large scale datacenter de...
Best practices for optimizing Red Hat platforms for large scale datacenter de...Best practices for optimizing Red Hat platforms for large scale datacenter de...
Best practices for optimizing Red Hat platforms for large scale datacenter de...
 
BuildKitでLazy Pullを有効にしてビルドを早くする話
BuildKitでLazy Pullを有効にしてビルドを早くする話BuildKitでLazy Pullを有効にしてビルドを早くする話
BuildKitでLazy Pullを有効にしてビルドを早くする話
 
Introduction and Deep Dive Into Containerd
Introduction and Deep Dive Into ContainerdIntroduction and Deep Dive Into Containerd
Introduction and Deep Dive Into Containerd
 
GNU GCC - what just a compiler...?
GNU GCC - what just a compiler...?GNU GCC - what just a compiler...?
GNU GCC - what just a compiler...?
 
Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD Webinar - Unbox GitLab CI/CD
Webinar - Unbox GitLab CI/CD
 
Simplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual CloudSimplifying and accelerating converged media with Open Visual Cloud
Simplifying and accelerating converged media with Open Visual Cloud
 
Production FS: Adapt or die - Claudia Beresford & Tiago Scolar
Production FS: Adapt or die - Claudia Beresford & Tiago ScolarProduction FS: Adapt or die - Claudia Beresford & Tiago Scolar
Production FS: Adapt or die - Claudia Beresford & Tiago Scolar
 
GCC Compiler as a Performance Testing tool for C programs
GCC Compiler as a Performance Testing tool for C programsGCC Compiler as a Performance Testing tool for C programs
GCC Compiler as a Performance Testing tool for C programs
 
【CNDO2021】Calicoのデプロイをミスって本番クラスタを壊しそうになった話
【CNDO2021】Calicoのデプロイをミスって本番クラスタを壊しそうになった話【CNDO2021】Calicoのデプロイをミスって本番クラスタを壊しそうになった話
【CNDO2021】Calicoのデプロイをミスって本番クラスタを壊しそうになった話
 
Webinar: Building Embedded Applications from QtCreator with Docker
Webinar: Building Embedded Applications from QtCreator with DockerWebinar: Building Embedded Applications from QtCreator with Docker
Webinar: Building Embedded Applications from QtCreator with Docker
 
Q2.12: Debugging with GDB
Q2.12: Debugging with GDBQ2.12: Debugging with GDB
Q2.12: Debugging with GDB
 
NVIDIA GTC 2019: Red Hat and the NVIDIA DGX: Tried, Tested, Trusted
NVIDIA GTC 2019:  Red Hat and the NVIDIA DGX: Tried, Tested, TrustedNVIDIA GTC 2019:  Red Hat and the NVIDIA DGX: Tried, Tested, Trusted
NVIDIA GTC 2019: Red Hat and the NVIDIA DGX: Tried, Tested, Trusted
 
G++ & GCC
G++ & GCCG++ & GCC
G++ & GCC
 
Java and Container - Make it Awesome !
Java and Container - Make it Awesome !Java and Container - Make it Awesome !
Java and Container - Make it Awesome !
 

Similaire à Fosdem'20_Past, present & future of DRLM project

Similaire à Fosdem'20_Past, present & future of DRLM project (20)

Presentación Librecon 2018 "GNU/Linux Disaster Recovery con DRLM en GRIFOLS"
Presentación Librecon 2018 "GNU/Linux Disaster Recovery con DRLM en GRIFOLS"Presentación Librecon 2018 "GNU/Linux Disaster Recovery con DRLM en GRIFOLS"
Presentación Librecon 2018 "GNU/Linux Disaster Recovery con DRLM en GRIFOLS"
 
FOSDEM'17: Disaster Recovery Management with ReaR (relax-and-recover) & DRLM ...
FOSDEM'17: Disaster Recovery Management with ReaR (relax-and-recover) & DRLM ...FOSDEM'17: Disaster Recovery Management with ReaR (relax-and-recover) & DRLM ...
FOSDEM'17: Disaster Recovery Management with ReaR (relax-and-recover) & DRLM ...
 
Using Docker For Development
Using Docker For DevelopmentUsing Docker For Development
Using Docker For Development
 
DCEU 18: Developing with Docker Containers
DCEU 18: Developing with Docker ContainersDCEU 18: Developing with Docker Containers
DCEU 18: Developing with Docker Containers
 
Drupal 8 improvements for developer productivity php symfony and more
Drupal 8 improvements for developer productivity  php symfony and moreDrupal 8 improvements for developer productivity  php symfony and more
Drupal 8 improvements for developer productivity php symfony and more
 
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
 
Drupal 8 - Improving your development workflow
Drupal 8 - Improving your development workflowDrupal 8 - Improving your development workflow
Drupal 8 - Improving your development workflow
 
Introduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxDataIntroduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxData
 
Getting started with docker (2017)
Getting started with docker (2017)Getting started with docker (2017)
Getting started with docker (2017)
 
OpenNebulaConf 2016 - The DRBD SDS for OpenNebula by Philipp Reisner, LINBIT
OpenNebulaConf 2016 - The DRBD SDS for OpenNebula by Philipp Reisner, LINBITOpenNebulaConf 2016 - The DRBD SDS for OpenNebula by Philipp Reisner, LINBIT
OpenNebulaConf 2016 - The DRBD SDS for OpenNebula by Philipp Reisner, LINBIT
 
Rhel8 Beta - Halifax RHUG
Rhel8 Beta - Halifax RHUGRhel8 Beta - Halifax RHUG
Rhel8 Beta - Halifax RHUG
 
Heroku
HerokuHeroku
Heroku
 
Decrease build time and application size
Decrease build time and application sizeDecrease build time and application size
Decrease build time and application size
 
Docman - The swiss army knife for Drupal multisite docroot management and dep...
Docman - The swiss army knife for Drupal multisite docroot management and dep...Docman - The swiss army knife for Drupal multisite docroot management and dep...
Docman - The swiss army knife for Drupal multisite docroot management and dep...
 
Best Practices for Developing & Deploying Java Applications with Docker
Best Practices for Developing & Deploying Java Applications with DockerBest Practices for Developing & Deploying Java Applications with Docker
Best Practices for Developing & Deploying Java Applications with Docker
 
Extending Android's Platform Toolsuite
Extending Android's Platform ToolsuiteExtending Android's Platform Toolsuite
Extending Android's Platform Toolsuite
 
Docker 101
Docker 101Docker 101
Docker 101
 
Meetup 2020 - Back to the Basics part 101 : IaC
Meetup 2020 - Back to the Basics part 101 : IaCMeetup 2020 - Back to the Basics part 101 : IaC
Meetup 2020 - Back to the Basics part 101 : IaC
 
Super powered Drupal development with docker
Super powered Drupal development with dockerSuper powered Drupal development with docker
Super powered Drupal development with docker
 
Introduction to PaaS and Heroku
Introduction to PaaS and HerokuIntroduction to PaaS and Heroku
Introduction to PaaS and Heroku
 

Dernier

Dernier (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 

Fosdem'20_Past, present & future of DRLM project

  • 1. ________________________________ Past, Present & Future of DRLM project Didac Oliveira DRLM Chief Architect & Core Developer
  • 2. About me Didac Oliveira Co-Owner & Co-Founder at Brain Updaters, S.L.L. Co-Founder & Maintainer at DRLM Project Other OpenSource contributions: • Relax-and-Recover (ReaR) www.relax-and-recover.org • Config-to-HTML (cfg2html v6.x) www.cfg2html.com
  • 3. DRLM Team Project founders & maintainers Didac Oliveira Pau Roura Ruben Carbonell
  • 4. DRLM Project Agenda Past: - Project history Present: - What is DRLM? - DRLM 2.3.X news Future: - DRLM 3.0 and future
  • 6. Project History Summer 2013 at GRIFOLS GRIFOLS needs a proper DR system for it’s strategic projects on GNU/Linux: ● They were used to propietary UNIXes (AIX and HP-UX) for years. ● Disaster Recovery is a must for them, as a pharma company needs to report to organizations like FDA (US Food & Drug Administration) and EMA (European Medical Agency). ● They were happy with DR tools for AIX (mysysb/NIM server) and HP-UX (Ignite Server). ● What should they use for GNU/Linux?
  • 7. Project History GRIFOLS met BU ● GRIFOLS requirements were analyzed. A solution based on Relax-and-Recover was proposed. ● ReaR had some drawbacks in the management area that are very importat for a big company like GRIFOLS. ● BU had the commitment to made a PoC for the proposed solution with ReaR, and to develop a management layer, released as Open Source software, in few months with all the requirements needed.
  • 8. Project History DRLM v1.0.0 released DRLM version 1.0 was released in just 6 months of hard effort in development and testing! ● GRIFOLS was happy with the Proof of concept results, and this way the DRLM project was born. ● The project implementation at GRIFOLS was a success in January 2014. ● This is not the end of the story, but ...
  • 9. DRLM at GRIFOLS Today’s overview To see what is the situation of DRLM project in a Big Pharma Company don’t trust me, trust them. See what GRIFOLS Unix Global Manager told at Librecon 2018 about us: http://bit.ly/Librecon18
  • 10. Project History Timetable 2013 AUG: DRLM Project was born 2013 DEC: First DRLM stable version (1.0.0) 2014 DEC: DRLM full integration with ReaR 2015 JAN: DRLM project websites released (www.drlm.org & docs.drlm.org) 2016 JUL: DRLM version 2.0.0 released 2017 MAY: DRLM version 2.1.3 released 2017 SEP: DRLM version 2.2.0 released 2018 OCT: DRLM version 2.2.1 released 2019 JUL: DRLM version 2.3.1 released
  • 12. What is DRLM? Brief description of ReaR ReaR is the best standalone Disaster Recovery tool for GNU/Linux. It is able to recover a single system in few minutes from scratch.
  • 13. What is DRLM? Brief description of DRLM DRLM is a centralized management tool for GNU/Linux implementations using ReaR. An easy-to-use software for Disaster Recovery, System Migrations and OS Deployments of GNU/Linux.
  • 14. What is DRLM? Feature highlights Automatic error reporting Unattended client installation and base config Backup job scheduler Export & import DR images
  • 15. What is DRLM? GNU/Linux Disaster Recovery ● Fast rollback to a pre-upgrade backup after any wrong OS upgrade causing service downtime or malfunction. ● Recover software or hardware failures. From data corrupted or broken disks to full hardware replacement issues. ● Full network recovery system for your GNU/Linux operating systems. ● Complementary with your existing data backup solution. Is not a data backup replacement.
  • 16. What is DRLM? GNU/Linux Deployment tool 1) Install a fresh OS once, with your required FS/LVM layouts, required software packages and base configs, etc. 2) Register this new client to your DRLM server. 3) Run a DRLM backup on this client 4) Export the resulting DR image and distribute it among your DRLM servers on diferent locations. 5) Register your new servers (phys. or virt.) in DRLM. 6) Import de template DR image to them. 7) Net boot your servers and recover/install them all.New system 1 ... New system 2 New system 3 New system N Network based OS deployments Install new systems from any DRLM backup image as a template for a new GNU/Linux Server or Desktop.
  • 17. What is DRLM? GNU/Linux Migration tool Physical Server VM Hypervisor P2V VM Hypervisor B V2V VM Hypervisor A Physical Server P2P Physical Server Physical Server VM Hypervisor V2P A vendor agnostic solution for all your system migrations. ● Migrate your GNU/Linux physical workloads to any virtualization platform of your choice. ● Replace your old and out-of-warranty hardware for new one from any vendor. ● Migrate your existing VMs to other virtualization platform, without worring about cumbersome disk format conversion compatibilies or vendor specific conversion/migration tools. ● Move virtual workloads to physical, for performance needs or to test reproduce issues .
  • 18. DRLM version 2.X What is new? ● Golang DRLM API replacing Apache2 and CGI-BIN. ● Listbackup command shows size and duration of backup. ● Improved database version control. ● Added "-C" on install workflow to allow configuration of the client without install dependencies. ● Added "-I" in the import backup workflow to allow importing a backup from within the same DRLM server. ● Added "-U" on list clients to list the clients that have no scheduled jobs. ● listclient shows if a client has scheduled jobs or not. ● Added "-p" on list backups workflow to mark the backups that might have failed with colors. ● Added "-C" on addclient workflow to allow the configuration of the client without installing the dependencies. ● Debian 10 Support. ● Added ReaR 2.5 support on Debian 9, Debian8, Ubuntu 18, Ubuntu 16 and Ubuntu 14. ● Added OS version and ReaR version in listclient. ● listclient workflow shows client status (up/down). ● Installclient workflow install ReaR packages from default.conf by default. Is possible to force to install ReaR from repositories with -r/--repo parameter (issue #114). ● Added docker support (not for production) – develop branch ● Etc.
  • 19. DRLM version 2.3.1 Lastest production release news
  • 20. DRLM version 2.3.1 DEMO DRLM 2.3.1 Demo https://asciinema.org/a/TUAiTkRzD1J9QBFmOvAL64QA2 A brief demo of how last DRLM production release (v2.3.1) works. This video shows the basic use of DRLM and some of the latest news of the DRLMv2 and its CLI, displaying important information to the user like: ● client is online (GREEN) / offline (RED) ● client has Scheduled Jobs ● backup duration / size (gives a clue if our client config is correct and backup is complete) Anyway is a demo of how easy and fast is to have a proper Disaster Recovery solution for GNU/Linux. Enjoy!
  • 22. DRLM version 3 Design Overview ● Complete rewrite in Golang ● Modular design ● S3 Object storage backend ● MariaDB database ● More than just GNU/Linux DR ● Etc. DRLM version 3 Highlights
  • 23. DRLM version 3 Development state ● Functional DRLMv3 CLI tool (drlmctl) ● Installation of DRLMv3 Core from drlmctl ● Installation of DRLMv3 Agents from drlmctl ● Working base plugins system ● Working base task scheduler ● Working base Storage backend (Minio) ● Working base Testing environment (cp/tar dummy plugins) ● All communication with all components with encryption (TLS) What we’ve done until now?
  • 24. DRLM version 3 Development, Testing & Build Environment $ git clone https://github.com/brainupdaters/dr3dev $ cd dr3dev $ make build $ make start ghuser=didacog gitname=’Didac Oliveira’ gitmail=didac@drlm.org $ Happy hacking!! dr3dev (DRLMv3 Development, Testing & Build envrionment) We prepared this repo to avoid issues when developing DRLM version 3, providing exactly de same environment to every developer contributing to DRLMv3. It’s easier to detect malfunction components, avoid mismatch of Go libraries used. Is very easy to start, all is setup automagically, from git configs to mariaDB and Minio setup, etc. Let’s see how it works:
  • 25. DRLM version 3 DEMOS Dr3dev Demo (DRLMv3 Development, Testing & Build tool) https://asciinema.org/a/PQbT9sbFshl5oZ2alBfgAFYUa A brief demo of how easy is to contribute to the new DRLM version 3. This demo shows how to use https://github.com/brainupdaters/dr3dev repository that has a complete environment to develop, test and build the future DRLMv3. It has never been easier to contribute to DRLM with all the required tools, editors, database, storage backend, etc. in a Github repo and keeping your laptop/workstation clean. It uses docker to set up all the environment and is really easy to use!! Happy hacking!! DRLMv3 Testing Demo https://asciinema.org/a/HkuEfdOkIEIBsmp9JOmPIA4qU A brief demo of what is the state of the future version of DRLM (version 3) and what can be tested at this point of development after 7 months of development. At this point we have the CLI (drlmctl) that is able to install the drlm-core and drlm-agents of version 3 and a working base plugin system with 2 dummy plugins for testing that store data to the Minio(S3) backend. Enjoy the testing!!
  • 26. Project Future What is comming ... Roadmap for DRLM 2.X ● More automation ● Add support for new platforms (PPC, RPi3, etc.). ● Multiple Boot/restore options (offline, HTTP, etc.) ● Packaging and backup improvements. ● Non planned E.O.L. until version 3 ready for production. ● And lot more .... New DRLM version 3 ! ● design phase ended. ● Development phase started in march 2019 and working actively on it.. ● Is going to be a huge change improving flexibility and modularity of the service. ● Keep updated for future project news!
  • 27. Project Future How to contribute? • Try our latest versions and give us your feedback • Write code to improve or extend DRLM • Start discussions for new feature proposals • Report Issues to improve our code and/or documentation github.com/brainupdaters/drlm* • Share your experience with DRLM • Contract services and/or Support for DRLM Visit http://drlm.org/community/ and http://brainupdaters.net/drlm-services/ for more information.
  • 29. Copyright © 2019 - Brain Updaters, S.L.L. Licensed under Creative Commons (CC BY-SA 4.0). DRLM and DRLM logo are registered trademarks of Brain Updaters, S.L.L. DRLM at Github: github.com/brainupdaters/drlm DRLM website: drlm.org DRLM Docs: docs.drlm.org Didac Oliveira Phone: +34 629 078 369 DRLM Chief Architect & Core Developer e-mail: didac@brainupdaters.net Slides: http://bit.ly/FOSDEM20 http://bit.ly/Librecon18