running and scaling docker containers with kontena

18
The Developer Friendly Container & Micro Services Platform Jussi Nummelin, Resident Wharfie @JNummelin

Upload: jussi-nummelin

Post on 13-Apr-2017

116 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Running and Scaling Docker Containers with Kontena

The Developer FriendlyContainer & Micro Services

PlatformJussi Nummelin, Resident Wharfie

@JNummelin

Page 2: Running and Scaling Docker Containers with Kontena

The Past, Present and Future of Computing

© 2016 Kontena, Inc.

INFRA

HOST OS

APP

INFRA

HOST OS

APP

INFRA

HOST OS

APP

INFRA

HOST OS

HYPERVISOR

GUEST OS

GUEST OS

GUEST OS

APP APP APP

INFRA

HOST OS

CONTAINER ENGINE

APP APP APP

Legacy Virtualization ContainerizationYear 2014 à

Page 3: Running and Scaling Docker Containers with Kontena

What is Containerization?

© 2016 Kontena, Inc.

Light-weight OS level sandboxing of applicationsRuns multiple isolated apps on single host without hypervisor

Currently, the hottest trend in datacenter innovationNext step for optimizing computing resources post VMs

Build and configure once, run anywhereIdeal for DevOps and modern micro-service architectures

Significant buy-in from both start-ups and large vendorsPackaged Software: MySQL, MongoDB, Redis, NodeJS…OS Vendors: Microsoft, Apple, Red Hat, SUSE, CoreOS...Clouds: Amazon, Microsoft, IBM, Rackspace, Google...Major Users: Netflix, Paypal, eBay, Google, Spotify...

Page 4: Running and Scaling Docker Containers with Kontena

Why Containers?

© 2015 Kontena, Inc.

Containers provide a more efficient use of Resources:: Eliminates Hypervisor reducing virtualization overhead while still allowing separation and isolation of multiple tasks on one host without relying on a separate OS, saving huge amount of HW resources compared to bulky VMs which emulate physical servers complete with OS

Allows Easy Application Portability between different hosts within DCs, DC to DC/ DC to Cloud (Private, Public, Hybrid) / Cloud to Cloud

Page 5: Running and Scaling Docker Containers with Kontena

What is Kontena?

© 2015 Kontena, Inc.

Open Source container & micro services platform built to maximize developer

happiness. Works on any cloud, easy to setup, simple to use.

Page 6: Running and Scaling Docker Containers with Kontena

Quick Facts

! 700+GITHUB STARGAZERS

>100kNUMBER OF INSTALLS

FEATURED IN

Page 7: Running and Scaling Docker Containers with Kontena

Quotes from Community

“You guys have clearly put a heck of a lot of time and thought into Kontena, it's really pretty cool.”

- thecatwasnot

“Hello! I am looking at Kontena and it looks amazing”- massimiliano-mantione

“Your project looks amazing, and is exactly what I want.”- dbones

Source: Kontena Gitter

Page 8: Running and Scaling Docker Containers with Kontena

How does it work?

Kontena GridA number of physical or virtual machines – Kontena Nodes –create a Kontena Grid. The nodes may be located anywhere; in single data center, different AZs or different cloud providers.

Overlay NetworkKontena will automatically create an overlay network powered by Weave and connect all nodes of a Grid. Overlay network enable services to communicate with each other in multi-host, multi-AZ environment.

Service DiscoveryKontena has a built-in service discovery powered by etcd. It is used to automatically assign DNS addresses for any services running in Kontena. It is also used by Kontena’s load balancer for zero-downtime operation.

OrchestrationKontena’s orchestrator is distributing, running and monitoring all Kontena Services in a Grid. Services may be stateless or stateful, and they are automatically distributed across Nodes in a Grid.

Containerized WorkloadsWith Kontena, all containerized workloads are described as Services. Kontena Service is composed of containers based on the same image file. Services may be scaled and linked together to create complex elastic apps.

OS

Docker

Kontena Nodes & AgentKontena Agent may be installed to any machine capable of running Docker. It

is running as a privileged container in a machine.

Kontena MasterKontena Master is orchestrating the

entire Kontena system. It provides APIs used by Kontena CLI, Web UI

and third party integrations.

Kontena Master may be installed as high-availability setup if needed.

Page 9: Running and Scaling Docker Containers with Kontena

All Batteries Included!

Built-In Image RegistrySometimes projects can not use publicly hosted

container image registries like DockerHub. Kontena comes with built-in container image

registry providing private and secure solution.

Built-In VPN AccessAll containers are run inside a virtual private

network by default. Nothing is exposed to Internet unless explicitly defined. With

Kontena’s built-in VPN access developers can securely access those resources.

Built-In Load BalancerKontena comes with built-in load balancer.

Based on Haproxy. It features fully automatic, zero-downtime operation due to deep integration

with Kontena’s service discovery and orchestration technology.

Aggregated Stats & LogsKontena provides real-time log and statistics streams containers. The streams may be grouped and aggregated to produce service level streams. This allows easy viewing of logs and statistics for your application CPU, memory, disk and network usage.

User Management with Audit TrailAll events and actions performed through Kontena CLI or APIs are logged into audit trail. Combined with users and access control, the audit trail support makes Kontena a reliable and secure solution for any enterprise deployments.

Built-In Secrets ManagementWhen your application requires access to APIs or databases, you'll often need to use secrets such as passwords and access tokens for authenticating the access. Kontena Vault is a secure key/value storage that can be used to manage secrets in Kontena.

Page 10: Running and Scaling Docker Containers with Kontena

“Includes all the s**t you don’t want to implement by yourself”

Page 11: Running and Scaling Docker Containers with Kontena

Works on any Infrastructure

© 2015 Kontena, Inc.

Kontena works on any public cloud or in your own private datacenter; hybrid environment, virtualized or bare metal.

Page 12: Running and Scaling Docker Containers with Kontena

Demo Time

Page 13: Running and Scaling Docker Containers with Kontena

Demo App – v1

Todo-app

mongodb

Page 14: Running and Scaling Docker Containers with Kontena

Demo App – v2

Rep

lica-

set

Todo-app

Mongodb-1

Todo-app

Mongodb-2

Todo-app

Mongodb-3

LB LB LBSSL Termination

Page 15: Running and Scaling Docker Containers with Kontena

© 2015 Kontena, Inc.

Page 16: Running and Scaling Docker Containers with Kontena

Our mission is to becomenumber 1 container &

microservices platformfor developers

Page 17: Running and Scaling Docker Containers with Kontena

" [email protected]

# @kontenainc

$ slack.kontena.io

! github.com/kontena/kontena

meetup.com/pro/kontena

% www.kontena.io

Stay up to date!

Page 18: Running and Scaling Docker Containers with Kontena

Thank You!www.kontena.io