27
Full Stack Automation with Katello and Foreman Justin Miller & Weston Bassler

Full Stack Automation with Katello & The Foreman

Embed Size (px)

Citation preview

Page 1: Full Stack Automation with Katello & The Foreman

Full Stack Automation with Katello and Foreman

Justin Miller & Weston Bassler

Page 2: Full Stack Automation with Katello & The Foreman

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

Page 3: Full Stack Automation with Katello & The Foreman

What we are here to talk about● 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!!!!

Page 4: Full Stack Automation with Katello & The Foreman

The ForemanWhat 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

Page 5: Full Stack Automation with Katello & The Foreman

The Foreman● 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.

Page 6: Full Stack Automation with Katello & The Foreman

The Foreman● 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.

Page 7: Full Stack Automation with Katello & The Foreman

AUTOMATION OF ALL THINGS

Page 8: Full Stack Automation with Katello & The Foreman

The Foreman● 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.

Page 9: Full Stack Automation with Katello & The Foreman

The Foreman● Provisioning Cont… (Defaults)

○ AWS, Ovirt, VMware, OpenStack, Rackspace, Google Compute and more

○ Supported Operating systems

Page 10: Full Stack Automation with Katello & The Foreman

The Foreman● 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/

Page 11: Full Stack Automation with Katello & The Foreman

The Foreman● 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

Page 12: Full Stack Automation with Katello & The Foreman

The Foreman● 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

Page 13: Full Stack Automation with Katello & The Foreman

The Foreman● Inventory Management and Monitoring

○ Trends and Charts○ Reports from Puppet

● User Management○ LDAP Auth○ Users and User Groups○ Roles

Page 14: Full Stack Automation with Katello & The Foreman

The Foreman● Bigger Picture of the Foreman Architecture

Page 16: Full Stack Automation with Katello & The Foreman

KatelloWhat is Katello?

“Katello brings the full power of content management alongside the provisioning and configuration capabilities of Foreman.”

-From katello.org

Page 17: Full Stack Automation with Katello & The Foreman

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

Page 18: Full Stack Automation with Katello & The Foreman

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

Page 19: Full Stack Automation with Katello & The Foreman

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

Page 21: Full Stack Automation with Katello & The Foreman

The Foreman & 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

Page 22: Full Stack Automation with Katello & The Foreman
Page 23: Full Stack Automation with Katello & The Foreman
Page 24: Full Stack Automation with Katello & The Foreman

The Foreman & 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

Page 25: Full Stack Automation with Katello & The Foreman

Docker Demo● Docker Plugin

https://www.youtube.com/watch?v=hfDI-OsP2Ao

Page 26: Full Stack Automation with Katello & The Foreman

Ways to Get Started● http://theforeman.org/ (much documentation)● http://www.katello.org/ (need much documentaion)

Page 27: Full Stack Automation with Katello & The Foreman

Weston [email protected]://www.linkedin.com/in/westonbassler@w_basslerJustin Millerhttps://www.linkedin.com/pub/justin-miller/18/a32/[email protected]@mageru

http://tinyurl.com/ohiokatello

thanks!!! Questions???