Contenu connexe Similaire à OpenNebulaconf2017US: Using docker with OpenNebula by Jaime Melis, OpenNebula (20) Plus de OpenNebula Project (20) OpenNebulaconf2017US: Using docker with OpenNebula by Jaime Melis, OpenNebula7. © OpenNebula Systems SL
Developer
● Docker workflow
● Doesn't know the underlying infrastructure
Devops
● Needs "infinite" or "cloud" resources
● Uses VMs to deploy Dockers
○ Better control, security
○ Leverage virtualization technologies
● Multi-tenancy layer
Docker and OpenNebula
10. © OpenNebula Systems SL
Lightweight Linux distribution based on Tiny
Core Linux made specifically to run Docker
containers.
http://boot2docker.io
Boot2Docker
11. © OpenNebula Systems SL
Docker-Machine + OpenNebula - Requirements
Requirements
● Desktop/Laptop access to OpenNebula CLI
● Image for Docker Engine
● Install Docker Machine
● Install OpenNebula Docker Machine driver plugin:
https://github.com/OpenNebula/docker-machine-opennebula
13. © OpenNebula Systems SL
Docker-Machine + OpenNebula - Usage I/II
Usage
● --opennebula-template-name: Name of the Template
● --opennebula-template-id: ID of the Template to use
● --opennebula-cpu: CPU value for the VM
● --opennebula-dev-prefix: Dev prefix to use for the images: 'vd', 'sd',
● --opennebula-disk-resize: Size of disk for VM in MB
● --opennebula-image-id: Image ID to use as the OS
● --opennebula-image-name: Image to use as the OS
● --opennebula-image-owner: Owner of the image to use as the OS
● --opennebula-memory: Size of memory for VM in MB
14. © OpenNebula Systems SL
Docker-Machine + OpenNebula - Usage II/II
Usage (cont.)
● --opennebula-network-id: Network ID to connect the machine to
● --opennebula-network-name: Network to connect the machine to
● --opennebula-network-: User ID of the Network to connect the machine to
● --opennebula-ssh-user: Set the name of the SSH user
● --opennebula-vcpu: VCPUs for the VM
● --opennebula-disable-vnc: VNC is enabled by default.
● --opennebula-b2d-size: Size of the Volatile disk in MB (only for b2d)
15. © OpenNebula Systems SL
OneFlow + Docker - Overview
Docker Swarm
Cluster of docker containers
Elasticity policy managed by OneFlow
19. © OpenNebula Systems SL
Third Party Integrations
OneDock: Docker support for OpenNebula
This project intends to provide support for OpenNebula to create Docker
containers and deliver them to the end user as if they were Virtual Machines.
https://github.com/indigo-dc/onedock
20. © OpenNebula Systems SL
Third Party Integrations
LXDOne: Docker support for OpenNebula
LXDoNe is an addon for OpenNebula to manage LXD Containers. It fits in the
Virtualization and Monitorization Driver section according to OpenNebula's
Architecture.
https://github.com/OpenNebula/addon-lxdone
21. © OpenNebula Systems SL
Third Party Integrations
Corona: Distribute OpenNebula in Docker containers
CORONA is a containerized OpenNebula deployment. The primary goal is to
build a OpenNebula deployment which can easily be rolled out or rolled back. At
the moment the plan is to split the services into 3 containers libvirt, onenode,
and oneserver.
https://github.com/fasrc/corona