HOW OPEN SOURCE IS DRIVING DEVOPS INNOVATION Gordon Haff @ghaff - - PowerPoint PPT Presentation

how open source is driving devops innovation
SMART_READER_LITE
LIVE PREVIEW

HOW OPEN SOURCE IS DRIVING DEVOPS INNOVATION Gordon Haff @ghaff - - PowerPoint PPT Presentation

HOW OPEN SOURCE IS DRIVING DEVOPS INNOVATION Gordon Haff @ghaff William Henry @ipbabble Cloud & DevOps Product Strategy, Red Hat 17 August 2015 What is DevOps? Source: DevOps Days DC 2015 word cloud from Open Spaces. DevOps applies open


slide-1
SLIDE 1

HOW OPEN SOURCE IS DRIVING DEVOPS INNOVATION

Gordon Haff @ghaff William Henry @ipbabble Cloud & DevOps Product Strategy, Red Hat 17 August 2015

slide-2
SLIDE 2

What is DevOps?

Source: DevOps Days DC 2015 word cloud from Open Spaces.

slide-3
SLIDE 3

DevOps applies open source principles and practices with...

slide-4
SLIDE 4

DEVOPS: THE WHAT & THE WHY

TOOLS drawing

from innovative development communities

slide-5
SLIDE 5

A typical DevOps workflow

slide-6
SLIDE 6

Tools for operations*/infrastucture

Containerized infrastructure Orchestration Policy-based governance Configuration management Automation Packaging Updates

* But they bleed into developer land!

slide-7
SLIDE 7

Infrastructures evolve for cloud-native

฀Monolithic app container ฀Scale up by adding hardware resources ฀Limited scale out through clustering ฀Distributed, networked, containerized services ฀Scale out by orchestrating services ฀Faster iteration and release ฀More robust

RHEL APP APP

SINGLE-HOST APPS MULTI-HOST APPS

slide-8
SLIDE 8

Infrastructure layer: A Cloud Platform for Microservice Cloud Apps

Provision apps from service catalog Orchestrate and place apps Run composed microservices in containers Provide dynamic, programmable infrastructure

OPS MANAGEMENT AND SERVICE CATALOG (e.g. RED HAT CLOUDFORMS) CONTENT, ENTITLEMENT, AND LIFECYCLE (e.g. RED HAT SATELLITE) SERVICE SCHEDULER/ORCHESTRATOR (e.g. KUBERNETES)

PaaS (e.g. OPENSHIFT) RED HAT ENTERPRISE LINUX OPENSTACK PLATFORM

COMPUTE STORAGE NETWORK (e.g. OPENSTACK, CEPH, OPEN DAYLIGHT)

RHEL ATOMIC HOST GUEST RHEL ATOMIC HOST GUEST

Red Hat CloudForms Monitoring Docker Image Red Hat CloudForms Orchestration Docker Image Red Hat Satellite Content Docker Image Red Hat JBoss AMQ Docker Image App DB Docker Image Red Hat JBoss BRMS Docker Image

slide-9
SLIDE 9

Tools for developer* workflows

Collaboration CI/CD Issue tracking Source code control Code review Platform-as-a-Service

* But they bleed into ops land!

slide-10
SLIDE 10

CI/CD Pipeline Toolset

CI/CD Workflow UI

slide-11
SLIDE 11

DEVOPS: THE WHAT & THE WHY Automation of

PROCESS

from development through ongoing

  • perations
slide-12
SLIDE 12

Automation as a CI/CD Process

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

slide-13
SLIDE 13

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Collaboration

○ Kanban - Trello ○ Docs - etherpad, google docs ○ Pastebin - fpaste ○ Ticketing - Jira, Redmine ○ Coding - Eclipse, Emacs,

slide-14
SLIDE 14

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Asset Management

○ Code/Config - git, subversion ○ Docs - git, Google docs ○ Policy/rules - ManageIQ, Katello

slide-15
SLIDE 15

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Continuous Integration

○ Jenkins ○ Travis CI ○ BuildBot

slide-16
SLIDE 16

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Code/Image Build

○ Compilers ○ Code Build - Ant, Maven, Buildbot, Cruisecontrol, etc.

slide-17
SLIDE 17

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Testing

○ SonarQube ○ Cucumber ○ JUnit ○ Arquillian

slide-18
SLIDE 18

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Review/Approve

○ Gerrit, Github

  • Ticket Update

○ Jira, Redmine

slide-19
SLIDE 19

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Packaging

