Cloud Native Java with Kubernetes

Similar documents
Teaching Elephants to Dance (and Fly!)

Teaching Elephants to Dance (and Fly!) A Developer s Journey to Digital Transformation

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

WHITE PAPER. RedHat OpenShift Container Platform. Benefits: Abstract. 1.1 Introduction

Red Hat Roadmap for Containers and DevOps

OPENSHIFT 3.7 and beyond

MODERN APPLICATION ARCHITECTURE DEMO. Wanja Pernath EMEA Partner Enablement Manager, Middleware & OpenShift

Go Faster: Containers, Platforms and the Path to Better Software Development (Including Live Demo)

Monolith to Microservices

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

Openshift: Key to modern DevOps

ACCELERATE APPLICATION DELIVERY WITH OPENSHIFT. Siamak Sadeghianfar Sr Technical Marketing Manager, April 2016

OPENSHIFT CONTAINER PLATFORM TECHNICAL OVERVIEW. Presenter Presenter s title Date

Sunil Shah SECURE, FLEXIBLE CONTINUOUS DELIVERY PIPELINES WITH GITLAB AND DC/OS Mesosphere, Inc. All Rights Reserved.

Przyspiesz tworzenie aplikacji przy pomocy Openshift Container Platform. Jarosław Stakuń Senior Solution Architect/Red Hat CEE

CONTAINERS AND MICROSERVICES WITH CONTRAIL

An Introduction to Kubernetes

Microservices with Red Hat. JBoss Fuse

Continuous Delivery for Cloud Native Applications

Backup strategies for Stateful Containers in OpenShift Using Gluster based Container-Native Storage

I keep hearing about DevOps What is it?

Eclipse MicroProfile with Thorntail (formerly WildFly Swarm)

Docker and Oracle Everything You Wanted To Know

TEN LAYERS OF CONTAINER SECURITY

Microservices mit Java, Spring Boot & Spring Cloud. Eberhard Wolff

AGILE RELIABILITY WITH RED HAT IN THE CLOUDS YOUR SOFTWARE LIFECYCLE SPEEDUP RECIPE. Lutz Lange - Senior Solution Architect Red Hat

Microservices. Chaos Kontrolle mit Kubernetes. Robert Kubis - Developer Advocate,

Container in Production : Openshift 구축사례로 이해하는 PaaS. Jongjin Lim Specialist Solution Architect, AppDev

Ingress Kubernetes Tutorial

개발자와운영자를위한 DevOps 플랫폼 OpenShift Container Platform. Hyunsoo Senior Solution Architect 07.Feb.2017

Microservices and Container Development

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

Cloud I - Introduction

Important DevOps Technologies (3+2+3days) for Deployment

