SlideShare a Scribd company logo
1 of 59
Download to read offline
Julien Pivotto

CentOS Dojo, Brussels
January 31, 2014
whoami
sysadmin @ inuits
• open-source defender for 7+ years
• devops believer
• @roidelapluie on twitter/github
•

Julien Pivotto

Foreman
Introduction

Julien Pivotto

Foreman
Lifecycle management
• Provisioning
• Automation
• Reporting

Julien Pivotto

Foreman
We had tools!?
• Provisioning using Cobbler
• Automation using Puppet/Chef/. . .
• Puppet reporting with Puppet Dashboard

Julien Pivotto

Foreman
Then came virtualisation
• Cobbler was not enough
• Using virt-install to automate VM creation
• One shot command line, decentralized
• Cobbler does not cluster

Julien Pivotto

Foreman
Then came cloud
• Where is my machine?
• Bare-Metal? Bare-what?
• Dynamic environments
• Change quickly and often

Julien Pivotto

Foreman
Cobbler
• Not intuitive or reactive
• Support for Xen
• TFTP on the local machine
• Direct control of DHCP configuration
• Basic yumrepo support

Julien Pivotto

Foreman
Puppet-dashboard
• Puppet web frontend
• It was the reference
• Until the arrival of Foreman
• Puppetlabs abandoned it for PuppetDB

Julien Pivotto

Foreman
Provisioning
• Bare metal and virtual
• Multiple backends
• Decentralized (control remote TFTP, DNS, DHCP)

Julien Pivotto

Foreman
Automation
• (puppet) ENC
• Trigger puppet runs
• Advanced use: parameters,. . .
• History of changes
• ENC is optional

Julien Pivotto

Foreman
Reporting
• Visualise changes
• See the full logs
• View the facts

Julien Pivotto

Foreman
Foreman

Julien Pivotto

Foreman
Foreman 101
• Foreman was used for one thing
• Viewing puppet reports
• Having cool statistics gathering, facts

Julien Pivotto

Foreman
Meanwhile
• More and more features
• More than a fact/reports viewer
• Interacts deeply with puppet

Julien Pivotto

Foreman
Foreman 201
• Puppet reports viewer
• Machine provisioning
• Puppet ENC
• Extendable with plugins

Julien Pivotto

Foreman
Architecture

Julien Pivotto

Foreman
Smart Proxies
• Provides Restful API
• Connect to Bind, DHCP, TFTP, . . .
• Also puppet-ca, mcollective, . . .
• Allow foreman to talk with services

Julien Pivotto

Foreman
From the Foreman documentation
Foreman installer
• kafo
• a rubygem
• Command line installer
• Using puppet modules
• Generic Project

Julien Pivotto

Foreman
Foreman installer
• a lot of options
• interactive installation: -i
• enables/disables stuff
• sets up git repositories
• creates a puppet tree skeleton

Julien Pivotto

Foreman
Provisioning

Julien Pivotto

Foreman
Provisioning
• Install any distribution
• Configure almost everything
• Generate snippets, kickstarts,. . .
• ERB Scripting

Julien Pivotto

Foreman
Providers
• Libvirt
• EC2
• OpenStack
• Google Compute Engine
• oVirt
• VMWare

Julien Pivotto

Foreman
OS
• CentOS/RHEL
• Fedora
• Ubuntu/Debian
• Suse
• Solaris

Julien Pivotto

Foreman
Features of providers
• Depending on the provider
• Unattended installation
• Image-based install
• Power management
• Console (noVNC)

Julien Pivotto

Foreman
Automation

Julien Pivotto

Foreman
Puppet ENC
• Support classes
• Parametrized classes
• Smart variables

Julien Pivotto

Foreman
Configuration
• Environments
• Host groups
• Classes + params
• Global parameters

Julien Pivotto

Foreman
Certificates
• Puppet-ca proxy
• Takes care of signing certificates
• Trigger first puppet run
• Run first puppet run in noop mode (before reboot).

Julien Pivotto

Foreman
Reporting

Julien Pivotto

Foreman
Puppet reports
• Very detailed
• History
• Time per ressource
• Overview of the last reports

