Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

(Open)Stacking Containers


Published on

Presentation give at the Melbourne Docker Meetup on container related projects within OpenStack. Specifically looking at Project Magnum and Project Kolla and how they are leveraging technologies like Docker, Kubernetes and Atomic.

Published in: Software
  • Be the first to comment

(Open)Stacking Containers

  1. 1. Magnum & Kolla Ken Thompson Senior Cloud Solution Architect June 2015 (Open)Stacking Containers
  2. 2. (Open)Stacking Containers2 OPENSTACK 101 An open and scalable platform for building public and private clouds NOVA NEUTRON GLANCECINDERSWIFT ● Modular architecture ● Designed to easily scale out ● API driven ● Based on a (growing) set of core services: ● Nova – Compute ● Neutron – Networking ● Swift – Object Storage ● Cinder – Block Storage ● Glance – Image Store ● ...many more!
  3. 3. (Open)Stacking Containers3 PROJECT MAGNUM Containers as an OpenStack Service NOVA NEUTRON GLANCECINDERSWIFT “An OpenStack API service to work with Nova, Heat, and Keystone to allow multiple container technologies to be used to offer containers on a variety of Nova instance types (baremetal, vm, container).”MAGNUM LIBS APP
  4. 4. (Open)Stacking Containers4 MAGNUM OVERVIEW Agnostic of container format and orchestration engine Source: ● ● Making-Containers-a-First-Class-Resource-in-OpenStack.pdf
  5. 5. (Open)Stacking Containers5 PUTTING IT ALL TOGETHOR Leveraging best of breed container technologies CONTAINER FORMAT WITH DOCKER ● Interface for communications, configuration, data persistence, provisioning ● Lightweight ● Packaged dependencies ● Content & Infrastructure agnostic ORCHESTRATION WITH KUBERNETES ● Orchestrate containers at scale ● Define application topologies ● Handle container networking ● Manage container state ● Schedule across hosts CONTAINER HOSTING WITH ATOMIC ● Lightweight ● Atomic updates and rollbacks ● Security & Isolation (cgroups, namespaces, selinux, svirt, selinux, iptables etc) ● Provides portability across systems
  6. 6. (Open)Stacking Containers6 PROJECT KOLLA OpenStack Services as Containers NOVA NEUTRON GLANCECINDERSWIFT “The Kolla Project is part of the OpenStack TripleO effort, focussed on deploying OpenStack services using Docker containers” ● Docker ● Docker Compose (previously using Kubernetes) ● Atomic
  7. 7. (Open)Stacking Containers7 Discrete services, when combined providing private cloud capabilities OPENSTACK IN THEORY
  8. 8. (Open)Stacking Containers8 Not so discrete services... with complex interdependencies, which complicates the deployment and lifecycle of OpenStack environments OPENSTACK IN REALITY
  9. 9. (Open)Stacking Containers9 HOW CONTAINERS HELP Packaging OpenStack services with their runtime dependencies reduces deployment and lifecycle complexities ● Easy to deploy and portable across host systems ● Atomic roll-backs ● Faster boot times ● Isolates applications on a host operating system ● In RHEL, this is done through: ● Control Groups (cgroups) ● Kernel namespaces ● SELinux, sVirt, iptables ● Docker HOST OS SERVER CONTAINER LIBS APP
  10. 10. (Open)Stacking Containers10 COMMUNITIES & FURTHER INFO Go forth, experiment & contribute!
  13. 13. (Open)Stacking Containers13 TRADITIONAL OS VS. CONTAINERS Traditional OS Containers HARDWARE HOST OS HARDWARE HOST OS CONTAINER LIBS NOVA LIBS A LIBS B LIBS LIBS NOVA CONTAINER LIBS CINDER Packaged dependencies = faster boot times + greater portability CINDER
  14. 14. (Open)Stacking Containers14 Linux kernel (cgroups, namespaces, SELinux, devicemapper filesystem) docker atomic Red Hat Enterprise Linux Atomic Host atomic Systemd / journald kubernetes docker atomic Red Hat Enterprise Linux Atomic Host atomic Systemd / journald Linux kernel (cgroups, namespaces, SELinux, devicemapper filesystem) Running linux containers requires an entire stack rooted in the Operating System RHEL ATOMIC HOST
  15. 15. (Open)Stacking Containers15 Kubernetes Declarative container orchestration