SlideShare a Scribd company logo
1 of 18
Openstack DevOps Challenges
A Journey from dumb baremetals to production grade Openstack cloud system
Harish Kumar (hkumar@d4devops.org)
Ritesh Raj Sarraf (rrs@researchut.com)
An Adventurous Journey Begins..

CloudRX - A fictitious company who want to setup openstack
production cloud

Implement using DevOps culture

A production grade cloud have so many heterogeneous components
Openstack Components
Non-Openstack
Components
Storage systems like cepph,
Glusterfs, SDN like onos,
opencontrail, opendaylight
Other Support systems
Dns, Dhcp, Monitoring,
Log aggregation etc
Baremetal systems
Hardware config,
OS Provisioning,
Network device setup
Openstack Components
Components in Cloud system

Multi-node Openstack controllers
− All APIs, schedulers, message queues

Multi-node Ceph cluster

Number of compute nodes

Database servers

SDN Controllers

Load balancers

Other supporting systems like DNS, monitoring, etc
CICD Pipeline
Commit changes
to branch
Unit tests Gate tests
Packages Created
And pushed to
Unstable repo
Create repo snapshot
(v100) and select
for further testing
v100 - Acceptance,
integration, upgrade
testing
Promote v100
based on test results
and pushed to
staging/prod repo
Staging Production
CICD – general guidelines

Gate all applications before part of pipeline

Use same tools on all phases of pipeline to avoid change
in behavior

Try to reduce assumptions and hard-coded configurations
to make it adaptable

Handle scalable, distributed systems

Handle heterogeneous applications which have different
release cycle and dependencies
Initial Challenges

Implement a build and test pipeline various other jobs to
support
− Jenkins was the answer without a second thought

Manage Config management and automation
− Options

Puppet

Chef

Ansible
− We choose puppet

Puppet had most complete plugins for the
technology stack we have
Challenges on initial pipeline phases

Need parallel test environments so we can gate/at in
parallel

Should be easily provisioned and removed

Virtual environments an answer to it
− Provision a miniature of cloud on top of a cloud
− Built a tool to provision test cloud on top of an
Openstack cloud based on spec provided
− Easy to provision, easy to delete, use apis to build
openstack virtual test cloud on top of openstack
Automated environment setup Challenges

Bootstrapping such distributed system like an openstack
cloud system is complicated
− Bootstrap the whole openstack cloud
− Bootstrap clusters like rabbitmq, mysql, ceph clusters
− Handle inter-service deps on multi-node environment

How to validate that system is ready for testing
Automated environment setup Continues

Introduction of service discovery tool
− Options – etcd, consul, zookeeper
− We chose consul
− What and why consul

We built orchestration system around consul
− All nodes provisioned with userdata which install
puppet, consul etc
− Configure themselves with puppet according to role
− Each service come up will register themselves to consul
− Dependants will wait till dependency available before
configure
−
Automated environment setup Continues

All services will have healthcheck registered in consul, so
only healthy services would be exposed to the network

Each facility deployed will install validation script

Each node continuously run validations and write its own
state to consul kv

An external system can query centrally to get system state

Consul kv to record various other things like orchestration,
operational tooling
Heterogeneous Applications And Packaging

Challenges

Automated Infrastructure

Package Management

Testing / Regressions
Challenges

Software version consistency, across nodes

Security Vulnerabilities / Fixes

Regressions

Upgrades
Automated Infrastructure

Continuous Integration – Jenkins / Travis

SCM Project Tracking

Ability to mix and match versions

Controlled, Deterministic and Reproducible Builds
Package Management

Simplified management of software

Easier deployment

Basic orchestration

Dependency tracking - Binaries, Libraries

Uniformity across nodes
Testing / Regressions

Multi Staged Environment
− Alpha => Beta => Staging => Prod

Easier Rollbacks

Failures
− Build Time
− Runtime
− (Performance) Regressions
Staging and production

