Katello is a collection of plugins for Foreman which adds content management to the lifecycle. With Foreman you can easily manage the lifecycle of servers starting with provisioing, handing over to config management and continuous reporting. To improve the quality of your configuration management it is recommended to establish some kind of software management. This is what Katello brings to Foreman by adding local mirrors, snapshots and staging of repositories. This talk will introduce to Foreman and Katello and provide a demo of the lifecycle management.
5. Foreman Project
Open Source Project
Lifecyclemanagement for servers
provisioning
configuration
orchestration
monitoring
Web based GUI + API + CLI
Utilizes other tools via smart proxy
Project: https://theforeman.org
5 OSDC 2018
6. Katello
Defined set of Foreman plugins
Content management
YUM repositories (RPM + Errata)
Puppet modules
Docker container
OSTree branches
Deb repositories
Subscription Management
Red Hat Subscriptions
Track internal use
Docker Management
Additional Templates
Project: https://theforeman.org/plugins/katello/
6 OSDC 2018
7. Satellite 6
Downstream version of Katello
Supported by Red Hat
All components and usage
Additional Smart Proxy ready for Content-related
services
No additional plugins
No direct use of the components
7 OSDC 2018
9. Alternatives
Configuration Management
Good for installation of latest version
Good at installing a specific version
Most times ok for updating
Always bad on downgrading
Package Management
Version pinning is complicated
Repository priorities are more complicated
Exclusion of specific packages even more
9 OSDC 2018
10. Content Management
Local content
Ensures availability
Staging
Allows testing updates
Making builds reproducable
Filtering
Remove faulty versions
Restrict access to software
10 OSDC 2018
12. Product
Product
Logical collection of repositories
Content Hosts assign to products
Group by vendor, release cycle, ...
Track usage
Repository
Collection of content
GPG Key
Sync Plan
In the demo was shown how to add a GPG-Key, to use
Repo discovery to create a new repository and sync it
afterwards based on the repository on
packages.icinga.com. Furthermore it was explained for
the prepared CentOS repositories what is special about
the os repository containing the installer.
12 OSDC 2018
13. Content View
Content View
Logical collection of repositories
Filter applied to repositories
Publishing a specific version
Special incremental ones for fast forwarding a
security errata
Composite Content View
Combine multiple Content Views
Content Host consumes one
In the demo was explain the difference between a
Content View used for a single product and a Composite
Content View bringing products together to assign them
to one host. Furthermore it was shown how to publish a
new version.
13 OSDC 2018
14. Lifecycle
Lifecycle Environments
Hold Content View versions
Build a path for promoting versions
Library is a special one for upstream
Content Host consumes one
Showcase was Lifecycle Environments and how to
promote a Content View version from one stage to
another.
14 OSDC 2018
15. Integration in
Provisioning
Provides its own provisioning snippet
Registers with subscription-manager based on
Activation key
No additional external repositories
Shown as seperate sub-statuses
Subscription - Validity of entitlement
Errata - Update status
Traces - Required service restart / reboot
Based on the demo environment it was explained how
the Provisioning Template utilize Activation Keys which
can be set on Host groups to register Content Hosts.
The resulting Content Host view and Host status was
shown and the differences between Host view for
Provisioning and Configuration Management and Content
Hosts view for Content Management was explained.
15 OSDC 2018
16. Integration in
Orchestration
Katello agent (old)
Orchestration using XMPP
Remote Execution (new)
Foreman Plugin
Provider SSH or Ansible
Its own templates to replace katello agent
Easier integration of other operating systems
The demo explained how updating the system is
orchestrated now and how it will change in the future.
16 OSDC 2018
19. CentOS
Repositories
No errata included
Errata from mailling list:
http://cefs.steve-meier.de/
Import script for Katello:
https://github.com/nicolas-r/katello-centos-
errata-import
19 OSDC 2018