Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOpsDays Cuba 2016: Ignite - Effective servic...

DevOpsDays Cuba 2016: Ignite - Effective service management with Mesos

Author: Juan Carlos
Summary:

DevOpsDays Cuba

October 21, 2016
Tweet

More Decks by DevOpsDays Cuba

Other Decks in Technology

Transcript

  1. branch: master Continuous delivery pipeline tag: v1.0 … Demos staging

    UAT … … … tag: v2.0 tag: v2.2 … project 1 branch: master branch: master tag: v3.2 tag: v3.3 tag: v4.0 … project 2 branch: master
  2. Problems Inefficient resource management • Low utilization Heterogeneous systems •

    Different provisioning for each VM • Different deployment for each service
  3. Mesos Centralized fault-tolerant cluster manager designed for distributed computing environments

    to provide efficient resource isolation and management across a cluster
  4. Docker • Package an application with its dependencies into a

    standardized unit • Delivering applications with Docker on Mesos promises a truly elastic, efficient and consistent platform for delivering applications on premises or in the cloud
  5. VM vs Containers Containers have similar resource isolation and allocation

    benefits as virtual machines but a different architectural approach allows them to be much more portable and efficient.
  6. 2. Scale up 3. Machine failure 2 3 10 2

    3 10 1 3 5 Scaling and fault recovery 1. Start services , , , , , , , , , , , , , , , , , , , , , , , , ,
  7. branch: master Continuous delivery pipeline tag: v1.0 … Demos staging

    UAT … … … tag: v2.0 tag: v2.2 … project 1 branch: master branch: master tag: v3.2 tag: v3.3 tag: v4.0 … project 2 branch: master Self service branch: issue-1 branch: issue-2 branch: issue-3 … branch: issue-1 branch: issue-2 branch: issue-3 …
  8. Benefits Improved performance • More services provided on the same

    resources • More reviews at the same time Simplified provisioning • All nodes are provisioned exactly the same
  9. Benefits Simplified service deployment curl -H 'Content-Type: application/json' -X POST

    -d@ { "id": "my-service", "instances": 2, "cpus": 1, "mem": 1024, "container": { "docker": { "image": "my-app:1.0" … }, … }, … }