Agile CI/CD with Jenkins and/at ZeroStack. Kiran Bondalapati CTO, Co-Founder & Jenkins Admin ZeroStack, Inc. (

S Implementing DevOps and Hybrid Cloud

Container Orchestration on Amazon Web Services. Arun

Running MarkLogic in Containers (Both Docker and Kubernetes)

Ray Tsang Developer Advocate Google Cloud Platform

Red Hat Containers Roadmap. Red Hat A panel of product directors

Four times Microservices: REST, Kubernetes, UI Integration, Async. Eberhard Fellow

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

70-532: Developing Microsoft Azure Solutions

Ruby in the Sky with Diamonds. August, 2014 Sao Paulo, Brazil

Zero to Microservices in 5 minutes using Docker Containers. Mathew Lodge Weaveworks

Microservices Implementations not only with Java. Eberhard Wolff Fellow

Kubernetes 101. Doug Davis, STSM September, 2017

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

Kubernetes: Twelve KeyFeatures

What s New in Red Hat OpenShift Container Platform 3.4. Torben Jäger Red Hat Solution Architect

EVERYTHING AS CODE A Journey into IT Automation and Standardization. Raphaël Pinson

MODERN IT ARCHITECTURE

This document (including, without limitation, any product roadmap or statement of direction data) illustrates the planned testing, release and

MOBILIZING AND SECURING RED HAT JBOSS BPM SUITE & BRMS

RED HAT GLUSTER TECHSESSION CONTAINER NATIVE STORAGE OPENSHIFT + RHGS. MARCEL HERGAARDEN SR. SOLUTION ARCHITECT, RED HAT BENELUX April 2017

OpenShift Roadmap Enterprise Kubernetes for Developers. Clayton Coleman, Architect, OpenShift

Cisco Container Platform

TM DevOps Use Case TechMinfy All Rights Reserved

K8s(Kubernetes) and SDN for Multi-access Edge Computing deployment

Architecting Microsoft Azure Solutions (proposed exam 535)

DevOps Course Content

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Launching StarlingX. The Journey to Drive Compute to the Edge Pilot Project Supported by the OpenStack

Red Hat JBoss Enterprise Application Platform 7.2

Unify DevOps and SecOps: Security Without Friction

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Kuber-what?! Learn about Kubernetes

Continuous Integration and Delivery with Spinnaker

Red Hat OpenShift Roadmap Q4 CY16 and H1 CY17 Releases. Lutz Lange Solution

OpenShift on Public & Private Clouds: AWS, Azure, Google, OpenStack

IBM Planning Analytics Workspace Local Distributed Soufiane Azizi. IBM Planning Analytics

Package your Java Application using Docker and Kubernetes. Arun

70-532: Developing Microsoft Azure Solutions

A Comparision of Service Mesh Options

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

Samsung SDS Enterprise Cloud

Spring Cloud, Spring Boot and Netflix OSS

RED HAT OPENSHIFT A FOUNDATION FOR SUCCESSFUL DIGITAL TRANSFORMATION

CONTAINERIZED APP DEVELOPMENT

Think Small to Scale Big

Dynamic App Services in Containerized Environments

Service discovery in Kubernetes with Fabric8

The Modern & Agile Platform for Abstraction. Vasco Neves Application Platform Sales Specialist / Middleware

CUSTOMIZE & SECURE YOUR ENTERPRISE MOBILE SALESFORCE INTEGRATIONS LIKE RED HAT

SBB. Java User Group 27.9 & Tobias Denzler, Philipp Oser

Continuous delivery while migrating to Kubernetes

From development to production

RED HAT JBOSS FUSE. A lightweight, flexible integration platform

Javaentwicklung in der Oracle Cloud

Anti-fragile Cloud Architectures. Agim Emruli - mimacom

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

DevOps + Infrastructure TRACK SUPPORTED BY

The New Red Hat JBoss EAP 7.0. Eran Mansour JBoss EAP Consultant / Matrix IT

A DEVOPS STATE OF MIND WITH DOCKER AND KUBERNETES. Chris Van Tuin Chief Technologist, West

Hitchhikers Guide To Modern Enterprise JavaScript. Jay Balunas Senior Engineering Manager May 4th, 2017

Application Centric Microservices Ken Owens, CTO Cisco Intercloud Services. Redhat Summit 2015

Transcription:

Cloud Native Java with Kubernetes @burrsutter burr@redhat.com

developers.redhat.com

We cannot solve our problems with the same thinking we used when we created them. Albert Einstein (Theoretical Physicist)

Digital Darwinism The Developer s Journey Re-Org to DevOps Self-Service, On-Demand, Elastic Infrastructure Automation Puppet, Chef, Ansible, Kubernetes CI & CD Deployment Pipeline Advanced Deployment Techniques Microservices (and flying elephants!)

Our IT World Morphs

java -jar myapp.jar DropWizard Spring Boot WildFly Swarm Vert.x www.dropwizard.io projects.spring.io/springboot wildfly-swarm.io vertx.io Java EE 7 APIs Reactive Async/non-blocking JAX-RS API First to market DropWizard Metrics Embeddable servers: Jetty Spring API (@RestController) Starter POMs: start.spring.io Embeddable servers: Tomcat, Jetty, Undertow Starter POMs: wildfly-swarm.io/gen erator Embeddable servers: WildFly (Undertow) vertx run myhttp.java HTTP, HTTP/2, TCP, UDP, Websockets, etc. (out of the box)

Microservices Properties Discovery Tracing API Invocation Monitoring MyService Elasticity Logging Authentication Resilience Pipeline @burrsutter

Your Stack Matters your.war Custom Configuration Application Server Java Virtual Machine Operating System Server Hardware JDBC driver, datasource, JMS queue, users Weblogic 10.x.y, Tomcat 6.x.y, JBoss EAP 6.x.y Java 1.6.6_45 or Java 1.7.0_67 Linux Kernel Version & Distribution

DevOps Challenges for Multiple Containers How to scale? How to avoid port conflicts? How to manage them on multiple hosts? What happens if a host has trouble? How to keep them running? How to update them? Where are my containers? Logger

Meet Kubernetes Greek for Helmsman, also the root of the word Governor (from latin: gubernator) Container orchestrator Supports multiple cloud and bare-metal environments Inspired by Google s experience with containers Open source, written in Go Manage applications, not machines

Kubernetes Cluster Master Dev api etcd scheduler controllers Logger Ops

Kubernetes Cluster Pod 1+ containers Shared IP Shared storage volume Shared resources Shared lifecycle Replication Controller/ Deployment Ensures that a specified number of pod replicas are running at any one time Service Grouping of pods (acting as one) has stable virtual IP and DNS name Label Key/Value pairs associated with Kubernetes objects (env=production)

Pods A group of whales is commonly referred to as a pod and a pod usually consists a group of whales that have bonded together either because of biological reasons or through friendships developed between two or more whales. In many cases a typical whale pod consists of anywhere from 2 to 30 whales or more.* *http://www.whalefacts.org/what-is-a-group-of-whales-called/

Routing Layer Registry Master Dev API Server SCM Kubernetes CI/CD OpenShift - Builds - ImageStreams Persistent Storage SDN Overlay Network (Git/Svn) Automation Logger Controllers - Scheduler - Deployments - Services - Builds - Routes - DeploymentConfigs Service Layer Ops Physical Virtual Private Public

openshift.org

Routing Layer Registry Master Dev API Server SCM Kubernetes CI/CD OpenShift - Builds - ImageStreams Persistent Storage SDN Overlay Network (Git/Svn) Automation Logger Controllers - Scheduler - Deployments - Services - Builds - Routes - DeploymentConfigs Service Layer Ops Physical Virtual Private Public

Routing Layer Registry Master Dev API Server SCM Kubernetes CI/CD OpenShift - Builds - ImageStreams Persistent Storage SDN Overlay Network (Git/Svn) Automation Logger Controllers - Scheduler - Deployments - Services - Builds - Routes - DeploymentConfigs Service Layer Ops Physical Virtual Private Public

Routing Layer Registry Master Dev API Server SCM Kubernetes CI/CD OpenShift - Builds - ImageStreams Persistent Storage SDN Overlay Network (Git/Svn) Automation Logger Controllers - Scheduler - Deployments - Services - Builds - Routes - DeploymentConfigs Service Layer Ops Physical Virtual Private Public

Kubernetes Demo https://github.com/burrsutter/kube4docker Recorded Demo: https://youtu.be/aodhqt8ptuq

The job of a deployment pipeline is to prove that the release candidate is unreleasable. Jez Humble

Blue/Green Deployment SCM BUILD DEVELOPMENT QA STAGING PRODUCTION ROUTER Starts with a git commit and git push USERS

Blue/Green Deployment SCM BUILD DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Blue/Green Deployment BUILD SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Blue/Green Deployment BUILD SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Blue/Green Deployment SCM BUILD DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Blue/Green Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Blue/Green Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Canary Deployment SCM DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS

Infinispan.org IN-MEMORY DATA = All data needed is to kept in memory GRID = Too big for one node, data is scaled-out in cluster Analytical Framework NoSQL Extreme Performance Linear Scalability Fault Tolerant Event processing Configurable ACID Txn Custom Applications Mobile Applications Web Apps & Websites Infinispan/Red Hat JBoss Data Grid Fuse "memory" across machines into a unified data store Read-through, write-through, write-behind Databases and/or file system

Demo

Sidecars

Sidecars C++ Pod AppA Pod Sidecar Sidecar Go AppB Scala CNCF https://news.ycombinator.com/item?id=14194026 Go Consul

Summary @burrsutter Minishift and Minikube Fabric8 Maven Plugin Eureka & Ribbon not required with Kubernetes Sidecars: Envoy, LinkerD, Traefik.io, etc. Microservices, Blue/Green, CI/CD & Canary bit.ly/msa-instructions Liveness and Readiness Probes Stateful Canary leveraging Infinispan https://github.com/burrsutter/devoxxuk17_kubernetes developers.redhat.com

THANK YOU! More Information http://bit.ly/msa-instructions @burrsutter