Baremetal management is very much complicated
− Have to work with heterogeneous physical systems
− Different ways for hardware configuration in different
vendors/models
− Operating system provisioning with different hardware
configuration can be complicated
− Different systems may need different capabilities

Rolling upgrades possible?

Handling upgrade failures

Possible rollback in certain situations
Baremetal server management

Undercloud controller with openstack ironic
− All-in-one openstack system with nova with ironic,
neutron with flat provider network, glance, keystone
− Easy to provision, delete and rebuild baremetals - the
undercloud
− Enable to use same tooling on dev/test virtual
environments and staging/production physical
environments

Tools to do various baremetal management tasks
− Hardware configurations, like raid setup
− Automated server enrollment to ironic
− Recording server locations to ironic which can be used
Questions?
THANK YOU!

More Related Content

What's hot

Hostvn ceph in production v1.1 dungtq
Hostvn   ceph in production v1.1 dungtqHostvn   ceph in production v1.1 dungtq
Hostvn ceph in production v1.1 dungtqViet Stack
 
Mastering OpenStack - Episode 10 - Storage Decisions
Mastering OpenStack - Episode 10 - Storage DecisionsMastering OpenStack - Episode 10 - Storage Decisions
Mastering OpenStack - Episode 10 - Storage DecisionsRoozbeh Shafiee
 
Cloud Foundry on OpenStack - An Experience Report | anynines
Cloud Foundry on OpenStack - An Experience Report | anynines Cloud Foundry on OpenStack - An Experience Report | anynines
Cloud Foundry on OpenStack - An Experience Report | anynines anynines GmbH
 
Mastering OpenStack - Episode 04 - Provisioning and Deployment
Mastering OpenStack - Episode 04 - Provisioning and DeploymentMastering OpenStack - Episode 04 - Provisioning and Deployment
Mastering OpenStack - Episode 04 - Provisioning and DeploymentRoozbeh Shafiee
 
Install oracle grid infrastructure on linux 6.6
Install oracle grid infrastructure on linux 6.6Install oracle grid infrastructure on linux 6.6
Install oracle grid infrastructure on linux 6.6Osama Mustafa
 
Mastering OpenStack - Episode 08 - Storage Decisions
Mastering OpenStack - Episode 08 - Storage DecisionsMastering OpenStack - Episode 08 - Storage Decisions
Mastering OpenStack - Episode 08 - Storage DecisionsRoozbeh Shafiee
 
OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...
OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...
OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...Vietnam Open Infrastructure User Group
 
Running Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anyninesRunning Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anyninesanynines GmbH
 
Eouc 12 on 12c osama mustafa
Eouc 12 on 12c osama mustafaEouc 12 on 12c osama mustafa
Eouc 12 on 12c osama mustafaOsama Mustafa
 
Solaris vs Linux
Solaris vs LinuxSolaris vs Linux
Solaris vs LinuxGrigale LTD
 
Mastering OpenStack - Episode 09 - Storage Decisions
Mastering OpenStack - Episode 09 - Storage DecisionsMastering OpenStack - Episode 09 - Storage Decisions
Mastering OpenStack - Episode 09 - Storage DecisionsRoozbeh Shafiee
 
Puppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet
 
Learning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBoxLearning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBoxLeighton Nelson
 
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...OpenStack
 
Experience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anyninesExperience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anyninesanynines GmbH
 
Mastering OpenStack - Episode 12 - Network Design
Mastering OpenStack - Episode 12 - Network DesignMastering OpenStack - Episode 12 - Network Design
Mastering OpenStack - Episode 12 - Network DesignRoozbeh Shafiee
 
Getting started with Mantl
Getting started with MantlGetting started with Mantl
Getting started with MantlPhil Cryer
 
#OSATH Deploy OpenStack: DevStack (cont'd)
#OSATH Deploy OpenStack: DevStack (cont'd)#OSATH Deploy OpenStack: DevStack (cont'd)
#OSATH Deploy OpenStack: DevStack (cont'd)Thanassis Parathyras
 

What's hot (20)

