Top Banner
DEVOPS FOR JAVA WITH DOCKER CONTAINERS
71

Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Apr 16, 2017

Download

Technology

Jelastic
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

DEVOPS FOR JAVA WITH DOCKER

CONTAINERS

Page 2: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Dev Problem10:15 Install OS11:20 Configure the system12:05 Coffee Break13:05 Configure security14:15 Configure Web server15:40 Configure Database16:20 Couple of sandwiches16:50 Configure firewall17:20 Deploy application17:45 Call wife and apologize for the late return18:00 Identify library dependencies20:30 Upgrade packages22:15 Fix dependencies23:50 Couple cans of Red Bull01:30 Run!!!

02:05 The end of the working day

Page 3: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Dev Problem

Developers love to create applications and hate to administer servers

Page 4: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Ops Problem

Page 5: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

DevOps is a Software Development Method

Automation, Integration, Measurement, Communication, Collaboration

Page 6: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

• Initial setup of the dev, test, staging and production environments

• Configuration of access policies for different user groups

• Integration with code repository tools like git and svn

• Deployment automation, like git-push-deploy

• Zero downtime deployment (ZDT), rollback

• Automation of the scaling

• Monitoring and troubleshooting – logs, debugging, performance analysis

• Applying security patches and middleware stack updates

DevOps Tasks

Page 7: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

DevOps Pipeline

Page 8: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Docker Containers

Page 9: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Docker Usage Overview

Page 10: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Multiplicity of

stacksDo services and apps

interact properly?

Multiplicity of HW

environmentsCan I migrate

smoothly and easy?

The Challenge

Page 11: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Multiplicity of

goodsCan I place coffee and

spices?

Multiplicity of

methods of

transporting

Can I transport from

train to truck?

Cargo Transport Pre-1960

Page 12: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Solution: Intermodal Shipping Container

Page 13: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

An engine that enables any

payload to be

encapsulated as a

lightweight and portable

self-sufficient container

That can be manipulated using

standard operations and run

consistently on virtually any

hardware platform

Docker Shipping Container

Page 14: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Virtual Machines VS Containers

Page 15: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Microservices = Decomposition

Complex apps are composed of small, independent processes

Page 16: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Monolithic Application

‒ Very often we redeploy everything

‒ Mutual dependencies slow down

development

‒ Long QA cycle leads to less often updates

‒ High risk of failure or VM overload

‒ Very hard to scale

Modular and polyglot

Deployed and updated independently

Much easier to scale and maintain

Flexibility is the key

Microservices

Microservices vs. Monolithic

One monolithic VMMultiple Containers

Page 17: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Automatic Horizontal Scaling

Page 18: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Automatic Horizontal Scaling

Page 19: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Scaling Limit

Automatic Vertical Scaling

Page 20: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Application level

load balancing, session replication, clustering

Hardware level

software defined storage, live migration, smart

distribution

High Availability

Page 21: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Containers for DevOps

Page 22: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Containers for DevOps

Page 23: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Default Docker® DevOps Workflow

Page 24: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Default Docker® DevOps Workflow

Page 25: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Default Docker® DevOps Workflow

Page 26: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Default Docker® DevOps Workflow

Page 27: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Default Docker® DevOps Workflow

Page 28: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Default Docker® DevOps Workflow

Page 29: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Advanced DevOps Workflow

Page 30: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Advanced DevOps Workflow

Page 31: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Advanced DevOps Workflow

Page 32: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Advanced DevOps Workflow

Page 33: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Advanced DevOps Workflow

Page 34: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Hybrid DevOps Workflow

Page 35: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Hybrid DevOps Workflow

Page 36: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Hybrid DevOps Workflow

Page 37: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Hybrid DevOps Workflow

Page 38: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Hybrid DevOps Workflow

Page 39: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Containers in Jelastic

Page 40: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Live Migration for Containers

CRIU – Checkpoint/Restore In Userspace

Page 41: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Demo

Page 42: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Multi-Container Environment Topology

https://youtu.be/T0-XmRGJL0w

Page 43: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

CI/CD with Docker

https://youtu.be/8GZ5j30YPe0

Page 44: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

High Level API – JPS (Jelastic Packaging Standard)

Page 45: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Cloud Events• Scale Out, Scale In

• Scale Up, Scale Down

• Deploy, Update

• Start, Stop, Sleep

• Restart, Reload

• Clone, Delete

• …

Scripting • Java

• JS

• PHP

• Ruby

• Python

• …

Cloud Scripting – <CS>

Program Your Cloud on Your Own

Page 46: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

30+ Hosting Providers

10+ Private Cloud Customers

200,000+ Developers

25+ Countries

Cloud Union – Freedom of Choice

Page 47: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Jelastic PaaS Partners in Spain

Page 48: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Jelastic.cloud in alliance with Aruba.it

Page 49: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Jelastic Multi-Cloud Orchestrator

Your Bridge to Cloud Union

17 DCs in

8 Countries

11 DCs and 23 AZs in

8 Countries

3 DCs and 10 AZs in

3 Countries

25 DCs in

11 Countries

36 DCs in

25 Countries

Page 50: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Hybrid and Multi-Cloud

Features

Smooth migration across multiple cloud providers

Live migration between Azure or AWS regions

High availability across multiple clouds

Disaster recovery of workloads from AWS to Azure

Automatic scaling for load spikes and temporary burst

Unification of DevOps workloads deployment

Benefits

Autonomy – no vendor lock-in

Hybridity – better performance with lower costs

HA and DR – reduced downtime risk

Page 51: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Live Migration From AWS to Azure

Page 52: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Increasing Resources w/o Downtime

Page 53: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Evacuation From One Cloud To Another One

Page 54: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Access Policies

Page 55: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

HA Across Clouds

Page 56: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Advanced HA and Geo-Routing

Page 57: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

• Data center with capacity for over 2000 servers

• Virtual and Dedicated Servers, Shared Hosting

• Domains registration

• Plesk, SSL Certificates

• Antivirus, Antispam and Backup services

• Web development and outsourcing services

• VPN solutions

• And now, with help of Jelastic, Infortelecom offers the first Spanish

public PaaS for DevOps

Page 58: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

http://cloud4app.es/web/cloud-jelastic.html

Page 59: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

TEAM

Page 60: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Java “Oscar” in 2012 – Duke’s Choice Award

Page 61: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Father of JavaIndependent Board Director of Jelastic

Do you Know James Gosling?

Page 62: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Java Fun

Page 63: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

James Gosling about Live Migration in Multi-Cloud

https://www.youtube.com/watch?v=GEwnMuIlwN8

Page 64: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Rasmus LerdorfTechnical Adviser of Jelastic

Who is the Father of PHP?

Page 65: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Brainstorming Together

Page 66: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Michael Widenius – “Monty”Technical Adviser of Jelastic

Who is the Father of MySQL and MariaDB?

Page 67: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

We are Friends

Page 68: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Who is the Father of

Mark Zbikowski – “Zibo”Technical Adviser of Jelastic

.EXE?

Page 69: Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Page 70: Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Page 71: Jelastic - DevOps for Java with Docker Containers - Madrid 2015

Twitter: @siruslan