kubernetes integration with odl

15
Integration of Kubernetes and OpenDaylight Prem Sankar Gopannan, Ericsson Faseela K, Ericsson

Upload: prem-sankar-gopannan

Post on 15-Apr-2017

337 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Kubernetes integration with ODL

Integration of Kubernetes and OpenDaylight

Prem Sankar Gopannan, EricssonFaseela K, Ericsson

Page 2: Kubernetes integration with ODL

• Microservice• Use case – NFV• Kubernetes• Proposed Architecture• Demo• Q&A

Agenda

Page 3: Kubernetes integration with ODL

Microservice Architecture

• Pattern that helps break down monolithic software into smaller independent modules

• Enables exploiting the real power of elasticity

• Enables scaling and high availability of these modules at a granular level

• Application containers help you enable Microservices and host these modules

Page 4: Kubernetes integration with ODL

• Containers• Virtualization methodology• OS Kernel allows for multiple isolated user space• Isolation by concepts like Cgroups and namespaces

• Cgroups provides ability to• limit, account and isolate resource usage of process groups. Resource

includes CPU, memory, disk I/O• prioritize resources• Control that includes freeze, checkpoint and restarts

• Namespace partitions key kernel structure to create environment that include process, network, IPC, mount points, hostname and user

Microservice enabler - Containers

Page 5: Kubernetes integration with ODL

Microservice and NFV

- NFVi platform provides the infrastructure for VNF

- NFVi needs to host VNF from different vendors

- VNF would come in different flavours

- It is key that NFVi supports containers and manages the container ecosystem

Page 6: Kubernetes integration with ODL

• Popular ones in the market• Kubernetes - Google• Mesos - Mesosphere• Nomad - Hasicorp• Docker Swarm - Docker• Cloud Foundry - Pivotal• Openshift – Redhat

Container management landscape

Page 7: Kubernetes integration with ODL

Kubernetes and Microservice

Current trendMonolithic > Microservice > Docker > How to manage > Kubernetes

Source: Openstack User survey report, Apr 2016

Page 8: Kubernetes integration with ODL

• Kubernetes (K8S) is a container cluster management tool

• K8S helps you realize the microservice architecture

• Openstack:VM::Kubernetes:Containers

Kubernetes

Page 9: Kubernetes integration with ODL

• Components of Kubernetes• Master -> Server with the K8S API service• Pod -> Defines a collection of containers tied together that are deployed

in the same minion, for example a database and a web server container.• Replication controller -> Defines how many pods or containers need to be

running. The containers are scheduled across multiple minions.• Service -> A definition that allows discovery of services/ports published by

containers, and external proxy communications. A service maps the ports of the containers running on pods across multiple minions to externally accesible ports.

• Kubecfg -> The command line client that connects to the master to administer Kubernetes.

Kubernetes

Page 10: Kubernetes integration with ODL

Neutron Plugin or Gluon/Proton

Linux Linux Linux Linux

Kubernetes

Datacenter Hardware

Linux

OpenStack

OVS

App

Orchestration Systems

OpenStack APIs

OpenDayLight

Kubernetes APIs

CNI Plugin

KVM KVM Container RT

Container RT

App App App

VM Application Container Application

Proposed Architecture

Page 11: Kubernetes integration with ODL

• Magnum – API to manage multitenant Containers• Supports Swarm, Kuberenetes and Mesos

• Kolla – Openstack control services as containers• Murano – Application catalog of containerized applications• Kuryr – Bridges neuton networking model to containers

Containers and Openstack

Page 12: Kubernetes integration with ODL

DEMO Information

Page 13: Kubernetes integration with ODL

vhost

VM

Open vSwitch

Container

OpenDaylight

Kubernetes Master

Kubelet

CNI Plugin

Server 1 Server 2

Kubelet

CNI PluginContainer VM

veth

Container Container

veth

phy phy

Open vSwitch vhost

OpenStack

Demo Setup

Page 14: Kubernetes integration with ODL

Open vSwitch

Host OS

Open vSwitch

VM

Container App

Container App

Container App

VLAN’s

Openstack Magnum

OpenDaylight

Kubernetes / Docker

Kuryr

Neutron / Gluon

Container App

Container App

Container App

Container Mgt

(docker, kube-pxy)

Iptables / NAT/FW

Integrated Native

Moving forward

Page 15: Kubernetes integration with ODL

New beginning …