maintaining an up to date application stack (in a containerized world)

19
Peace in Our Time: Bringing Ops and Dev Together Maintaining an up to date application stack Christoph Görn <[email protected]> @goern 2016-Oct-04

Upload: christoph-goern

Post on 21-Mar-2017

134 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Maintaining an up to date application stack (in a containerized world)

Peace in Our Time: Bringing Ops and Dev Together

Maintaining an up to date application stack

Christoph Görn <[email protected]> @goern

2016-Oct-04

Page 2: Maintaining an up to date application stack (in a containerized world)

APPLICATIONS

New ways of developing, delivering and integrating

applications

INFRASTRUCTURE

Modernize existing and build new cloud based

infrastructure

PROCESS

More agile processes across both IT and the

business

Digital TransformationRequires an Evolution in...

Page 3: Maintaining an up to date application stack (in a containerized world)

● Shift from monolithic applications to microservices

● Independently deployable and updatable, limited dependencies

● Optimized for agility & accelerated time to market

Application Architecture

Page 4: Maintaining an up to date application stack (in a containerized world)

Development Process

● Shift to more agile development and deployment processes

● Increased collaboration between Development & Operations

● Move from Continuous Integration to Continuous Deployment

Page 5: Maintaining an up to date application stack (in a containerized world)

Platform Infrastructure

● Shift from virtualization to scale-out cloud infrastructure

● Rapid growth in public cloud usage for enterprises

● Hybrid cloud deployments span private & multiple public clouds

Page 6: Maintaining an up to date application stack (in a containerized world)

Containers - Transform Apps, Infra & Process

Page 7: Maintaining an up to date application stack (in a containerized world)

The DevOps roles

Page 8: Maintaining an up to date application stack (in a containerized world)

Devs and Ops and their perspectives

● Developer writes code, and focuseson that

● Operators run code, and supportsDevelopers

● The S2I Builder, Source-to-Image ofOpenShift Container Platform

“As an Application Developer, I want to

use a Source-to-Image builder that carries a newer version of NodeJS than that Source-to-Image builder provided by Red Hat, so that I can use the latest and greatest NodeJS.

Page 9: Maintaining an up to date application stack (in a containerized world)

OpenShift Builds and IntegrationUsers Have A Choice:

● Build from source○ Git repo as input, optional WebHooks, etc.

● Build from application binaries○ Path to binaries as input (JARs/WARs)

● Just run my images

Page 10: Maintaining an up to date application stack (in a containerized world)

OpenShift ImageStreams

Page 11: Maintaining an up to date application stack (in a containerized world)

On OpenShift Mechanics

Page 12: Maintaining an up to date application stack (in a containerized world)

OpenShift Build Pipeline View

● Tight integration of Jenkins and OpenShift

● Driven by Triggers○ Generated by changes

Page 13: Maintaining an up to date application stack (in a containerized world)

OpenShift Container Platform 3.3

Page 14: Maintaining an up to date application stack (in a containerized world)

OpenShift Container Platform 3.3

● Feature Highlights○ Kubernetes 1.3 & Docker 1.10○ Enterprise Registry enhancements○ Web Console navigation & usability ○ Add to Project from Docker image or template via Web Console○ A/B deployment routing configuration○ Scale certified to 1,000 Node clusters○ Continuous Deployment Pipelines based on Jenkins Pipelines (Tech Preview - see

next slide)○ OpenShift Enterprise rebranded to OpenShift Container Platform in both products

and documentation!

Page 15: Maintaining an up to date application stack (in a containerized world)

OpenShift Container Platform 3.3

● Tech Preview Features○ Dynamic Provisioning for Storage Persistent Volumes○ Continuous Deployment Pipelines○ Install automation of Logging/EFK stack○ Extended Builds○ Storage QoS Classes○ Idling/Unidling Auto-trigger based on HTTP○ PetSet○ Rolling updates of etcd

Page 16: Maintaining an up to date application stack (in a containerized world)

Conclusion

Page 17: Maintaining an up to date application stack (in a containerized world)

Peace in Our Time: Bringing Ops and Dev Together

● Design a clean interface between Dev and Ops○ To utilize both team’s strengths○ Resulting in a faster, higher quality tool chain

● Dev could focus on writing code○ As they don’t need to maintain to build tool chain

● Ops can tune the tool chain to better fit operational requirements○ And need to provide an attractive, up to date tool chain

● Automation to the max!○ Build and deploy but be automated○ As CI and CD has to be automated

● Must read: http://rhelblog.redhat.com/2016/10/03/peace-in-our-time/

Page 18: Maintaining an up to date application stack (in a containerized world)

What’s next? Do it! Get people to do it!

Page 19: Maintaining an up to date application stack (in a containerized world)

THANK YOUplus.google.com/+RedHat

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHatNews