DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax....

44
DOCKER ORCHESTRATION WITH KONTENA CAPTAINING A CONTAINER SHIP

Transcript of DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax....

Page 1: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

CAPTAINING A CONTAINER SHIP

Page 2: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports
Page 3: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports
Page 4: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports
Page 5: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

WHY ORCHESTRATION?

▸ With Docker, there’s never only one container, and they all need to be

▸ managed

▸ distributed

▸ scheduled

▸ load balanced

▸ Dependencies between containers require

▸ Links

▸ Service discovery

▸ Shared secrets

Page 6: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

“KONTENA IS AN OPEN SOURCE CONTAINER PLATFORM BUILT TO MAXIMISE DEVELOPER HAPPINESS. WORKS ON ANY CLOUD, EASY TO SETUP, SIMPLE TO USE.”

DOCKER ORCHESTRATION WITH KONTENA

Page 7: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

WHY KONTENA?

▸ Simple

▸ Inexpensive

▸ Full-featured

▸ Production-ready

▸ Secure

▸ Flexible

Page 8: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA IS SIMPLE

▸ Easy to install in < 1h

▸ Comes with all important functionality

▸ Extends docker-compose configuration syntax

Page 9: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA IS INEXPENSIVE

▸ Open Source Software

▸ Supports Let’s Encrypt out of the box

Page 10: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA IS FULL-FEATURED

▸ Private image registry

▸ Load balancer

▸ Service discovery

▸ Secrets storage (“Vault”)

▸ Key-Value store

Page 11: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA IS PRODUCTION-READY

▸ User authentication and authorisation

▸ Health checks

▸ Support for stateful applications

▸ Real-time log and statistics streams

▸ Audit trail

Page 12: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA IS SECURE

▸ Virtual networks with encrypted traffic

▸ VPN access

Page 13: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA IS FLEXIBLE

Page 14: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

$ WHOAMI

JOCHEN LILLICH

▸ CEO/CTO at freistil IT

▸ Twitter: @geewiz

▸ Email: [email protected]

Page 15: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

Dev

Ops

Development DeploymentIdeaApp

Page 16: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

USING KONTENA

Page 17: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports
Page 18: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA SERVER

▸ Controls the whole platform

▸ Access via OAuth tokens

▸ Kontena Cloud

▸ External OAuth providers

Page 19: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

CREATING A KONTENA SERVER

Page 20: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

GRIDS

▸ Separate groups of Kontena nodes

▸ Encrypted overlay network

▸ Direct access via VPN

Page 21: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

CREATING A GRID

Page 22: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA NODES

▸ Automatic discovery

▸ Permanent connection to Kontena server

Page 23: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

ADDING NODES TO A GRID

Page 24: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

KONTENA SERVICES

Page 25: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

SERVICES

▸ Container image

▸ Volumes

▸ Resources

▸ Links to other containers

▸ Environment variables

▸ Secrets

▸ Registration

Page 26: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

SERVICE DEPLOYMENT

▸ Strategy

▸ No of instances

▸ Affinity to other services

▸ Port to wait for

▸ Health check

Page 27: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

STATELESS SERVICE

Page 28: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

STATEFUL SERVICE

Page 29: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

SCALING A SERVICE

Page 30: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

KONTENA STACKS

Page 31: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

KONTENA STACKS

▸ Set of services

▸ Versioned

▸ Grid-local DNS domain

Page 32: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

DEPLOYING A STACK

Page 33: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

STACK DEFINITION: PREAMBLE

Page 34: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

STACK DEFINITION: VARIABLES

Page 35: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

STACK DEFINITION: SERVICES

Page 36: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

STACK DEFINITION: SERVICES (CONT.)

Page 37: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

LOAD BALANCING

Page 38: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

ADDING A LOADBALANCER

Page 39: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

SSL

Page 40: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

REGISTERING WITH LET’S ENCRYPT

Page 41: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

USING THE LE CERTIFICATE

Page 42: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

SUMMARY

▸ Kontena is...

▸ simple

▸ inexpensive

▸ full-featured

▸ production-ready

▸ secure

▸ flexible

▸ worth a try!

Page 43: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

DOCKER ORCHESTRATION WITH KONTENA

RESOURCES

www.freistilbox.com/drupalcon.html

Page 44: DOCKER ORCHESTRATION WITH KONTENA - DrupalCon · Extends docker-compose configuration syntax. DOCKER ORCHESTRATION WITH KONTENA KONTENA IS INEXPENSIVE Open Source Software Supports

ONE MORE THING...

JOIN US FOR CONTRIBUTION SPRINTS

Friday, April 28, 2017

First-Time Sprinter Workshop9:00am-12:00pmRoom: 307-308

Mentored Core Sprint9:00am-12:00pmRoom:301-303

General Sprints9:00am-6:00pmRoom:309-310