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

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

Developing and Testing Java Microservices on Docker. Todd Fasullo Dir. Engineering

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

UNDER THE HOOD. ROGER NUNN Principal Architect/EMEA Solution Manager 21/01/2015

CONTINUOUS DELIVERY WITH DC/OS AND JENKINS

Automating Security Practices for the DevOps Revolution

Aspirin as a Service: Using the Cloud to Cure Security Headaches

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

Openshift: Key to modern DevOps

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

UP! TO DOCKER PAAS. Ming

The Long Road from Capistrano to Kubernetes

KUBERNETES IN A GROWN ENVIRONMENT AND INTEGRATION INTO CONTINUOUS DELIVERY

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

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

In-cluster Open Source Testing Framework

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

DevOps Course Content

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

利用 Mesos 打造高延展性 Container 環境. Frank, Microsoft MTC

Continuous Integration and Delivery with Spinnaker

OpenShift 3 Technical Architecture. Clayton Coleman, Dan McPherson Lead Engineers

Think Small to Scale Big

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

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

Containers OpenStack. Murano brings Docker & Kubernetes to OpenStack. Serg Melikyan. software.mirantis.com. January 27, 2015

Red Hat Roadmap for Containers and DevOps

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

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

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

CloudCenter for Developers

Micro-Service Applications for Infrastructure People

Service discovery in Kubernetes with Fabric8

AALOK INSTITUTE. DevOps Training

Google Cloud Platform for Systems Operations Professionals (CPO200) Course Agenda

PaaS Anywhere. Isaac Christoffersen Architect, Vizuri

Microservices and Container Development

Docker and Oracle Everything You Wanted To Know

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

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

BUILDING A GPU-FOCUSED CI SOLUTION

Containers Infrastructure for Advanced Management. Federico Simoncelli Associate Manager, Red Hat October 2016

S Implementing DevOps and Hybrid Cloud

/ Cloud Computing. Recitation 5 February 14th, 2017

PaaS Anywhere. Isaac Christoffersen Architect, Vizuri

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

CONTINUOUS DELIVERY WITH MESOS, DC/OS AND JENKINS

Multi-Arch Layered Image Build System

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

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

Continuous Delivery for Cloud Native Applications

TM DevOps Use Case. 2017TechMinfy All Rights Reserved

Real-life technical decision points in using cloud & container technology:

Implementing the Twelve-Factor App Methodology for Developing Cloud- Native Applications

Beyond 1001 Dedicated Data Service Instances

From development to production

Ingress Kubernetes Tutorial

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

WHITEPAPER. Embracing Containers & Microservices for future-proof application modernization

Building Microservices with the 12 Factor App Pattern

CNA1699BU Running Docker on your Existing Infrastructure with vsphere Integrated Containers Martijn Baecke Patrick Daigle VMworld 2017 Content: Not fo

The 12-Factor app and IBM Bluemix IBM Corporation

Speeding Up Infrastructure Provisioning with CloudForms. Jason Dillaman Principal Architect, Red Hat Nick Lane Consultant, Red Hat

Microservices with Red Hat. JBoss Fuse

Best Practices for Developing & Deploying Java Applications with Docker

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

Running MarkLogic in Containers (Both Docker and Kubernetes)

70-532: Developing Microsoft Azure Solutions

VMworld 2017 Content: Not for publication #CNA1699BE CONFIDENTIAL 2

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

ContainerOps - DevOps Orchestration. Quanyi Ma

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

Use Case: Scalable applications

TEN LAYERS OF CONTAINER SECURITY

Continuous Delivery of Micro Applications with Jenkins, Docker & Kubernetes at Apollo

DevOps Workflow. From 0 to kube in 60 min. Christian Kniep, v Technical Account Manager, Docker Inc.

PaaS isn t Just for Developers

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

Container Orchestration on Amazon Web Services. Arun

Micro-Service Applications for Infrastructure People

Continuous delivery while migrating to Kubernetes

ONAP Developer Typical Setup 2017 July ONAP Virtual Developers Event

CoreOS and Red Hat. Reza Shafii Joe Fernandes Brandon Philips Clayton Coleman May 2018

Cloud Native Java with Kubernetes

Con$nuous Deployment with Docker Andrew Aslinger. Oct

Code: Slides:

Investigating Containers for Future Services and User Application Support

JBOSS MIDDLEWARE TO THE CLOUD. MICHAEL EPLEY Sr JBoss Solutions Architect, IC Specialist 2014 June

CONTINUOUS DELIVERY IN THE ORACLE CLOUD

Using DC/OS for Continuous Delivery

Leveraging the Serverless Architecture for Securing Linux Containers

DOCKER 101 FOR JS AFFICIONADOS. Christian Ulbrich, Zalari UG

TM DevOps Use Case TechMinfy All Rights Reserved

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

Oracle WebLogic Server 12c: Administration I

ITIL isn t evil Most people who implement it are

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

How to be a Network Engineer in a Programmable Age Cisco DevNet Webinar Series

Run Stateful Apps on Kubernetes with PKS: Highlight WebLogic Server

