FullStackAutomationwith
KatelloandForeman
Justin Miller & Weston Bassler
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
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!!!!
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
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.
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.
AUTOMATIONOFALLTHINGS
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.
TheForeman
● Provisioning Cont… (Defaults)
○ AWS, Ovirt, VMware, OpenStack, Rackspace, Google
Compute and more
○ Supported Operating systems
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/
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
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
TheForeman
● Inventory Management and Monitoring
○ Trends and Charts
○ Reports from Puppet
● User Management
○ LDAP Auth
○ Users and User Groups
○ Roles
TheForeman
● Bigger Picture of the Foreman Architecture
TheForeman
● Host Discovery
https://www.youtube.com/watch?
v=MQaK9k5Uh-I
Katello
What is Katello?
“Katello brings the full power of content management
alongside the provisioning and configuration capabilities of
Foreman.”
-From katello.org
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
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
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
Katello
● Bulk Actions
https://www.youtube.com/watch?
v=5ja1xCL7QPY
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
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
DockerDemo
● Docker Plugin
https://www.youtube.com/watch?
v=hfDI-OsP2Ao
WaystoGetStarted
● http://theforeman.org/ (much documentation)
● http://www.katello.org/ (need much documentaion)
Weston Bassler
wbassler@linux.com
https://www.linkedin.com/in/westonbassler
@w_bassler
Justin Miller
https://www.linkedin.com/pub/justin-miller/18/a32/346
justin.j.miller@linux.com
@mageru
http://tinyurl.com/ohiokatello
thanks!!!Questions???

Full Stack Automation with Katello & The Foreman

  • 1.
  • 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 ofthe 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 theForeman? “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, SystemConfiguration 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, SystemConfiguration 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.
  • 7.
  • 8.
    TheForeman ● Provisioning ○ private/publiccloud, 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 ofDeployment ○ 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 ○ SmartProxy 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 ConfigurationManagement ○ 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 Managementand Monitoring ○ Trends and Charts ○ Reports from Puppet ● User Management ○ LDAP Auth ○ Users and User Groups ○ Roles
  • 14.
    TheForeman ● Bigger Pictureof the Foreman Architecture
  • 15.
  • 16.
    Katello What is Katello? “Katellobrings the full power of content management alongside the provisioning and configuration capabilities of Foreman.” -From katello.org
  • 17.
    Katello ● What DoesKatello 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
  • 20.
  • 21.
    TheForeman&Katello ● Register YourProducts 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
  • 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
  • 25.
  • 26.
    WaystoGetStarted ● http://theforeman.org/ (muchdocumentation) ● http://www.katello.org/ (need much documentaion)
  • 27.