Hostvn ceph in production v1.1 dungtq
Hostvn   ceph in production v1.1 dungtqHostvn   ceph in production v1.1 dungtq
Hostvn ceph in production v1.1 dungtq
 
Mastering OpenStack - Episode 10 - Storage Decisions
Mastering OpenStack - Episode 10 - Storage DecisionsMastering OpenStack - Episode 10 - Storage Decisions
Mastering OpenStack - Episode 10 - Storage Decisions
 
Cloud Foundry on OpenStack - An Experience Report | anynines
Cloud Foundry on OpenStack - An Experience Report | anynines Cloud Foundry on OpenStack - An Experience Report | anynines
Cloud Foundry on OpenStack - An Experience Report | anynines
 
Mastering OpenStack - Episode 04 - Provisioning and Deployment
Mastering OpenStack - Episode 04 - Provisioning and DeploymentMastering OpenStack - Episode 04 - Provisioning and Deployment
Mastering OpenStack - Episode 04 - Provisioning and Deployment
 
Install oracle grid infrastructure on linux 6.6
Install oracle grid infrastructure on linux 6.6Install oracle grid infrastructure on linux 6.6
Install oracle grid infrastructure on linux 6.6
 
Mastering OpenStack - Episode 08 - Storage Decisions
Mastering OpenStack - Episode 08 - Storage DecisionsMastering OpenStack - Episode 08 - Storage Decisions
Mastering OpenStack - Episode 08 - Storage Decisions
 
Python on exadata
Python on exadataPython on exadata
Python on exadata
 
OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...
OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...
OpenStack QA Tooling & How to use it for Production Cloud Testing | Ghanshyam...
 
Running Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anyninesRunning Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anynines
 
Eouc 12 on 12c osama mustafa
Eouc 12 on 12c osama mustafaEouc 12 on 12c osama mustafa
Eouc 12 on 12c osama mustafa
 
Solaris vs Linux
Solaris vs LinuxSolaris vs Linux
Solaris vs Linux
 
Mastering OpenStack - Episode 09 - Storage Decisions
Mastering OpenStack - Episode 09 - Storage DecisionsMastering OpenStack - Episode 09 - Storage Decisions
Mastering OpenStack - Episode 09 - Storage Decisions
 
Puppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet Camp London 2014: Keynote
Puppet Camp London 2014: Keynote
 
Learning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBoxLearning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBox
 
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
 
Experience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anyninesExperience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anynines
 
Mastering OpenStack - Episode 12 - Network Design
Mastering OpenStack - Episode 12 - Network DesignMastering OpenStack - Episode 12 - Network Design
Mastering OpenStack - Episode 12 - Network Design
 
Getting started with Mantl
Getting started with MantlGetting started with Mantl
Getting started with Mantl
 
Ansible Automation - Enterprise Use Cases | Juncheng Anthony Lin
Ansible Automation - Enterprise Use Cases | Juncheng Anthony LinAnsible Automation - Enterprise Use Cases | Juncheng Anthony Lin
Ansible Automation - Enterprise Use Cases | Juncheng Anthony Lin
 
#OSATH Deploy OpenStack: DevStack (cont'd)
#OSATH Deploy OpenStack: DevStack (cont'd)#OSATH Deploy OpenStack: DevStack (cont'd)
#OSATH Deploy OpenStack: DevStack (cont'd)
 

Viewers also liked

Velocity 2014 Tool Chain Choices
Velocity 2014 Tool Chain ChoicesVelocity 2014 Tool Chain Choices
Velocity 2014 Tool Chain ChoicesMark Sigler
 
How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingAcquia
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopMichael Palotas
 
Agile Testing Introduction
Agile Testing IntroductionAgile Testing Introduction
Agile Testing IntroductionHai Tran Son
 
Test management in scrum
Test management in scrumTest management in scrum
Test management in scrumQA Club Kiev
 
SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8Rajwinder Singh
 
