OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone...

21
OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) [email protected] Michal Jura Linux Cloud/HA Developer [email protected]

Transcript of OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone...

Page 1: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

OpenStack and MagnumKubernetes as a Service for everyone

Flavio Castelli

Engineering Manager (Containers)

[email protected]

Michal Jura

Linux Cloud/HA Developer

[email protected]

Page 2: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

2

New challenges

● New age of internet and mobile applications.

● Application super portability.

● Higher complexity of cloud environments.

● Different cloud providers.

● Adoption of micro services architectures.

● Stay agile in spirit of DevOps.

Page 3: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

3

Manage applications,not machines

Page 4: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

4

Kubernetes advantages

● Workload portability: doesn't enforce its directives to the application.

● Friendly with legacy applications: smooth migration path.

● Avoid vendor lock-in.

● Self healing.

● Auto-scaling.

● Has a solution for many problems:● Persistent storage.● Secrets management.● Blue-Green deployments.

● Flexible: plug-in architecture

Page 5: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

5

Architecture

Scheduler

API server

Controller mgr

MasterMaster

etcdetcd

podpod

container

container

docker

kubelet kubeproxy

WorkerWorker

Page 6: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

6

Architecture

Load balancer

http://guestbook.com

worker-B

gbook-01

8081

blog-01

8080

worker-A

gbook-01

80818080

worker-C

8081

blog-01

8080

Page 7: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

7

Kubernetes deployment

● Requires an etcd cluster.

● Requires one or more master nodes.

● Requires one or more worker nodes.

● Requires a SDN network joining all the worker nodes.

● Requires a load balancer to expose internal applications.

● Lots of patience to link all these components together.

Page 8: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

8

Kubernetes’ status

● It’s a pleasure to use as developer deploying your application.

● It’s a pleasure to administer as an operator.

● It’s a pain to deploy.

Page 9: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

9

Things are changing

● kubeadm: upstream tool for kubernetes deployment.

• Kubernetes deployed with containers, by kubernetes itself.

• Introduced with the 1.4 release, still alpha.

Page 10: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

10

How to combine OpenStack and Kubernetes worlds?

Page 11: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

11

Solution for everyoneOpenStack and Kubernetes

Page 12: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

12

Introduction to OpenStack Magnum

● A new service on OpenStack starting from Liberty release

● Provides CaaS (Containers as a Service)

● Supports different Linux images

● Integrates:

● Kubernetes● Docker● Flannel (overlay network)● Heat, Keystone, Glance, Cinder, Neutron, Barbican etc.

Page 13: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

13

OpenStack Magnum API

Magnum provides project isolation for container orchestration engines

● Management tool for containers within OpenStack✔ Orchestrate cloud resources and instances with Heat✔ Clone environments with similar network with Neutron ✔ Implement separate clusters in many projects through Keystone

● Use different Container Orchestration Engines (COE)✗ Kubernetes✗ Swarm✗ Mesos

● Access to native API's with dedicated clients.

Page 14: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

14

OpenStack Magnum architecture

Page 15: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

15

Magnum Kubernetes Cluster

Page 16: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

16

Magnum awesomeness

● Each OpenStack user can have its own Kubernetes cluster.

● Kubernetes deployment will take a few minutes.

● Whole configuration will be done automatically.

● We can auto-scale Kubernetes cluster on request.

● Start containerized apps on ready environment.

● Expose service to the Internet using LoadBalancer.

Page 17: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

17

Why pick up Magnum with Kubernetes

● Based on Google experience running containers in production

● Have this same deployment process for each application

● Take care about cloud application, fits especially for web and mobile apps

● Big cluster data readiness, fits perfectly with hundreds or thousands of hosts

● Choose between virtual machines and bare-metal servers

Page 18: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

18

Magnum future

● Full support for bare metal deployments

● Support different CPU architectures ARM, s390

● Auto-scaling

● Auto-restarts

● Support other containers engines

● Rolling updates for Kubernetes engine

● Node groups feature

Page 19: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

19

Magnum potentials

● Become a Magnum Opus

● Provide cloud ready apps and services

● Manage projects aware Container Topologies

● Use OpenStack as a first class citizen for container technology

● Help developers with their work

Page 20: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

20

It is time for real demo example!!!

Page 21: OpenStack and Magnum - SUSE Linux · OpenStack and Magnum Kubernetes as a Service for everyone Flavio Castelli Engineering Manager (Containers) fcastelli@suse.com Michal Jura Linux

Questions ?

Flavio Castelli

Engineering Manager (Containers)

[email protected]

Michal Jura

Linux Cloud/HA Developer

[email protected]