Comparing Linux OS Image Update Models - EOSS 2024.pdf
OpenNebula Conf: 2014 | Lightning talk: Managing Docker Containers with OpenNebula - Marco Mancini
1. Managing Docker Containers with OpenNebula
Marco Mancini, Ph.D.
Scientific Computing & Operations Division
marco.mancini@cmcc.it
OpenNebula Conference 2014
Berlin, 2-4/12/2014
2. About CMCC & SCO
●CMCC is a non-profit research Institution
●Established in 2005, with the financial support of the Italian Ministry of Education, University and Research, the Ministry of the Environment, Land and Sea and the Ministry of Economy
●CMCC manages and promotes scientific and applied activities in the field of international climate change research
●CMCC involves and links private and public institutions, jointly investigating multidisciplinary topics related to climate science research
Scientific Computing & Operations
●Scientific Data Management
●High End Computing
●High Performance Computing System Management Current Cloud Computing Activities at SCO
●Big Data analytics framework for eScience (OPHIDIA) to study Climate change and biodiversity (EUBrazilCC project (2014-2016), Ignacio Blanquer, UPV (Spain), Francisco Brasileiro, UFCG, Brasil)
●Different deployment scenarios using OpenNebula
3. Proposed feature/activity
Dockerfile: recipe to build a container
Execution is fast and lightweight:
processes are isolated but ran straight on the host, CPU, memory, network and disk/io performance almost equal to native performance
Containers: lightweight VMs
Own process space
Own network space
Can run stuff as root
Can have its own /sbin/init
Image: basis for the container
Docker Engine:
Commoditize LXC
Uses copy-on-write for quick provisioning
Runs as a daemon
Interaction with CLI and REST API
Registry: share/store images
Integration of Docker containers into OpenNebula Use Case: OneFlow for quick provisioning and dynamic scaling of OPHIDIA
Docker: Build, Ship and Run Any App, Anywhere
●Package your application in a container
●Move the container from one machine to another
●Execute that container anywhere
Docker Components
Data Volume: persistent and/or shared data
4. Managing Docker Containers with OpenNebula
OpenNebula as an Orchestrator of VM and Containers
An Host can provide both VMs and Containers (e.g. KVM + docker engine)
Security
Networking (#8951, #8952, #8997)
Remote/Shared Volumes &Mgmt (#7249, #8484, #8854)
Monitoring Containers
Shared Volumes between containers (--volumes-from)
Linking containers (--link)
Datastore (Images)
Docker Registry
Datastore (Data Volumes)
CEPH
Transfer Manager
docker pull/push
Information Manager
docker inspect
VM Manager
docker run (deploy)
docker import/export (migrate)
docker stop
docker rm (delete)
CPU="1” MEMORY="256" SOURCE="docker://webserver:1.0" VOLUME=["/var/www"] PORT=80 NETWORK=“docker0”
Template
Mount a CEPH Data Volume
rbd create –p one one-${VID} --size ${VSIZE}
rbd map one-${VID}
mkdir ${HDIR}/${VMID}/volume.${VID}
mkfs –t ${TYPEFS} $DEV
mount $DEV ${HDIR}/${VMID}/volume.${VID}
Deploy a Docker container
docker run -d -v ${HDIR}/${VMID}/disk.${VID}:/var/www -p 80 --name one-${VMID} -c 1 -m 256m webserver:1.0