○ RPM

  • Images

○ Docker, OCI

  • Applications/Services

○ Kubernetes, Atomicapp

slide-20
SLIDE 20

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Anisible,Puppet, Chef
  • Atomic/Atomicapp
  • Kubernetes
  • ManageIQ
  • Katella
slide-21
SLIDE 21

myRepo Project Repo CI

Commit Push

Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test

Review/ Appr Deliver Deploy 3rd Party

  • Tomcat
  • Wildfly
  • MongoDB
  • MySQL
  • Vert.x
  • Node.js
  • Docker
  • ActiveMQ
  • FeedHenry
  • Openstack
  • Openshift
slide-22
SLIDE 22

Continuous Integration / Continuous Deployment Image & Package & Metadata Repository src repo Dev./Build QA Production in OHC

Automation Across Environments

Events Assets

slide-23
SLIDE 23

Portable Application

AtomicApp

slide-24
SLIDE 24

Continuous Integration / Continuous Deployment Image & Package & Metadata Repository src repo Dev./Build QA Production in OHC

Automation Across Environments

Events Assets

slide-25
SLIDE 25

PaaS provides an integration point

slide-26
SLIDE 26

DEVOPS: THE WHAT & THE WHY

CULTURE

  • f collaboration

valuing openness and transparency

slide-27
SLIDE 27
slide-28
SLIDE 28

Our culture is too difficult!

Really? Consider post war Japan.

https://leanhomebuilding.wordpress.com/page/4/

slide-29
SLIDE 29

Impose a culture of: Empathy Trust Learning Cooperation Responsibility

?

slide-30
SLIDE 30
slide-31
SLIDE 31

Issues with just “changing culture”

  • Lack of agreed-to model of what “right” culture looks like
  • Different organizations require different behaviors
  • Culture change is difficult to measure and quantify
  • Culture is very hard to impose
  • Culture is an output, not an input
slide-32
SLIDE 32

Culture = f (l, o, i, t, …)

where: l = leadership

  • = organization

i = incentives t = trust … = many other things

Open source offers guidance

slide-33
SLIDE 33

Leadership and vision but no one

  • rganizational structure

Multiple models work but characteristics need to fit the project, participants, and vision

slide-34
SLIDE 34

Solve specific problems

Open source projects often begun because of an individual’s interest or issue DevOps projects (often) benefit by tackling low surface area problem cases (But, like open source, DevOps can become the default)

slide-35
SLIDE 35

Transparency

Who made changes? When and why did they make them? What’s the state of the project? What’s the state of the system? It’s the expectation for both

  • pen source and DevOps
slide-36
SLIDE 36

Rich communication flows matter

Open source projects have been forced to deal with distributed (cross-timezone) teams Tools vary by teams Video getting better F2F time still a big plus

slide-37
SLIDE 37

Don’t fear failure

Open source innovation highly driven by experimentation One of the points of DevOps is to enable better experimentation If it doesn’t work, move on (But fast failures)

slide-38
SLIDE 38

Incentives matter

Open source projects (tend to) reward based on merit and contribution Incentives in DevOps organization (advancement, money, recognition) need to reward trust and cooperation Individual has control over their own success

slide-39
SLIDE 39

Open source is driving DevOps But it’s more than the code!

slide-40
SLIDE 40

Credits

Tools: Dorli Photography, cc/flickr https://www.flickr.com/photos/dorlino/4946061042/ Robots: davidgariepy, cc/flickr https://www.flickr.com/photos/davidgariepy/2495011427/ Kids programming: Esti Alvarez cc license Dev: Nelson Pavlosky/flickr under CC http://www.flickr.com/photos/skyfaller/113796919/ Ops: Leonardo Rizzi/flickr under CC http://www.flickr.com/photos/stars6/4381851322/ Rainbows and Unicorns: http://kaigumo.deviantart.com/art/Unicorns-Fart-Rainbows-3-151273843 Join hands: https://www.flickr.com/photos/vogelium/10565496565/ Thanks to J.P.Morgenthal for some of his thoughts about culture change. See also http://www.slideshare.net/JPMorgenthal1/process- andorgtrumpcultureinentdevops Governance models: http://oss-watch.ac.uk/resources/governancemodels Transparent code: iStockPhoto Linux Collaboration Summit: Linux Foundation Wipeout: https://www.flickr.com/photos/andymorffew/15843725192 No: Wikimedia

slide-41
SLIDE 41

Thank you! Questions?