Managing Kubernetes
and OpenShift
with ManageIQ
Alissa Bonas @ Container Con Seattle 2015
Slide 2
Slide 2 text
● Containerizing an app
The stages of containers world
Alissa Bonas @ Container Con Seattle 2015
Slide 3
Slide 3 text
The stages of containers world
● Run a container
Alissa Bonas @ Container Con Seattle 2015
Slide 4
Slide 4 text
The stages of containers world
● Run multiple containers
Alissa Bonas @ Container Con Seattle 2015
Slide 5
Slide 5 text
● Orchestrate containers
● Run many containers on multiple hosts
● Manage a containers environment
The stages of containers world
Alissa Bonas @ Container Con Seattle 2015
Slide 6
Slide 6 text
Today we’ll focus on
Kubernetes OpenShift ManageIQ
Alissa Bonas @ Container Con Seattle 2015
Slide 7
Slide 7 text
Kubernetes
● Deployment, scaling and orchestration of
containers across clusters of hosts.
● http://kubernetes.io/
● 1.0 release - July 2015
Developed
in Go
Alissa Bonas @ Container Con Seattle 2015
Slide 8
Slide 8 text
Kubernetes main concepts
● Node - a machine that containers run on
● Namespace - partitioning resources created
by users into logical groups
● Pod - a group of containers
Alissa Bonas @ Container Con Seattle 2015
Slide 9
Slide 9 text
Kubernetes main concepts
● Replication controller -
ensures there are always
X replicas of pods
● Service - a base load balancer that provides
traffic to pods
Alissa Bonas @ Container Con Seattle 2015
Slide 10
Slide 10 text
OpenShift
● Platform as a service for building and
running applications - for developers
● http://www.openshift.org/
● 3.0 release - June 2015
Developed
in Go
Alissa Bonas @ Container Con Seattle 2015
Slide 11
Slide 11 text
OpenShift main concepts
● Built on top of Kubernetes
● Provides additional capabilities
○ application lifecycle
○ routing - extends service
○ projects - extension of namespaces
Build Deploy Run
Alissa Bonas @ Container Con Seattle 2015
Slide 12
Slide 12 text
● How many containers exist in my environment?
● Does a specific node have enough resources?
● How many distinct images are used?
● Which registries are used?
Insight and control
Alissa Bonas @ Container Con Seattle 2015
Slide 13
Slide 13 text
ManageIQ
● A cloud management platform
● http://manageiq.org/
● Botvinnik release - June 2015
a Ruby on
Rails
project
Alissa Bonas @ Container Con Seattle 2015
Slide 14
Slide 14 text
ManageIQ concepts
● “A manager of managers”
○ supports multiple virtualization providers
● Insight and control
○ inventory overview and events
○ smart state analysis
○ workflow/orchestration
Alissa Bonas @ Container Con Seattle 2015
Slide 15
Slide 15 text
New in upstream ManageIQ
● Providers for container management
● Support added for
○ Kubernetes
○ OpenShift
Alissa Bonas @ Container Con Seattle 2015
Slide 16
Slide 16 text
Working together
ManageIQ
Kubernetes / Openshift
Master
Node A
Node B
Alissa Bonas @ Container Con Seattle 2015
Slide 17
Slide 17 text
Container management providers
Alissa Bonas @ Container Con Seattle 2015
Slide 18
Slide 18 text
Creating a provider
● Kubernetes/OpenShift master host/port
● SSL
● Token based
Alissa Bonas @ Container Con Seattle 2015
Slide 19
Slide 19 text
Inventory
● Entities
● Relationships
● Additional information
Alissa Bonas @ Container Con Seattle 2015
Slide 20
Slide 20 text
Creating more insights
● Modelling additional entities
as first class citizens
● Deducing relationships
Alissa Bonas @ Container Con Seattle 2015
OpenShift provider relationships
Alissa Bonas @ Container Con Seattle 2015
Slide 25
Slide 25 text
Projects
Alissa Bonas @ Container Con Seattle 2015
Slide 26
Slide 26 text
Nodes
● OS and Software versions
● How many entities are on a node
● Capacity and utilization
● Which infrastructure is it running on
Alissa Bonas @ Container Con Seattle 2015
Slide 27
Slide 27 text
Node Summary page
Alissa Bonas @ Container Con Seattle 2015
Slide 28
Slide 28 text
What do we know about nodes?
Capacity
Docker and
Kubernetes info
Alissa Bonas @ Container Con Seattle 2015
Slide 29
Slide 29 text
Nodes
● Quick overview on main nodes properties
Alissa Bonas @ Container Con Seattle 2015
Slide 30
Slide 30 text
Cross providers insight
● Connect all layers of infrastructure, cloud
and containers
● Currently support cross linking with
○ OpenStack
○ oVirt / RHEV
Alissa Bonas @ Container Con Seattle 2015
Cross provider example - Node
Alissa Bonas @ Container Con Seattle 2015
Slide 34
Slide 34 text
Cross provider VM example
Alissa Bonas @ Container Con Seattle 2015
Slide 35
Slide 35 text
Nodes capacity and utilization
Slide 36
Slide 36 text
No content
Slide 37
Slide 37 text
No content
Slide 38
Slide 38 text
Resource quotas and limit ranges
● Limit the number of pods, containers, etc.
○ tracked per a project/namespace scope
● Limit CPU and memory
○ tracked per pod, container
Alissa Bonas @ Container Con Seattle 2015
Registries
Alissa Bonas @ Container Con Seattle 2015
Slide 41
Slide 41 text
Image from a known registry
Alissa Bonas @ Container Con Seattle 2015
Slide 42
Slide 42 text
Image from an unknown source
Alissa Bonas @ Container Con Seattle 2015
Slide 43
Slide 43 text
Pods
● Which containers are part of it
● Which services work with it
● Which node does it run on
● Is it controlled by a replicator?
Alissa Bonas @ Container Con Seattle 2015
Slide 44
Slide 44 text
Pods
Alissa Bonas @ Container Con Seattle 2015
Slide 45
Slide 45 text
Pod
Alissa Bonas @ Container Con Seattle 2015
Slide 46
Slide 46 text
Replicators
Searches for
pods with this label
Alissa Bonas @ Container Con Seattle 2015
Slide 47
Slide 47 text
Services
● A portal IP and source/target port pairs
● Redirects traffic to relevant pods based on a
labels selector
Alissa Bonas @ Container Con Seattle 2015
Slide 48
Slide 48 text
Service example
Alissa Bonas @ Container Con Seattle 2015
Slide 49
Slide 49 text
OpenShift Routes
● Exposes a service by giving it an externally
reachable hostname
● Can be fine tuned by /path
● Can be also secured
Alissa Bonas @ Container Con Seattle 2015
Slide 50
Slide 50 text
Events / Timeline
● Node
○ ready / not ready / rebooted
● Pod
○ scheduled
● More to come...
Alissa Bonas @ Container Con Seattle 2015
● “A picture is worth a thousand words”
● Includes cross provider relationships
● Statuses
Topology
Alissa Bonas @ Container Con Seattle 2015
Slide 57
Slide 57 text
Topology demo
Slide 58
Slide 58 text
Topology demo
Slide 59
Slide 59 text
Open source
● Rapidly changing projects before their
release
● Hard to track
● A chance to influence early
Alissa Bonas @ Container Con Seattle 2015
Slide 60
Slide 60 text
ManageIQ community
● http://talk.manageiq.org
● https://github.com/ManageIQ/manageiq
○ Follow label #providers/containers
● #manageiq IRC on freenode
Alissa Bonas @ Container Con Seattle 2015
Slide 61
Slide 61 text
Icons Credits
● The Go gopher - Renee French
● Diamond by MarkieAnn Packer from the Noun Project
● Rails by Luis Martins from the Noun Project
● Light Bulb by artworkbean from the Noun Project
● Sherlock by James Keuning