docker meetup bangalore - docker + openstack

13
Docker Meetup Ashish Billore 30 th May 2015, Bangalore Docker + Openstack 1 All views expressed in this presentation are my own and should not be concluded as my employer’s .

Upload: ashish-billore

Post on 08-Aug-2015

213 views

Category:

Software


6 download

TRANSCRIPT

Page 1: Docker Meetup Bangalore - Docker + Openstack

Docker Meetup

Ashish Billore 30th May 2015, Bangalore

Docker + Openstack

1

All views expressed in this presentation are my own and should not be concluded as my employer’s.

Page 2: Docker Meetup Bangalore - Docker + Openstack

WhoAmI?

Job →Compute Architect

At → IBM Cloud Group, Bangalore

Doing → Design, Development of cloud offerings based on Openstack, Docker

Recent→ Openstack High Availability (HA), BlueMix, Docker container Infrastructure, Nova-Docker Contributions

Linkedin → http://in.linkedin.com/in/abillore

[ashishb@myserver1 ~]$ echo $(whoami)ashishb[ashishb@myserver1 ~]$

IRC Handle

2

Page 3: Docker Meetup Bangalore - Docker + Openstack

Agenda

Why Docker with Openstack

Openstack and Dockers Intersection Points

Points of integration:

Project Kolla

Project Magnum

HEAT-plugin for Docker

Nova-Docker Driver

Nova-Docker: What works and what not?

3

Page 4: Docker Meetup Bangalore - Docker + Openstack

Why Docker with Openstack? Top 5 open source cloud projects:

And the Award goes to...

http://analystpov.com/cloud-computing/top-15-open-source-cloud-computing-technologies-2014-24727 4

Page 5: Docker Meetup Bangalore - Docker + Openstack

Why Care about Docker with Openstack? Both among the most popular opensource cloud technologies

They complement in many ways:

One offers IaaS, Private, Public, Hybrid Cloud Infrastructure (not limited to these alone)

Other optimizes DevOps, Dev-Test, CI, building, packaging of entities in a portable way for above infrastructure (not limited to these alone)

To leverage full potential of cloud infrastructure, you likely will see them working in synergy:

Docker running on existing IaaS (openstack based), retaining external openstack APIs for client / PaaS consumption

Requirement to run openstack service and APIs on Dockerized environment for CI/DevOps efficiencies, ease of IaaS control plane management etc

API integration enabling e2e flow5

Page 6: Docker Meetup Bangalore - Docker + Openstack

Docker with Openstack – Intersecting Projects

Magnum

Kolla

Nova Docker

HEAT Plugin

6

Page 7: Docker Meetup Bangalore - Docker + Openstack

Kolla – Openstack Services as Containers

Container sets group related OpenStack services

• Database control• Messaging control• High availability control• OpenStack interface• OpenStack control• OpenStack compute operation• OpenStack network operation

• OpenStack storage operation

OpenStack Services are packaged and deployed as Containers (compute, storage, network, and others)to simplify DevOps

Openstack services Containerized as independently manageable atomic microservices

7

Page 8: Docker Meetup Bangalore - Docker + Openstack

MagnumOpenStack service making container orchestration engines such as Docker and Kubernetes available as first class resources in OpenStack

Uses Heat to orchestrate an OS image which contains Docker and Kubernetes and runs that image in either virtual machines or bare metal in a cluster configuration.

• Provides a Platform-as-a-Service (or Containers as-a-Service) solution for OpenStack.

• Pluggable container orchestration engine (Kubernetes or Docker Swarm as of now) with openstack

• Uses same keystone credentials to provision other cloud resources, such as Compute, Storage, Network

• Different users and project groups are properly isolated from each other so that they have no visibility into, or access to, other containers in the system 8

Page 9: Docker Meetup Bangalore - Docker + Openstack

HEAT plugin for Docker

• Using the Heat plugin, users may deploy and manage Docker Containers on top of traditional OpenStack deployments, making it compatible with existing OpenStack clouds.

• Allows use of whole Docker API from a Heat template, makes linking of containers easier.

• No constrains to comply with nova/openstack APIs as plugin handles the interaction with Docker APIs and can leverage the full power of the Docker Remote API, including Docker specific operations and features.9

Page 10: Docker Meetup Bangalore - Docker + Openstack

Nova-Docker Driver

• Docker is yet another hypervisor driver for OpenStack Nova Compute.

• Introduced in Havana release, but lives out-of-tree (stackforge) for Icehouse, Juno, and Kilo.

• The Nova driver embeds a tiny HTTP client which talks with the Docker internal REST API through a Unix socket.

• Uses the HTTP API to control containers and fetch information about them.

• Driver fetches images from Openstack Image Service (Glance) and load them into Docker file system. Images may be placed in Glance by exporting them from Docker using the docker save command.

• Well integrated with Horizon UI, rest of the Nova APIs and CLI, however constrained by openstack APIs. 10

Page 11: Docker Meetup Bangalore - Docker + Openstack

Nova-Docker: What's Available..Anyways?

• Container life-cycle management

• Same as Nova Instances: Start, Stop, Terminate, Pause/unPause

• Glance support

• Image Import / Catalogue

• HEAT stack Deployment

• Deploying container resource (No Auto-scale)

• Neutron networking for containers

All through Openstack APIs and CLIs.

More Info: https://wiki.openstack.org/wiki/HypervisorSupportMatrix11

Page 12: Docker Meetup Bangalore - Docker + Openstack

Nova-Docker: What is (was) missing?

Delivered in Kilo:

1. Security Group support through ovs

https://blueprints.launchpad.net/nova-docker/+spec/container-security-group-support

2. Chef Recipes for Deployment

https://blueprints.launchpad.net/openstack-chef/+spec/docker-driver-configuration

Under Progress:

3. Resource Utilization for Containers

4. Docker Specific features

- Env Variables

- Passing arbitrary commands and args

5. DockerRef File Support

12

Page 13: Docker Meetup Bangalore - Docker + Openstack

Thank You..!

13

Links:

1. Openstack Magnum: https://wiki.openstack.org/wiki/Magnum

2. Openstack Kolla: https://wiki.openstack.org/wiki/Kolla

3. Nova-Docker: https://wiki.openstack.org/wiki/Docker

4. HEAT Plugin: https://blog.docker.com/tag/heat/