2. Weston Bassler, RHCSA/LFCS - currently working at Klarna, a
new startup in Columbus, as a Systems Engineer. Previous
experience as a Cloud and Linux Engineer for LexisNexis and
Verizon Wireless.
Justin Miller, CCAH/DataStax Certified Cassandra
Administrator - currently working as a Senior DevOps/Hadoop
Engineer for iHealth Technologies in Atlanta, GA. Before
that worked as a Java Developer at Verizon Wireless while
also obtaining a Masters in Comp Science.
Introduction
3. Whatweareheretotalkabout
● Background of the Projects
● Pt.1 The Foreman Project
○ Foreman Overview: What is it and why should I care?
○ Demo: Host Provisioning (Manual and Auto)
● Pt. 2 Katello Project
○ Katello Overview: What is it and what does it provide?
○ Demo: Host Collections and Bulk Actions
● Pt. 3 Bringing the 2 Projects Together
● Pt. 4 Other Awesomeness
○ Discuss other awesome features
○ Docker Demo!!!!
4. TheForeman
What is the Foreman?
“Foreman is an open source project that helps system
administrators manage servers throughout their lifecycle,
from provisioning and configuration to orchestration and
monitoring. Using Puppet, Chef, Salt, and Foreman's smart
proxy architecture, you can easily automate repetitive
tasks, quickly deploy applications, and proactively manage
change, both on-premise with VMs and bare-metal or in the
cloud.”
-From theforeman.org
5. TheForeman
● Provisioning, System Configuration and Registration
○ Automated provisioning of bare metal systems from OS
to application deployment.
○ Management abstractions for targeting and
configuration via concepts such as company, location,
arbitrary host group, and arbitrary environment
definitions.
○ Deep native integration with Puppet, with parameter
configuration targeting available via traditional
Hiera concepts but also via the abstractions mentioned
above.
6. TheForeman
● Provisioning, System Configuration and Registration Cont…
○ Audited tracking of all changes in one location.
○ Transparent locality via “capsul” servers that can
serve as local puppet masters and package repositories
for each site.
○ An extremely powerful REST API and command line tool
enable automation of any task you can think of.
○ Reports and dashboard that make auditing compliance a
breeze.
8. TheForeman
● Provisioning
○ private/public cloud, bare metal and Docker!!!!!!
○ Powerful dynamic templates and logic driven scripting
can dynamically build kickstarts based on your
requirements.
○ Dynamic discovery rules via facts such as number of
drives, hardware model, location, subnet make
tailoring automated configuration and deployment by
role possible. IE: When someone in the datacenter
unboxes your server, racks it, and plugs into into
network and power; it will automatically set itself
up.
9. TheForeman
● Provisioning Cont… (Defaults)
○ AWS, Ovirt, VMware, OpenStack, Rackspace, Google
Compute and more
○ Supported Operating systems
10. TheForeman
● Types of Deployment
○ pxe via kickstart
○ images via cloudinit etc
○ Bootdisk plugin - Boot images are written as hybrid
ISO images (usable as ISOs or USB disks), and booted
either from physical media or virtual disk/CDROM
FYI - http://cloudinit.readthedocs.org/en/latest/
11. TheForeman
● Orchestration
○ Smart Proxy Technology
○ Foreman-Smart proxy - helps Foreman commission a new
host and general orchestration
○ Should be on or near The Foreman host
○ Restful API to the various subsystems
■ DHCP, DNS, Puppet, Puppet CA, Realm & TFTP
12. TheForeman
● System Configuration Management
○ Built in Puppet
○ Classes, parameters and auto signing by default
○ Other SCM available (later)
● Grouping of Hosts
○ Host Groups for assigned attributes and functions
■ Puppet Configs, OS, Activation Keys, etc…
■ Much Key to Automation
13. TheForeman
● Inventory Management and Monitoring
○ Trends and Charts
○ Reports from Puppet
● User Management
○ LDAP Auth
○ Users and User Groups
○ Roles
16. Katello
What is Katello?
“Katello brings the full power of content management
alongside the provisioning and configuration capabilities of
Foreman.”
-From katello.org
17. Katello
● What Does Katello Provide?
○ Subscription Content Management
○ Auditing of deployed packages, errata, targeting of
non compliant nodes.
○ Environment update via defined flows. IE: Dev -> Test
-> Production
18. Katello
● Repository/Content Management
○ RPM, Docker, Puppet Content, Red Hat Subcriptions
■ Docker - sync from a registry or upload your own
images
■ Puppet - import puppet modules from git/Puppet
Forge
○ Products - A group of content that you register to
each host.
○ Schedule sync/upload of your repos
19. Katello
● Host Collections - allow for you to group hosts together
● Bulk actions - run install/upgrade/remove against a host
collection or a selected set of hosts
● Demo to come
21. TheForeman&Katello
● Register Your Products to Host Groups during provisioning
● Create Activation Keys for Subscription
○ Activation Keys provide a mechanism to define
properties that may be applied to Content Hosts during
registration like Products, Repos, etc…
CONGRATS!!! INFRASTRUCTURE = PWNED
22.
23.
24. TheForeman&Katello
● Other Awesomeness
○ Plugins: Docker, Chef, Salt, MCollective
○ Plugins URL - Plugins for things such as bootdisk,
chef, docker, etc
■ http://projects.theforeman.
org/projects/foreman/wiki/List_of_Plugins
○ Rest API
○ CLI -> HAMMER CLI
○ Reporting Plugins -> ABRT (bug), OpenScap (security)
○ Now Ansible Integration