31
DevOps w/ OpenShif t ManageIQ Design Summit '16 - Fabien Dupont -

DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Embed Size (px)

Citation preview

Page 1: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

DevOpsw/

OpenShiftManageIQ Design

Summit '16- Fabien Dupont -

Page 2: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

About this prezoFabien Dupont

Red Hat France - Cloud Architect

Working with CloudForms since 2.5 years

Use case identified during customer delivery

2

Page 3: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

What is DevOps?

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

Page 4: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

A typical DevOps workflow

4

Page 5: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Tools for operations/infrastructureContainerized infrastructureOrchestrationPolicy-based governanceConfiguration managementAutomationPackagingUpdates

5

Page 6: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Tools for developer workflows

CollaborationCI/CDIssue TrackingSource Code ManagementCode reviewPlatform-as-a-Service

6

Page 7: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Application

Factory7

Page 8: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

When Dev and Ops unite...

8

Page 9: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

CI/CD Process

9

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Page 10: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Ecosystem

10

FreeIPA - Authentication, users and groups management

GitLab - Source Code Management, Review, Ticketing, Documentation, Pastebin

OpenShift - Platform-as-a-Service

ManageIQ - Cloud Management Platform, Orchestrator

Page 11: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Ecosystem / FreeIPA

11

Integrated security information management solution

Provides centralized authentication, authorization and account information

Based on standards open source implementation :- LDAP - 389 Directory Server- DNS - Bind w/ LDAP backend- Kerberos - MIT- PKI - Dogtag

Along with CLI and web interface.

Bi-directional Active Directory integration.

⇒ Used for consistent authentication, DNS and certificates.

Page 12: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Ecosystem / GitLab

12

The core of our configuration management:

- Source code management, based on Git

- Tickets management: issues, enhancements, whatever...

- Code review through Merge Requests

- Continuous Integration engine

Page 13: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Ecosystem / OpenShift Origin

13

Platform-as-a-Service

- Leverages Docker & Kubernetes to deploy applications seemlessly

- Build your container from Source (Git) or Dockerfiles

- Deploy any Docker image with advanced scheduling

- Manage your application lifecycle: blue/gree, A/B, etc…

- Integrate with Eclipse

Page 14: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Ecosystem / ManageIQ

14

Should I really present it ?

Used to orchestrate the provisioning of our DevOps tooling.

Page 15: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

15

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

CollaborationCoding ⇒ Vim (what else?)Kanban ⇒ GitLab Kanban BoardDocs ⇒ GitLab WikiPastebin ⇒ GitLab SnippetsTicketing ⇒ GitLab IssuesChat ⇒ GitLab Mattermost

CI/CD Process

Page 16: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

CI/CD Process

16

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Asset ManagementCode/Config ⇒ GitLab ReposDocs ⇒ GitLab WikiPolicy/Rules ⇒ ManageIQ

Page 17: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

CI/CD Process

17

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Continuous IntegrationGitLab-CI

Page 18: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

18

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Code/Image BuildOpenShift Source-to-Image

CI/CD Process

Page 19: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

19

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Review / ApprovalGitLab Merge Requests / Issues

CI/CD Process

Page 20: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

20

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

DeliveryImages ⇒ Docker, ImageStreamApplications ⇒ OpenShift Template

CI/CD Process

Page 21: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

21

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Code/Image BuildOpenShift DeploymentConfig

CI/CD Process

Page 22: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

22

ProjectRepo

Build Test Review Deliver DeployMy Repo

Monitor

BuildRepo

ReleaseRepo

Third Party

CI CD

Local Test

commit push

pass / fail

Tomcat, Wildfly, JBoss, MySQL, MongoDB, Vert.x, Node.js, Docker, ActiveMQ, FeedHenry, etc...

CI/CD Process

Page 23: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

FactoryControlCenter

23

Page 24: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

A demo is worth a thousand words

24

Page 25: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Implementation detailsSerialize data in Automate tree as instances ⇒ waiting for generic objects

Deploy children services from buttons and REST API

Lot of rework on dialogs along the time, to reduce the number of questions

Test, test, test… Thanks to the API.

25

Page 26: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Service catalog items [1/2]

26

Page 27: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Service catalog items [2/2]

27

Page 28: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Next stepsCreate a Mattermost team per project

Allow for more Lifecycles (don't assume)

Deploy .gitlab-ci.yml for each lifecycle

Anything from field feedback...

28

Page 29: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Questions?

29

Page 30: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

References / CreditsOpenShift Origin - https://www.openshift.org

GitLab - https://gitlab.com

Code review via GitLab Merge Requests - https://goo.gl/AOcuLc

Emmanuel Bernard (Red Hat) - Lots of slides borrowed !

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/ 30

Page 31: DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016

Thank you.Fabien Dupont - Cloud Architect -

[email protected]

31