Transcription:

OpenShift @ SBB Java User Group 27.9 & 25.10.17 Tobias Denzler, Philipp Oser

Who we are Tobias Denzler Software Engineer at SBB IT Java & OpenShift enthusiast @tobiasdenzler Philipp Oser Architect at ELCA Interest in «good abstractions» for devs @silsfan SBB IT SWE 27.9 & 25.10.17 2

Agenda 1. Intro 2. Demo 3. More advanced topics 4. Conclusion 5. Q&A SBB IT SWE 27.9 & 25.10.17 3

Mobile app backend 30k requests per minute

www.sbb.ch our main website 25k requests per minute

Monitors at all stations

Numbers

OpenShift Clusters Master nodes 2 2 Storage nodes 2 > 6 2 > 6 Working nodes 26 7 Compute 1250 Cores 56 Cores Memory 13 TB 400 GB Persistent Storage 40 TB 200 GB Datacenter 2 sites 2 availability zones SBB IT SWE 27.9 & 25.10.17 8

2700 Containers 970 Projects 11% 16% 89% 84% 900 Applications 6500 Images 50 Mio Requests/ Day 16% 10% 25% 84% 90% 75% Numbers 9

PaaS

Context Logging Monitoring ESTA Cloud ESTA Cloud Stack OpenShift Infrastructure Templates Traditional SBB IT Infrastructure Container Docker Container Container Kubernetes Dev Tools Bitbucket Jenkins IaaS Nexus SBB IT SWE 27.9 & 25.10.17 11

Layering SBB IT SWE 27.9 & 25.10.17 12

Demo

Where do my artefacts live? And how do they get there? Git Repo mvn mvn deploy Nexus Repo JAR, WAR,... Openshift build Openshift Registry Docker Image Docker Image Deploy Configuration (optional): Env-Variables # Instances What triggers a redeploy? Dev Tools Openshift Projekt Plattform Configuration: Self-running Jar or Dockerfile What Project? [Port] [Name & Version] [Tags] Pod Pod Pod Pod Pod Openshift Runtime Env Dev/Test/Int/Prod Propagation Promote SBB IT SWE 27.9 & 25.10.17 14

Demo-Steps Initializr Jenkins Pipeline Openshift UI REST Monitoring Rolling Deployment Monitoring Reliability <<pod>> <<pod>> customer <<pod>> postgresql SBB IT SWE 27.9 & 25.10.17 15

More advanced topics

Testing Good practices remain: Unit-, Integration Tests, Propagation through Stages (dev, test,, prod) Resilience Testing Chaos Monkey Toxi-proxy Injection via script Remote Test Runner SBB IT SWE 27.9 & 25.10.17 17

Other topics (selection) Templates & Images: Postgresql, Elasticsearch, Cassandra, Hazelcast, RabbitMQ, NGINX, Java Base Image Configuration of «desired state» in Openshift over N stages, automatic, reproducible, management of changes Desired state in Git Graceful Shutdown for Spring and Openshift Checklist for productive deployments naming, > 2 pods, limit resources, monitoring, crash resilient Migration to the Cloud: e.g. Only expose HTTP protocols, Sessions Open source components for Openshift: https://github.com/oscp SBB IT SWE 27.9 & 25.10.17 18

Conclusion

Traditional Infrastructure vs PaaS Traditionell PaaS Technology Shared Websphere Platform Openshift Cluster What deployables can run? Deployment to Prod Websphere Java EE Deployables (2 fixed Versions & Patch-Levels) Description in Word Document (!) Docker Container Self-service Automatic (or via UI) Cost Lower (about - 30%) System Know- How Scalability/ New Environment Governance Specialized Team for technology Static (weeks) Technology limited Architecture review DevOps-Team (Cloud Team 2nd Level) Dynamic (seconds) Governance via «what is easy» SBB IT SWE 27.9 & 25.10.17 20

Cool Surprised by huge success at SBB! Self-service IT, very flexible & relatively simple «close to ideal infrastructure» Templates: Predefined components, can be instantiated via selfservice mode, automatically supervised SBB IT SWE 27.9 & 25.10.17 21

Challenges Templates: Large Effort for Design, Maintenance & Know-How Know-How in DevOps Teams: Huge technology stack (including e.g. details of Linux distros, Docker, JVM, monitoring, ) Full Self-Service ability: Tools supporting multi-tenancy, own mini- Uis, Security, vs flexibility SBB IT SWE 27.9 & 25.10.17 22

Questions?

Test runs on Openshift, driven from Jenkins Convenient pgm model Internal Ports accessible @RunWith(RemoteTestRunner.class) public class SimpleJUnitTest { } @Test public void testruninopenshift() { x = codetoruninopenshift(); assertequals(x, "foo"); } SBB IT SWE 27.9 & 25.10.17 24

Build & Deployment how to manage "desired state" of openshift project 2 philosophies syncher pod (desired state in git) script to update desired state (e.g. launched in jenkins) uses templating (for different envs) Promotion to next env is then via script/ git update SBB IT SWE 27.9 & 25.10.17 25