Docker Orchestration: Step-by-step

Slides:



Advertisements
Similar presentations
Google App Engine Cloud B. Ramamurthy 7/11/2014CSE651, B. Ramamurthy1.
Advertisements

Stairway to the cloud or can we take the highway? Taivo Liik.
Container Networking Today Guido Appenzeller Chief Technology Strategy Officer, NSBU at VMware (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC.
Structured Container Delivery Oscar Renalias Accenture Container Lead (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
Microsoft Build /9/2017 5:00 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Platform as a Service (PaaS)
Introduction to Azure App Service Environment
Univa Grid Engine Makes Work Management Automatic and Efficient, Accelerates Deployment of Cloud Services with Power of Microsoft Azure MICROSOFT AZURE.
Deployment Architectures For Containers
Fundamentals Sunny Sharma Microsoft
Platform as a Service (PaaS)
Platform as a Service (PaaS)
Dockerize OpenEdge Srinivasa Rao Nalla.
The PaaS Layer in the INDIGO-DataCloud
Docker and Azure Container Service
Developer Intro to Docker Developer
Status and Challenges: January 2017
Vidcoding Introduces Scalable Video and TV Encoding in the Cloud at an Affordable Price by Utilizing the Processing Power of Azure Batch MICROSOFT AZURE.
Docker Birthday #3.
New Heights by Guiding Them into the Cloud
In-Depth Introduction to Docker
Deploying Dockerized Apps to the Azure Container Service
A10 Networks vThunder Leverages the Powerful Microsoft Azure Cloud Platform to Offer Advanced Layer 4-7 Networking, Security on a Global Scale MICROSOFT.
Deploying Hybrid-OS Applications with Docker EE
Couchbase Server is a NoSQL Database with a SQL-Based Query Language
Dmytro Mykhailov How HashiCorp platform tools can make the difference in development and deployment Target and goal of HashiCorp.
Servoy Delivers-High Productivity Platform to Design, Build and Deliver Business Applications with a Superior Experience on Microsoft Azure Partner Logo.
INDIGO – DataCloud PaaS
In-Memory Performance
Dumps PDF Architecting Microsoft Azure Solutions Are You Worried About Your Exam…
Using External Persistent Volumes to Reduce Recovery Times and Achieve High Availability Dinesh Israni, Senior Software Engineer, Portworx Inc.
2017 Real Questions
Event driven Microservices with VERT.X & Kubernetes
Kubernetes Container Orchestration
NSF : CIF21 DIBBs: Middleware and High Performance Analytics Libraries for Scalable Data Science PI: Geoffrey C. Fox Software: MIDAS HPC-ABDS.
Moving Cloud Services to Service Fabric
GeoScience and µServices
Using docker containers
Azure Container Instances
Oracle DB and Docker Get Your Dockerized Oracle Sandbox Running in the Cloud or On- Premises Martin Knazovicky Dbvisit Software.
Kubernetes intro.
Scalable SoftNAS Cloud Protects Customers’ Mission-Critical Data in the Cloud with a Highly Available, Flexible Solution for Microsoft Azure MICROSOFT.
Intro to Docker Containers and Orchestration in the Cloud
Big Red Cloud Offers a Simple Online Accounts Solution for Business Owners and Bookkeepers Hosted on the Powerful Microsoft Azure Platform MICROSOFT AZURE.
Partner Logo Azure Provides a Secure, Scalable Platform for ScheduleMe, an App That Enables Easy Meeting Scheduling with People Outside of Your Company.
Resolving IP Aliases using Distributed Systems
MyAppFree, Powered by Microsoft Azure, Lets Global Users Discover and Download Tested and Handpicked Windows Apps and Games for Free MICROSOFT AZURE ISV.
Developing for the cloud with Visual Studio
INFO 344 Web Tools And Development
Introduction to Apache
Cloud Analytics for Microsoft Azure
Learn. Imagine. Build. .NET Conf
IBM Containers Docker in the Cloud
Overview of big data tools
AWS Cloud Computing Masaki.
Introduction Apache Mesos is a type of open source software that is used to manage the computer clusters. This type of software has been developed by the.
Orchestration & Container Management in EGI FedCloud
Container cluster management solutions
OpenShift vs. Vanilla k8s on OpenStack IaaS
Last.Backend is a Continuous Delivery Platform for Developers and Dev Teams, Allowing Them to Manage and Deploy Applications Easier and Faster MICROSOFT.
Introduction to Docker
OpenShift as a cloud for Data Science
Kubernetes.
OpenStack Summit Berlin – November 14, 2018
Azure Container Service
Harrison Howell CSCE 824 Dr. Farkas
Building highly scalable enterprise systems (on Azure)
Containers on Azure Peter Lasne Sr. Software Development Engineer
Eldert Grootenboer Cloud Architecture Recipes For The Enterprise
Presentation transcript:

Docker Orchestration: Step-by-step @mrmrcoleman implicit-explicit.com container-solutions.com

Introductory stuff (small) Are we nearly there yet? Introductory stuff (small) Orchestration (big) Service Discovery (medium) Future stuff and questions (up to you…)

Who am I? Co-founder Docker Amsterdam Co-founder DockerCon Europe Associate at Container Solutions @mrmrcoleman

About container solutions Started in Amsterdam in 2014 Now also in London Coming soon to Denmark Hiring… Programmable infrastructure Docker Mesos 20% time to work on fun things

About this talk What are the ability levels? There’s too much to cover properly Cover some orchestration, and some service discovery. If you understand what those terms mean by the time you leave, I’ll be happy 1st public outing so feel free to interupt me to clarify things

Are we nearly there yet? Introductory stuff (small) Orchestration (big) Service Discovery (medium) Future stuff and questions (up to you…)

Orchestration - What is it? Right side of ‘the wall’ “Stuff needs to happen in the right order” Intertwined with service discovery DAGs Software delivered as loads of little bits. Normally these bits have dependencies. This creates DAGs. Something needs to manage these DAGs. “deploy_myself.sh” is an anti-pattern

Example 1 - 1 DockerHost Docker Compose, formerly known as Fig fig.yml describes desired state ‘docker up’ https://github.com/docker/fig Introduce what a DockerHost is

fig.yml containers: web: image: mydockerrepo/mywebapp:latest command: python app.py ports: - "5000:5000" volumes: - .:/code links: - redis environment: - PYTHONUNBUFFERED=1 redis: image: redis:latest command: redis-server --appendonly yes

Example 2 - 2 DockerHosts Flocker from ClusterHQ built on top of Fig application.yml same as fig.yaml deployment.yml describes where the containers should run Deals with migrations Moves persistent volumes Re-routes network traffic

flocker-deploy deployment.yml application.yml "version": 1 "nodes": "172.16.255.250": ["logstash", "kibana"] "172.16.255.251": ["elasticsearch"] flocker-deploy deployment.yml application.yml

Example 3 - Loads of DockerHosts “Cluster Management” makes your cluster of servers looks like one machine Mesos + Marathon Schedule Docker containers Separation of Concerns Used at Twitter Competitors: CoreOS, Kubernetes, Docker Swarm, etc

Example 3 - Loads of DockerHosts Marathon CLI or JSON/REST API Mesos Automatically figures out where to run your container based on several constraints Affinity/Anti-Affinity settings Container hardware requirements cores, memory etc) When we get to this scale we tend to stop orchestrating everything from ‘outside’ and make the containers a bit smarter We’ll come back to this in the service discovery part

Service Discovery (medium) Are we nearly there yet? Introductory stuff (small) Orchestration (big) Service Discovery (medium) Future stuff and questions (up to you…)

Service Discovery - What is it? Agility vs Resilience Agility requires that applications be split Resilience requires that application components “work anywhere” The container sandwich DNS not going to cut it anymore... etcd, skydock, zookeeper, doozerd, Consul The basic idea is that our containers need to wake up somewhere and say “Hello World… tell me who I should talk to to get my job done..!”

Consul Uses RAFT gossip protocol to keep everything in sync Highly scalable REST or DNS I’ve used it, and it seems to “just work”

Consul DH + Consul DH + Consul DH + Consul DH + Consul We can use watches and handlers to orchestrate on the fly Load balancer running on node 1 Bunch of webapps spread across the other nodes We need to scale up, so we push a new webapp to one of the nodes

Future stuff and questions (up to you…) Are we nearly there yet? Introductory stuff (small) Orchestration (big) Service Discovery (medium) Future stuff and questions (up to you…)

Open docker questions and future stuff Inter-dockerhost networking Storage VulcanD <- programmatic load balancer Decentralised Orchestration? Docker-based PAAS offerings

Thank you @mrmrcoleman www.implicit-explicit.com