openstack @ workday - ci/cd

19
OpenStack @ Workday

Upload: edgar-magana

Post on 13-Apr-2017

1.416 views

Category:

Software


2 download

TRANSCRIPT

Page 1: OpenStack @ Workday - CI/CD

OpenStack @ Workday

Page 2: OpenStack @ Workday - CI/CD

Introductions

Imtiaz Chowdhury------Senior Software Engineer@imtiazc

Edgar Magana, PhD------Cloud Operations ArchitectNeutron Core@emaganap

Page 3: OpenStack @ Workday - CI/CD

Outline Operations Challenges Architecture Overview CI – Pipeline CI – Environments

– Desktop– Virtual Machines (OOO)– Bare-Metal

Summary Q & A

Page 4: OpenStack @ Workday - CI/CD

Ops Challenges: Automation

Idempotent

Scalable

Secure– SSL on End Points– SSL on RabbitMQ– SSL on MySQL– IPTables

Stable

Production Readiness– Logging– Monitoring

Bonded physical interfaces per server

Multi-tenant

One network per tenant with contrail policy groups enforcement

CI - CD

Page 5: OpenStack @ Workday - CI/CD

OpenStack @ Workday

Page 6: OpenStack @ Workday - CI/CD

CI/CD @ Workday for OpenStack

Page 7: OpenStack @ Workday - CI/CD

How it started: Prototype #1

Controller Compute Tempest

Build once and reuse

SDN

NOTE: https://github.com/openstack/openstack-chef-repo

Rally

Page 8: OpenStack @ Workday - CI/CD

Drivers for Containers

Lightweight – many containers on a single VM

Re-usable – Build once and deploy

Shareable –share common components (Chef server, Tempest etc.)

Page 9: OpenStack @ Workday - CI/CD

Chef Development Framework

Host (Fedora 20) Virtual Machine

DN

S

LDA

P

Controller Compute TempestSDN

Docker Engine

Page 10: OpenStack @ Workday - CI/CD

Iteration #1: With Neutron

Development Workflow

Page 11: OpenStack @ Workday - CI/CD

Development Workflow

Iteration #2: (OpenContrail)

Page 12: OpenStack @ Workday - CI/CD

Development Environment - Network Diagram

Page 13: OpenStack @ Workday - CI/CD

Building CI/CD on OpenStack and OpenContrail

Page 14: OpenStack @ Workday - CI/CD

OpenStack @ Workday Environments

CI on Virtual Machines (OoO)–Reproducible disposable test environment

integrated with Workday’s Jenkins/Gerrit build pipeline.

–Runs on OpenStack Icehouse–Ruby Fog Library

Page 15: OpenStack @ Workday - CI/CD

CI Environment on Virtual Machines Workflow

1 2

3

4

5

6

Page 16: OpenStack @ Workday - CI/CD

OoO - CI Workflow

Jenkins Openstack Controller

Git repo

Chef

Launch Chef Server

Fetch Chef artifacts

Create OS controllerSDN, ComputeTempest

Controll

er

SDN

Com

pute

Tempest

Run Chef Clients

Run Tempest

Page 17: OpenStack @ Workday - CI/CD

Road to production

Dev• Build and test

Virtual

• Create Gerrit review• VM CI passes

Bare Metal

• Promote cookbooks to production

Page 18: OpenStack @ Workday - CI/CD

Key Take Away

It took a number of iterations Docker on Vagrant proved to be a very powerful

Chef development environment– Rapid development and prototyping– Containers are very lightweight– You can share container images across teams

Increased development agility by building CI on Openstack

Predictable deployment outcome

Page 19: OpenStack @ Workday - CI/CD

How it all started..

Build Openstack cloud with community cookbooks and packages Started with openstack-chef, a community project Realized its limitations Consistent and repeatable environment for developers, operations Share common components Test framework Continuous integration framework

NOTE: https://github.com/openstack/openstack-chef-repo