Julien Pivotto

Foreman
Host groups
• Default provisioning parameters
• Puppet classes
• Network configuration

Julien Pivotto

Foreman
Integration

Julien Pivotto

Foreman
Queries
• Advanced queries
• Query by facts, by last report time
• Create custom shorcut in the ui

Julien Pivotto

Foreman
RESTful API
• Complete and well documented
• Everything is possible
• Integrate foreman with anything

Julien Pivotto

Foreman
Hammer
• Command line to foreman
• Scripting
• Automation
• Without browser (e.g no http(s) access)

Julien Pivotto

Foreman
Scale

Julien Pivotto

Foreman
Large infrastructure
• Fine-grained roles (ACL)
• LDAP authentication
• Organisation/location support

Julien Pivotto

Foreman
Scaling up
• Multiple Puppet Masters
• Multiple Smart Proxies
• Foreman talks with the CA
• Multiple compute resources

Julien Pivotto

Foreman
Use cases

Julien Pivotto

Foreman
Puppet logs reader
• Why are my puppet runs taking so long?
• When does that node report the last time
• Quickly view facter facts
• Just ignoring the provision part of foreman

Julien Pivotto

Foreman
Giving access
• Allow developers to create VM’s
• Easy, secure, less risks
• NoVNC access in browser
• Usage of ACL

Julien Pivotto

Foreman
Phoenix tests
• Really easy to rebuild a VM
• Re-provisioning
• Puppet certs managed across foreman
• Integrate with Jenkins (REST)

Julien Pivotto

Foreman
Conclusion

Julien Pivotto

Foreman
Conclusion
• From small labs to larger environments
• Interactions with RESTful API
• Complete puppet management
• Bare Metal and virtual machines

Julien Pivotto

Foreman
Foreman meetings in the next days
• Configuration management devroom at FOSDEM
• Config Management Camp in Ghent (no tickets left)

Julien Pivotto

Foreman
Thank you
Any question?

Julien Pivotto

Foreman
Contact
Julien Pivotto
julien@inuits.eu
@roidelapluie

INUITS bvba
INUITS bvba
Belgium
Belgium
+32 473 441 636
+32 473 441 636
https://inuits.eu
https://inuits.eu

Julien Pivotto

Foreman

More Related Content

What's hot

33616611930205162156 upgrade internals_19c
33616611930205162156 upgrade internals_19c33616611930205162156 upgrade internals_19c
33616611930205162156 upgrade internals_19c
Locuto Riorama
 

What's hot (20)

Room 2 - 3 - Nguyễn Hoài Nam & Nguyễn Việt Hùng - Terraform & Pulumi Comparin...
Room 2 - 3 - Nguyễn Hoài Nam & Nguyễn Việt Hùng - Terraform & Pulumi Comparin...Room 2 - 3 - Nguyễn Hoài Nam & Nguyễn Việt Hùng - Terraform & Pulumi Comparin...
Room 2 - 3 - Nguyễn Hoài Nam & Nguyễn Việt Hùng - Terraform & Pulumi Comparin...
 
Jenkins 101: Getting Started
Jenkins 101: Getting StartedJenkins 101: Getting Started
Jenkins 101: Getting Started
 
Terraform introduction
Terraform introductionTerraform introduction
Terraform introduction
 
Room 1 - 4 - Phạm Tường Chiến & Trần Văn Thắng - Deliver managed Kubernetes C...
Room 1 - 4 - Phạm Tường Chiến & Trần Văn Thắng - Deliver managed Kubernetes C...Room 1 - 4 - Phạm Tường Chiến & Trần Văn Thắng - Deliver managed Kubernetes C...
Room 1 - 4 - Phạm Tường Chiến & Trần Văn Thắng - Deliver managed Kubernetes C...
 
Terraform
TerraformTerraform
Terraform
 
Terraform Introduction
Terraform IntroductionTerraform Introduction
Terraform Introduction
 
Ansible
AnsibleAnsible
Ansible
 
Ansible - Introduction
Ansible - IntroductionAnsible - Introduction
Ansible - Introduction
 
Introduction To Terraform
Introduction To TerraformIntroduction To Terraform
Introduction To Terraform
 
