zun project update
play

Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu - PowerPoint PPT Presentation

Zun Project Update Hongbin Lu (Huawei) Madhuri Kumari (Intel) Shu Muto (NEC) Agenda Containers on OpenStack Zun Basics Zun Internals Others Demo Containers on OpenStack Nova Instance (container) Nova Instance


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

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

  3. Containers on OpenStack Nova Instance (container) Nova Instance (container) Container Hypervisor (Container Runtime) Nova OpenStack Compute Network Storage

  4. Containers on OpenStack Container Container Container Container Nova Instance (VM) Nova Instance (VM) Hypervisor Nova OpenStack Compute Network Storage

  5. Containers on OpenStack Container Container Container Container Container Orchestration Engine (COE) Nova Instance (VM) VM Nova Instance (VM) Hypervisor Nova OpenStack Compute Network Storage

  6. Containers on OpenStack OpenStack API Native API Zun Deployment (Magnum) COE/Container Engine (Kubernetes, Monitoring Docker, etc.) (Telemetry?) Authentication (Keystone) Fuxi Kuryr Images (Glance?) Storage Network (Cinder) (Neutron)

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

  8. What is Zun? Container API ● OpenStack API Resource management Native API ● Zun OpenStack Integration ● Keystone ○ Magnum Neutron/Kuryr-libnetwork ○ COE/Container Engine Glance Monitoring ○ (Kubernetes, Docker, etc.) (Telemetry?) Horizon ○ Keystone Heat ○ OpenStackClient ○ Nova ? ○ Fuxi Kuryr Placement API ? Images ○ (Glance?) Telemetry ? ○ Cinder Neutron Swift ? ○

  9. What is Zun? Nova Instance Zun Container Web Web Server Server Neutron Net Neutron Net Nova Instance Nova Instance DB DB

  10. Zun APIs Create 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 ... ...

  11. 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

  12. 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

  13. Real Application $ zun run -e MYSQL_ROOT_PASSWORD=rootpass \ -e MYSQL_DATABASE=wordpress \ Wordpress mysql:latest Neutron Net $ zun run -e WORDPRESS_DB_HOST=$mysql_ip \ Mysql -e WORDPRESS_DB_USER=root \ -e WORDPRESS_DB_PASSWORD=rootpass \ wordpress:latest

  14. Orchestration with Heat resources: db: type: OS::Zun::Container properties: image: mysql Wordpress environment: Neutron Net MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: wordpress wordpress: Mysql 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

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

  16. Architecture Keystone Glance Zun API Zun Compute Docker Neutron Kuryr

  17. Deployment Neutron Server Docker Neutron Server Docker Docker SQLdb Docker Kuryr-libnetwork SQLdb Kuryr-libnetwork Kuryr-libnetwork Keystone Kuryr Neutron Agent Keystone Neutron Agent Neutron Agent AMQP Neutron Agent Zun Compute AMQP Zun Compute Zun Compute Zun API Zun Compute Zun API Compute Node Compute Node Compute Node Cloud Controller Node Compute Node Cloud Controller Node

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

  19. Features Container APIs ● Container host management ● Multi-tenancy ● Neutron integration ● Support multiple image repositories ● Docker Hub ○ Glance ○ Heat Integration ● Horizon Integration ● OpenStackClient Integration ●

  20. 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 ●

  21. 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 ○

  22. 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 ○

  23. Community

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

  25. Demo https://youtu.be/s758L_dIsLU

Recommend


More recommend