26
Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC)

Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Zun Project Update

Hongbin Lu (Huawei)Madhuri Kumari (Intel)

Shu Muto (NEC)

Page 2: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Agenda● Containers on OpenStack● Zun Basics● Zun Internals● Others● Demo

Page 3: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Containers on OpenStack

OpenStack

ContainerNova Instance (container)

Hypervisor (Container Runtime)

Compute Network Storage

Nova Instance (container)

Nova

Page 4: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Containers on OpenStack

OpenStack

Nova Instance (VM)

Container

Hypervisor

Compute Network Storage

Nova Instance (VM)

Container Container Container

Nova

Page 5: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Containers on OpenStack

OpenStack

Nova Instance (VM)

Container

Hypervisor

Compute Network Storage

VMNova Instance (VM)

Container Container Container

Container Orchestration Engine (COE)

Nova

Page 6: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Containers on OpenStack

COE/Container Engine (Kubernetes, Docker, etc.)

Deployment (Magnum)

Authentication (Keystone)

Zun

Images (Glance?)

Fuxi

Storage (Cinder)

Network (Neutron)

Kuryr

Monitoring (Telemetry?)

OpenStack APINative API

Page 7: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Agenda● Containers on OpenStack● Zun Basics● Zun Internals● Others● Demo

Page 8: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

What is Zun?● Container API● Resource management● OpenStack Integration

○ Keystone○ Neutron/Kuryr-libnetwork○ Glance○ Horizon○ Heat○ OpenStackClient○ Nova ?○ Placement API ?○ Telemetry ?○ Swift ?

COE/Container Engine (Kubernetes, Docker, etc.)

Magnum

Keystone

Zun

Images (Glance?)

Fuxi

Cinder Neutron

Kuryr

Monitoring (Telemetry?)

OpenStack API

Native API

Page 9: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

What is Zun?

Nova Instance

Nova Instance

DB

Web Server N

eutron Net Nova Instance

Zun Container

DB

Web Server N

eutron Net

Page 10: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Zun APIsCreate a container POST /containers

List containers GET /containers

Show a container GET /containers/<ID>

Delete a container DELETE /containers/<ID>

Retrieve logs of a container GET /containers/<ID>/logs

Execute a command in a container POST /containers/<ID>/execute

Attach to a container POST /containers/<ID>/attach

... ...

Page 11: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Run a Container● Find an image from an image store (i.e. DockerHub, Glance)

$ docker search cirros

● Run a container with a command

$ zun run cirros ping -c 4 google.com

Page 12: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Enter into a Container● Attach to a running container

$ zun attach mycontainer

● Open a new shell in a running container

$ zun exec --interactive mycontainer /bin/sh

Page 13: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Real Application$ zun run -e MYSQL_ROOT_PASSWORD=rootpass \

-e MYSQL_DATABASE=wordpress \

mysql:latest

$ zun run -e WORDPRESS_DB_HOST=$mysql_ip \

-e WORDPRESS_DB_USER=root \

-e WORDPRESS_DB_PASSWORD=rootpass \

wordpress:latest

Wordpress Neutron N

et

Mysql

Page 14: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Orchestration with Heatresources:

db:

type: OS::Zun::Container

properties:

image: mysql

environment:

MYSQL_ROOT_PASSWORD: rootpass

MYSQL_DATABASE: wordpress

wordpress:

type: OS::Zun::Container

properties:

image: "wordpress:latest"

environment:

WORDPRESS_DB_HOST: {get_attr: [db, addresses, private, 0, addr]}

WORDPRESS_DB_USER: root

WORDPRESS_DB_PASSWORD: rootpass

Wordpress Neutron N

et

Mysql

Page 15: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Agenda● Containers on OpenStack● Zun Basics● Zun Internals● Others● Demo

Page 16: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Architecture

Zun API Zun Compute Docker

Keystone

KuryrNeutron

Glance

Page 17: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Cloud Controller Node

Deployment

Zun API

AMQP

Keystone

SQLdb

Neutron Server

Compute Node

Zun Compute

Neutron Agent

Kuryr-libnetwork

Docker

Compute Node

Zun Compute

Neutron Agent

Kuryr-libnetwork

Docker

Compute Node

Zun Compute

Neutron Agent

Kuryr-libnetwork

Docker

Compute Node

Zun Compute

Neutron Agent

Kuryr

Docker

Cloud Controller Node

Zun API

AMQP

Keystone

SQLdb

Neutron Server

Page 18: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics
Page 19: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Agenda● Containers on OpenStack● Zun Basics● Zun Internals● Others● Demo

Page 20: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Features● Container APIs● Container host management● Multi-tenancy● Neutron integration● Support multiple image repositories

○ Docker Hub○ Glance

● Heat Integration● Horizon Integration● OpenStackClient Integration

Page 21: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Roadmap● Run containers on baremetal, VM, or COEs● Additional container runtimes● Stateful container● Containers group● Scheduling (integrate with Placement APIs)● Keep container alive● Monitoring● Container snapshot● Quota

Page 22: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Non-goal● Container orchestration

○ Zun doesn’t provide container orchestration by itself○ Use Heat with Zun resources for that

● COEs provisioning○ Consider Kargo or Magnum

● System container○ Consider Nova-lxd

● Build container from source code○ Consider Solum

Page 23: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Comparison● Zun VS nova-docker

○ Nova-docker: allow accessing docker containers via Nova’s API○ Zun: full-featured container API

● Zun VS Kubernetes○ Kubernetes: advanced container orchestration tool○ Zun: simple container management tool○ Kubernetes is an integrating target for Zun

Page 24: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Community

Page 25: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Agenda● Containers on OpenStack● Zun Basics● Zun Internals● Roadmap● Demo

Page 26: Zun Project Update - object-storage-ca-ymq-1.vexxhost.net€¦ · Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics

Demohttps://youtu.be/s758L_dIsLU