Agile Qa Framework Jacky Wu
Agile Qa Framework Jacky WuAgile Qa Framework Jacky Wu
Agile Qa Framework Jacky WuJacky Wu
 
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...Serena Software
 
Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentJoseph Beale
 
How to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile TestingHow to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile TestingAtlassian
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8a34sharm
 
EXTENT-2016: Managing QA for Complex Systems in Agile Development Framework
EXTENT-2016: Managing QA for Complex Systems in Agile Development FrameworkEXTENT-2016: Managing QA for Complex Systems in Agile Development Framework
EXTENT-2016: Managing QA for Complex Systems in Agile Development FrameworkIosif Itkin
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentationCarl Bruiners
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsVipul Gupta
 
Agile Testing: Strength Through Interdependence
Agile Testing: Strength Through InterdependenceAgile Testing: Strength Through Interdependence
Agile Testing: Strength Through InterdependenceEBG Consulting, Inc.
 

Viewers also liked (20)

Docker in prod
Docker in prodDocker in prod
Docker in prod
 
Velocity 2014 Tool Chain Choices
Velocity 2014 Tool Chain ChoicesVelocity 2014 Tool Chain Choices
Velocity 2014 Tool Chain Choices
 
How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated Testing
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery Workshop
 
calmio-cicd-containers
calmio-cicd-containerscalmio-cicd-containers
calmio-cicd-containers
 
Agile Testing Introduction
Agile Testing IntroductionAgile Testing Introduction
Agile Testing Introduction
 
Test management in scrum
Test management in scrumTest management in scrum
Test management in scrum
 
SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8SanDiego_DevOps_Meetup_9212016-v8
SanDiego_DevOps_Meetup_9212016-v8
 
Agile Qa Framework Jacky Wu
Agile Qa Framework Jacky WuAgile Qa Framework Jacky Wu
Agile Qa Framework Jacky Wu
 
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
 
Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile Environment
 
How to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile TestingHow to Build in Quality from Day 1 using Lean QA and Agile Testing
How to Build in Quality from Day 1 using Lean QA and Agile Testing
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
 
EXTENT-2016: Managing QA for Complex Systems in Agile Development Framework
EXTENT-2016: Managing QA for Complex Systems in Agile Development FrameworkEXTENT-2016: Managing QA for Complex Systems in Agile Development Framework
EXTENT-2016: Managing QA for Complex Systems in Agile Development Framework
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous delivery
 
Continuos Delivery
Continuos DeliveryContinuos Delivery
Continuos Delivery
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroids
 
Test Automation in Agile
Test Automation in AgileTest Automation in Agile
Test Automation in Agile
 
Agile Testing: Strength Through Interdependence
Agile Testing: Strength Through InterdependenceAgile Testing: Strength Through Interdependence
Agile Testing: Strength Through Interdependence
 

Similar to Openstack devops challenges a journey from dump baremetal to functional openstack cloud system - final

Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges openstackindia
 
A Bit of Everything Chef
A Bit of Everything ChefA Bit of Everything Chef
A Bit of Everything ChefMandi Walls
 
Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)David Chou
 
Performance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsPerformance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsMaarten Smeets
 
An Open, Open source way to enable your Cloud Native Journey
An Open, Open source way to enable your Cloud Native JourneyAn Open, Open source way to enable your Cloud Native Journey
An Open, Open source way to enable your Cloud Native Journeyinwin stack
 
Baylisa - Dive Into OpenStack
Baylisa - Dive Into OpenStackBaylisa - Dive Into OpenStack
Baylisa - Dive Into OpenStackJesse Andrews
 
Compass first meetup
Compass first meetupCompass first meetup
Compass first meetupShuo Yang
 
Continuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainContinuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainSerena Software
 
Private Cloud with Open Stack, Docker
Private Cloud with Open Stack, DockerPrivate Cloud with Open Stack, Docker
Private Cloud with Open Stack, DockerDavinder Kohli
 
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...DevOps.com
 
Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3Juan Herrera Utande
 