33616611930205162156 upgrade internals_19c
33616611930205162156 upgrade internals_19c33616611930205162156 upgrade internals_19c
33616611930205162156 upgrade internals_19c
 
Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...
Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...
Room 3 - 1 - Nguyễn Xuân Trường Lâm - Zero touch on-premise storage infrastru...
 
Introduction to Prometheus
Introduction to PrometheusIntroduction to Prometheus
Introduction to Prometheus
 
DevOps with Ansible
DevOps with AnsibleDevOps with Ansible
DevOps with Ansible
 
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
 
Terraform
TerraformTerraform
Terraform
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 
Terraform
TerraformTerraform
Terraform
 
Room 2 - 6 - Đinh Tuấn Phong - Migrate opensource database to Kubernetes easi...
Room 2 - 6 - Đinh Tuấn Phong - Migrate opensource database to Kubernetes easi...Room 2 - 6 - Đinh Tuấn Phong - Migrate opensource database to Kubernetes easi...
Room 2 - 6 - Đinh Tuấn Phong - Migrate opensource database to Kubernetes easi...
 
Terraform day1
Terraform day1Terraform day1
Terraform day1
 
Configuration management II - Terraform
Configuration management II - TerraformConfiguration management II - Terraform
Configuration management II - Terraform
 

Similar to Lifecycle Management with Foreman

Introduction to Gitlab
Introduction to GitlabIntroduction to Gitlab
Introduction to Gitlab
Julien Pivotto
 

Similar to Lifecycle Management with Foreman (20)

State of Puppet - Puppet Camp Silicon Valley 2014
State of Puppet - Puppet Camp Silicon Valley 2014State of Puppet - Puppet Camp Silicon Valley 2014
State of Puppet - Puppet Camp Silicon Valley 2014
 
Puppet Camp New York 2014: Streamlining Puppet Development Workflow
Puppet Camp New York 2014: Streamlining Puppet Development Workflow Puppet Camp New York 2014: Streamlining Puppet Development Workflow
Puppet Camp New York 2014: Streamlining Puppet Development Workflow
 
Steamlining your puppet development workflow
Steamlining your puppet development workflowSteamlining your puppet development workflow
Steamlining your puppet development workflow
 
The Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With PuppetThe Art and Zen of Managing Nagios With Puppet
The Art and Zen of Managing Nagios With Puppet
 
Introduction to Gitlab
Introduction to GitlabIntroduction to Gitlab
Introduction to Gitlab
 
DevOps, beyond agile
DevOps, beyond agileDevOps, beyond agile
DevOps, beyond agile
 
The Art & Zen of Managing Nagios with Puppet
The Art & Zen of Managing Nagios with PuppetThe Art & Zen of Managing Nagios with Puppet
The Art & Zen of Managing Nagios with Puppet
 
Accelerate and unify network deployment with Puppet on Juniper
Accelerate and unify network deployment with Puppet on JuniperAccelerate and unify network deployment with Puppet on Juniper
Accelerate and unify network deployment with Puppet on Juniper
 
Running CentOS on the Facebook fleet
Running CentOS on the Facebook fleetRunning CentOS on the Facebook fleet
Running CentOS on the Facebook fleet
 
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...
Nagios Conference 2014 - Mike Merideth - The Art and Zen of Managing Nagios w...
 
Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote
 
How we use Twisted in Launchpad
How we use Twisted in LaunchpadHow we use Twisted in Launchpad
How we use Twisted in Launchpad
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
 
CentOS at Facebook
CentOS at FacebookCentOS at Facebook
CentOS at Facebook
 
Puppet Camp Tokyo 2014: Keynote
Puppet Camp Tokyo 2014: KeynotePuppet Camp Tokyo 2014: Keynote
Puppet Camp Tokyo 2014: Keynote
 
Spot Trading - A case study in continuous delivery for mission critical finan...
Spot Trading - A case study in continuous delivery for mission critical finan...Spot Trading - A case study in continuous delivery for mission critical finan...
Spot Trading - A case study in continuous delivery for mission critical finan...
 
