Marco-Bonezzi

Marco Bonezzi is a MongoDB Technical Services Engineer. He has fielded countless questions on using Docker for MongoDB and will share what successful customers do combining these technologies at scale.

PRESENTATION ABSTRACT

The rise of containers: from development to production using Docker

Docker is becoming the default container technology and more and more organizations are already using it. If you have heard of Docker but not yet played with it, you may want to know why companies are implementing their solution with Docker? Why are containers popular? What is the benefit and how can they help in my organization? What is the difference between containers and virtual machines?

Docker and containers are key in micro services architectures and it can help us to speed up processes of testing and deployment in multiple environments like testing to production. Containers are not only a way to package our application, but also the foundation to orchestrate and deploy multiple solutions on distributed systems, multiple cloud environments or even our own laptop.

This tutorial covers what is Docker, what are the benefits of using Docker, how it can be used within an organization and how to successfully build and orchestrate our solution based on Docker containers.

Part of this tutorial session will cover a case study on how to deploy a MongoDB cluster on Docker containers:
“Scaling MongoDB with Docker and cgroups”

Deploying MongoDB on Docker seems hard. Running multiple MongoDB instances on the same server is not easier. If you ever thought about it, you may have some key questions specific to deploying MongoDB on Docker containers. Where do I put my data? How do I configure a replica set using containers? If you ever wanted to deploy MongoDB on Docker but did not know how (or maybe you already do but you want to improve), then this talk is for you! Successfully implementing a MongoDB replica set or sharded cluster on Docker at production level requires planning and taking both MongoDB and Docker configurations to a higher level. When running MongoDB deployments using Docker, building highly available repeatable patterns, orchestrate containers to build them and defining resource limits are key for a successful cluster. This use case covers what is a recommended MongoDB pattern, how to build it with Docker containers by using docker swarm for container orchestration, docker compose and docker-machine to deploy multiple containers into AWS and finally how to define resource limits for each running container using Docker cgroups option.