Mmik powershell dsc_slideshare_v1
Mmik powershell dsc_slideshare_v1Mmik powershell dsc_slideshare_v1
Mmik powershell dsc_slideshare_v1Mmik Huang
 
Mmik_Powershell_DSC_Azure_DSC
Mmik_Powershell_DSC_Azure_DSCMmik_Powershell_DSC_Azure_DSC
Mmik_Powershell_DSC_Azure_DSCMmik Huang
 
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014ChinaNetCloud
 
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...OpenNebula Project
 
Cloudstack vs Openstack
Cloudstack vs OpenstackCloudstack vs Openstack
Cloudstack vs OpenstackHuzefa Husain
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSAmazon Web Services
 

Similar to Openstack devops challenges a journey from dump baremetal to functional openstack cloud system - final (20)

Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges
 
A Bit of Everything Chef
A Bit of Everything ChefA Bit of Everything Chef
A Bit of Everything Chef
 
Apache Cloudstack QA Strategy
Apache Cloudstack QA StrategyApache Cloudstack QA Strategy
Apache Cloudstack QA Strategy
 
Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)Java on Windows Azure (Cloud Computing Expo 2010)
Java on Windows Azure (Cloud Computing Expo 2010)
 
Kash Kubernetified
Kash KubernetifiedKash Kubernetified
Kash Kubernetified
 
Performance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMsPerformance of Microservice Frameworks on different JVMs
Performance of Microservice Frameworks on different JVMs
 
An Open, Open source way to enable your Cloud Native Journey
An Open, Open source way to enable your Cloud Native JourneyAn Open, Open source way to enable your Cloud Native Journey
An Open, Open source way to enable your Cloud Native Journey
 
Baylisa - Dive Into OpenStack
Baylisa - Dive Into OpenStackBaylisa - Dive Into OpenStack
Baylisa - Dive Into OpenStack
 
Compass first meetup
Compass first meetupCompass first meetup
Compass first meetup
 
Continuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainContinuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchain
 
Private Cloud with Open Stack, Docker
Private Cloud with Open Stack, DockerPrivate Cloud with Open Stack, Docker
Private Cloud with Open Stack, Docker
 
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
Zero to 1000+ Applications - Large Scale CD Adoption at Cisco with Spinnaker ...
 
Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3Best practices in Deploying SUSE CaaS Platform v3
Best practices in Deploying SUSE CaaS Platform v3
 
Mmik powershell dsc_slideshare_v1
Mmik powershell dsc_slideshare_v1Mmik powershell dsc_slideshare_v1
Mmik powershell dsc_slideshare_v1
 
Mmik_Powershell_DSC_Azure_DSC
Mmik_Powershell_DSC_Azure_DSCMmik_Powershell_DSC_Azure_DSC
Mmik_Powershell_DSC_Azure_DSC
 
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
 
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...OpenNebulaconf2017US:  Paying down technical debt with "one" dollar bills by ...
OpenNebulaconf2017US: Paying down technical debt with "one" dollar bills by ...
 
Cloudstack vs Openstack
Cloudstack vs OpenstackCloudstack vs Openstack
Cloudstack vs Openstack
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
Cl221
Cl221Cl221
Cl221
 

Recently uploaded

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 

Recently uploaded (20)

E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 