Puppet Release Workflows at Jive Software
Puppet Release Workflows at Jive SoftwarePuppet Release Workflows at Jive Software
Puppet Release Workflows at Jive Software
 
The Key Components of Adopting CI The OpenStack Way
The Key Components of Adopting CI The OpenStack WayThe Key Components of Adopting CI The OpenStack Way
The Key Components of Adopting CI The OpenStack Way
 
Experiences from Running Masterless Puppet - PuppetConf 2014
Experiences from Running Masterless Puppet - PuppetConf 2014Experiences from Running Masterless Puppet - PuppetConf 2014
Experiences from Running Masterless Puppet - PuppetConf 2014
 
Automation in Network Lifecycle Management - Bay Area Juniper Meetup
Automation in Network Lifecycle Management - Bay Area Juniper MeetupAutomation in Network Lifecycle Management - Bay Area Juniper Meetup
Automation in Network Lifecycle Management - Bay Area Juniper Meetup
 

More from Julien Pivotto

More from Julien Pivotto (20)

The O11y Toolkit
The O11y ToolkitThe O11y Toolkit
The O11y Toolkit
 
What's New in Prometheus and Its Ecosystem
What's New in Prometheus and Its EcosystemWhat's New in Prometheus and Its Ecosystem
What's New in Prometheus and Its Ecosystem
 
Prometheus: What is is, what is new, what is coming
Prometheus: What is is, what is new, what is comingPrometheus: What is is, what is new, what is coming
Prometheus: What is is, what is new, what is coming
 
What's new in Prometheus?
What's new in Prometheus?What's new in Prometheus?
What's new in Prometheus?
 
Introduction to Grafana Loki
Introduction to Grafana LokiIntroduction to Grafana Loki
Introduction to Grafana Loki
 
Why you should revisit mgmt
Why you should revisit mgmtWhy you should revisit mgmt
Why you should revisit mgmt
 
Observing the HashiCorp Ecosystem From Prometheus
Observing the HashiCorp Ecosystem From PrometheusObserving the HashiCorp Ecosystem From Prometheus
Observing the HashiCorp Ecosystem From Prometheus
 
Monitoring in a fast-changing world with Prometheus
Monitoring in a fast-changing world with PrometheusMonitoring in a fast-changing world with Prometheus
Monitoring in a fast-changing world with Prometheus
 
5 tips for Prometheus Service Discovery
5 tips for Prometheus Service Discovery5 tips for Prometheus Service Discovery
5 tips for Prometheus Service Discovery
 
Prometheus and TLS - an Introduction
Prometheus and TLS - an IntroductionPrometheus and TLS - an Introduction
Prometheus and TLS - an Introduction
 
Powerful graphs in Grafana
Powerful graphs in GrafanaPowerful graphs in Grafana
Powerful graphs in Grafana
 
YAML Magic
YAML MagicYAML Magic
YAML Magic
 
HAProxy as Egress Controller
HAProxy as Egress ControllerHAProxy as Egress Controller
HAProxy as Egress Controller
 
Improved alerting with Prometheus and Alertmanager
Improved alerting with Prometheus and AlertmanagerImproved alerting with Prometheus and Alertmanager
Improved alerting with Prometheus and Alertmanager
 
SIngle Sign On with Keycloak
SIngle Sign On with KeycloakSIngle Sign On with Keycloak
SIngle Sign On with Keycloak
 
Monitoring as an entry point for collaboration
Monitoring as an entry point for collaborationMonitoring as an entry point for collaboration
Monitoring as an entry point for collaboration
 
Incident Resolution as Code
Incident Resolution as CodeIncident Resolution as Code
Incident Resolution as Code
 
Monitor your CentOS stack with Prometheus
Monitor your CentOS stack with PrometheusMonitor your CentOS stack with Prometheus
Monitor your CentOS stack with Prometheus
 
Monitor your CentOS stack with Prometheus
Monitor your CentOS stack with PrometheusMonitor your CentOS stack with Prometheus
Monitor your CentOS stack with Prometheus
 
An introduction to Ansible
An introduction to AnsibleAn introduction to Ansible
An introduction to Ansible
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.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...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
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...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 

Lifecycle Management with Foreman