Ansible @ Red Hat | December 2015 Ansible Meetup in Melbourne
1. What's next for Ansible @ Red Hat and where
it's being used currently
Ken Thompson
Senior Cloud Solution Architect
Melbourne Ansible Meetup - December 2015
ANSIBLE @ RED HAT
2. Ansible Meetup - Melbourne - December 20152
ANSIBLE @ RED HAT
How Does Ansible Fit Red Hat's Management Strategy
3. Ansible Meetup - Melbourne - December 20153
WHERE IS RED HAT USING ANSIBLE?
OpenShift-Ansible Installer
“Best fit as the base technology on
an installer for a complex platform
spanning multiple hosts”
● V2 Installer was complex: ruby
+ puppet + shell scripts
● Ansible simplifies this,
provides true multi-host
orchestration
● Same tooling for installation,
adding additional nodes &
platform upgrades
4. Ansible Meetup - Melbourne - December 20154
OPENSHIFT ANSIBLE INSTALLER
● Installs required packages
● Performs required hosts preparation steps
● Create required config files for OpenShift
services:
– /etc/openshift/master/master-
config.yaml
– /etc/openshift/master/policy.json
– /
etc/openshift/master/scheduler.json
– /etc/openshift/node/node-
config.yaml
– Cluster authentication config
(kubeconfig files)
– /etc/sysconfig/docker (configure
red hat and internal registry)
● Create and distributes required certificates
● Enable required services on each node
● Configure virtual networking
● Enable and assign labels to nodes
● When installer is finished , OpenShift
console will be available in:
https://<master host name>:8443/
https://github.com/openshift/openshift-ansible
5. Ansible Meetup - Melbourne - December 20155
OPENSHIFT ANSIBLE INSTALLER
● Improved Installer experience (HA)
– 3 main deployment options: All-in-one (PoCs), Minimal HA, Recommended HA
– https://trello.com/c/8TANbwTx/122-5-improved-installer-experience-ha
● Support for redeploying certificates
– Ability to fix common certificate errors, update certificates, update CA etc.
– https://trello.com/c/NsT6f1HL/38-8-atomic-openshift-installer-support-for-redepl
oying-certificates
● Improve outages for 3.x Upgrades
– Orchestrate rolling updates of platform to improve application availability
– https://trello.com/c/qtriZsUU/121-3-upgrade-reduce-outages-for-3-2-upgrade
Road Map
6. Ansible Meetup - Melbourne - December 20156
BEYOND THE INSTALLER
https://github.com/2015-Middleware-Keynote/demo-ansible
But wait...there's more! (sorry, no steak knives)...
Build an end to end OpenShift environment on AWS using Ansible!
● Requires:
– AWS Account, route53 public hosted zone
● Builds:
– AWS VPC
– AWS Networking
– AWS Instances
– OpenShift Pre-requisites (docker storage setup etc.)
– OpenShift Environment Build (OpenShift-Ansible Installer)
7. Ansible Meetup - Melbourne - December 20157
ANSIBLE TOWER 2.4
What's new
● OAuth authentication via
GitHub and Google
● Enterprise authentication
support for SAML 2.0 and
RADIUS
● Configurable Session Limits
and Timeouts
● Custom Branding
8. Ansible Meetup - Melbourne - December 20158
ANSIBLE 2.0
What's coming...early 2016
● Improved error messages
● Blocks
● Execution Strategy Plugins
● Execution-time evaluation of
include tasks
● Extended inheritance of
blocks/roles
● Improved variable
management
● Better use of OOP
● 100% Backwards compatible
10. Ansible Meetup - Melbourne - December 201510
ANSIBLE 2.0
Improved Error Messages
Playbook errors not related to syntax will (in most cases) still show the file
along with the line and column where the error occurred.
11. Ansible Meetup - Melbourne - December 201511
ANSIBLE 2.0
Blocks
● Provides a method for catching errors during task execution, as well
as an option to always execute some set of task regardless of whether
an exception occurred or not.
● Allows for easier grouping of related tasks.
13. Ansible Meetup - Melbourne - December 201513
ANSIBLE 2.0
Execution Strategy Plugins
● linear -traditional Ansible, which waits for all hosts to complete a task
before continuing
● free - allows each host to process tasks as fast as possible, without
waiting for other hosts
● And anything else people can conceive -just write a new plugin for it!
14. Ansible Meetup - Melbourne - December 201514
ANSIBLE 2.0
Execution-time Evaluation of Include Tasks
● Previously, include statements acted like pre-processor statements
and were evaluated/expanded before any tasks started running.
● Should allow the return use of include + with* actions.
15. Ansible Meetup - Melbourne - December 201515
ANSIBLE 2.0
Extended Inheritance of Blocks/Roles
● Values like 'become*' and others are now settable on blocks and roles,
which are then inherited by all tasks contained within
● Should allow the return use of include + with* actions.
16.
17. Ansible Meetup - Melbourne - December 201517
RED HAT MANAGEMENT PRINCIPLES
AND DIFFERENTIATORS
18. Ansible Meetup - Melbourne - December 201518
ANSIBLE IS FRICTIONLESS