Openstack devops challenges a journey from dump baremetal to functional openstack cloud system - final

  • 1. Openstack DevOps Challenges A Journey from dumb baremetals to production grade Openstack cloud system Harish Kumar (hkumar@d4devops.org) Ritesh Raj Sarraf (rrs@researchut.com)
  • 2. An Adventurous Journey Begins..  CloudRX - A fictitious company who want to setup openstack production cloud  Implement using DevOps culture  A production grade cloud have so many heterogeneous components Openstack Components Non-Openstack Components Storage systems like cepph, Glusterfs, SDN like onos, opencontrail, opendaylight Other Support systems Dns, Dhcp, Monitoring, Log aggregation etc Baremetal systems Hardware config, OS Provisioning, Network device setup Openstack Components
  • 3. Components in Cloud system  Multi-node Openstack controllers − All APIs, schedulers, message queues  Multi-node Ceph cluster  Number of compute nodes  Database servers  SDN Controllers  Load balancers  Other supporting systems like DNS, monitoring, etc
  • 4. CICD Pipeline Commit changes to branch Unit tests Gate tests Packages Created And pushed to Unstable repo Create repo snapshot (v100) and select for further testing v100 - Acceptance, integration, upgrade testing Promote v100 based on test results and pushed to staging/prod repo Staging Production
  • 5. CICD – general guidelines  Gate all applications before part of pipeline  Use same tools on all phases of pipeline to avoid change in behavior  Try to reduce assumptions and hard-coded configurations to make it adaptable  Handle scalable, distributed systems  Handle heterogeneous applications which have different release cycle and dependencies
  • 6. Initial Challenges  Implement a build and test pipeline various other jobs to support − Jenkins was the answer without a second thought  Manage Config management and automation − Options  Puppet  Chef  Ansible − We choose puppet  Puppet had most complete plugins for the technology stack we have
  • 7. Challenges on initial pipeline phases  Need parallel test environments so we can gate/at in parallel  Should be easily provisioned and removed  Virtual environments an answer to it − Provision a miniature of cloud on top of a cloud − Built a tool to provision test cloud on top of an Openstack cloud based on spec provided − Easy to provision, easy to delete, use apis to build openstack virtual test cloud on top of openstack
  • 8. Automated environment setup Challenges  Bootstrapping such distributed system like an openstack cloud system is complicated − Bootstrap the whole openstack cloud − Bootstrap clusters like rabbitmq, mysql, ceph clusters − Handle inter-service deps on multi-node environment  How to validate that system is ready for testing
  • 9. Automated environment setup Continues  Introduction of service discovery tool − Options – etcd, consul, zookeeper − We chose consul − What and why consul  We built orchestration system around consul − All nodes provisioned with userdata which install puppet, consul etc − Configure themselves with puppet according to role − Each service come up will register themselves to consul − Dependants will wait till dependency available before configure −
  • 10. Automated environment setup Continues  All services will have healthcheck registered in consul, so only healthy services would be exposed to the network  Each facility deployed will install validation script  Each node continuously run validations and write its own state to consul kv  An external system can query centrally to get system state  Consul kv to record various other things like orchestration, operational tooling
  • 11. Heterogeneous Applications And Packaging  Challenges  Automated Infrastructure  Package Management  Testing / Regressions
  • 12. Challenges  Software version consistency, across nodes  Security Vulnerabilities / Fixes  Regressions  Upgrades
  • 13. Automated Infrastructure  Continuous Integration – Jenkins / Travis  SCM Project Tracking  Ability to mix and match versions  Controlled, Deterministic and Reproducible Builds
  • 14. Package Management  Simplified management of software  Easier deployment  Basic orchestration  Dependency tracking - Binaries, Libraries  Uniformity across nodes
  • 15. Testing / Regressions  Multi Staged Environment − Alpha => Beta => Staging => Prod  Easier Rollbacks  Failures − Build Time − Runtime − (Performance) Regressions
  • 16. Staging and production  Baremetal management is very much complicated − Have to work with heterogeneous physical systems − Different ways for hardware configuration in different vendors/models − Operating system provisioning with different hardware configuration can be complicated − Different systems may need different capabilities  Rolling upgrades possible?  Handling upgrade failures  Possible rollback in certain situations
  • 17. Baremetal server management  Undercloud controller with openstack ironic − All-in-one openstack system with nova with ironic, neutron with flat provider network, glance, keystone − Easy to provision, delete and rebuild baremetals - the undercloud − Enable to use same tooling on dev/test virtual environments and staging/production physical environments  Tools to do various baremetal management tasks − Hardware configurations, like raid setup − Automated server enrollment to ironic − Recording server locations to ironic which can be used