SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
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
– Leader election with consul session locking to bootstrap clusters
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 in various places
like in ceph crushmap
● Some ideas about rolling upgrades, easier rollback support etc
Questions

Mais conteúdo relacionado

Mais procurados

Open stack in action enovance-quantum in action
Open stack in action enovance-quantum in actionOpen stack in action enovance-quantum in action
Open stack in action enovance-quantum in action
eNovance
 
6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view
openstackindia
 
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
OpenStack Korea Community
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
openstackindia
 

Mais procurados (20)

Ceph & OpenStack talk given @ OpenStack Meetup @ Bangalore, June 2015
Ceph & OpenStack talk given @ OpenStack Meetup @ Bangalore, June 2015Ceph & OpenStack talk given @ OpenStack Meetup @ Bangalore, June 2015
Ceph & OpenStack talk given @ OpenStack Meetup @ Bangalore, June 2015
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack Ansible
 
Openstack ansible
Openstack ansibleOpenstack ansible
Openstack ansible
 
OPNFV & OpenStack
OPNFV & OpenStackOPNFV & OpenStack
OPNFV & OpenStack
 
Open stack in action enovance-quantum in action
Open stack in action enovance-quantum in actionOpen stack in action enovance-quantum in action
Open stack in action enovance-quantum in action
 
Openstack components as containerized microservices
Openstack components as containerized microservicesOpenstack components as containerized microservices
Openstack components as containerized microservices
 
Andy McCrae, Rackspace - Using Ansible to Deploy and Automate OpenStack, Open...
Andy McCrae, Rackspace - Using Ansible to Deploy and Automate OpenStack, Open...Andy McCrae, Rackspace - Using Ansible to Deploy and Automate OpenStack, Open...
Andy McCrae, Rackspace - Using Ansible to Deploy and Automate OpenStack, Open...
 
Containers and OpenStack: Marc Van Hoof, Kumulus: Containers and OpenStack
Containers and OpenStack: Marc Van Hoof, Kumulus: Containers and OpenStackContainers and OpenStack: Marc Van Hoof, Kumulus: Containers and OpenStack
Containers and OpenStack: Marc Van Hoof, Kumulus: Containers and OpenStack
 
Mastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple ArchitecturesMastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple Architectures
 
VietOpenStack meetup 7th High Performance VM
VietOpenStack meetup 7th High Performance VMVietOpenStack meetup 7th High Performance VM
VietOpenStack meetup 7th High Performance VM
 
Mastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesMastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple Architectures
 
OpenStack Best Practices and Considerations - terasky tech day
OpenStack Best Practices and Considerations  - terasky tech dayOpenStack Best Practices and Considerations  - terasky tech day
OpenStack Best Practices and Considerations - terasky tech day
 
Mirantis v OpenStack Ansible Dawn of Production
Mirantis v OpenStack Ansible Dawn of ProductionMirantis v OpenStack Ansible Dawn of Production
Mirantis v OpenStack Ansible Dawn of Production
 
6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view
 
The Battle of the distros - OS Summit Atlanta2014
The Battle of the distros - OS Summit Atlanta2014The Battle of the distros - OS Summit Atlanta2014
The Battle of the distros - OS Summit Atlanta2014
 
Mastering OpenStack - Episode 08 - Storage Decisions
Mastering OpenStack - Episode 08 - Storage DecisionsMastering OpenStack - Episode 08 - Storage Decisions
Mastering OpenStack - Episode 08 - Storage Decisions
 
SDN Symposium - Cybera
SDN Symposium - CyberaSDN Symposium - Cybera
SDN Symposium - Cybera
 
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
 
OpenStack Telco Architecture: OpenStack Summit Boston 2017
OpenStack Telco Architecture: OpenStack Summit Boston 2017OpenStack Telco Architecture: OpenStack Summit Boston 2017
OpenStack Telco Architecture: OpenStack Summit Boston 2017
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
 

Destaque

TechStory_CLASA_A4_eng_[1]
TechStory_CLASA_A4_eng_[1]TechStory_CLASA_A4_eng_[1]
TechStory_CLASA_A4_eng_[1]
Ruaidhri Gleeson
 
Same looks, different compo...
Same looks, different compo...Same looks, different compo...
Same looks, different compo...
Ruaidhri Gleeson
 
4.4 fractional exponents notes 2
4.4 fractional exponents notes 24.4 fractional exponents notes 2
4.4 fractional exponents notes 2
Edith Steeves
 
Nadya ip 9ci
Nadya ip 9ciNadya ip 9ci
Nadya ip 9ci
nadyaipi
 

Destaque (20)

Openstack 2016 Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...
Openstack 2016  Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...Openstack 2016  Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...
Openstack 2016 Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...
 
Why so continuous
Why so continuousWhy so continuous
Why so continuous
 
OSCON 2012 OpenStack Automation and DevOps Best Practices
OSCON 2012 OpenStack Automation and DevOps Best PracticesOSCON 2012 OpenStack Automation and DevOps Best Practices
OSCON 2012 OpenStack Automation and DevOps Best Practices
 
How Openstack is Built
How Openstack is BuiltHow Openstack is Built
How Openstack is Built
 
Barak Merimovich (GIgaSpaces) & Gal Moav (Ravello) - Devstack on Demand, Open...
Barak Merimovich (GIgaSpaces) & Gal Moav (Ravello) - Devstack on Demand, Open...Barak Merimovich (GIgaSpaces) & Gal Moav (Ravello) - Devstack on Demand, Open...
Barak Merimovich (GIgaSpaces) & Gal Moav (Ravello) - Devstack on Demand, Open...
 
TechStory_CLASA_A4_eng_[1]
TechStory_CLASA_A4_eng_[1]TechStory_CLASA_A4_eng_[1]
TechStory_CLASA_A4_eng_[1]
 
Tarea 3: Competencias informáticas
Tarea 3: Competencias informáticasTarea 3: Competencias informáticas
Tarea 3: Competencias informáticas
 
Same looks, different compo...
Same looks, different compo...Same looks, different compo...
Same looks, different compo...
 
muhammad salman LI ppt
muhammad salman LI pptmuhammad salman LI ppt
muhammad salman LI ppt
 
Application Management in Openstack
Application Management in Openstack Application Management in Openstack
Application Management in Openstack
 
Unix in the Cloud — Ignorance, Stagnation, Obsolescence
Unix in the Cloud — Ignorance, Stagnation, ObsolescenceUnix in the Cloud — Ignorance, Stagnation, Obsolescence
Unix in the Cloud — Ignorance, Stagnation, Obsolescence
 
Eli Mansoor, Rackspace - The Rackspace Story, OpenStacl Israel 2015
Eli Mansoor, Rackspace - The Rackspace Story, OpenStacl Israel 2015Eli Mansoor, Rackspace - The Rackspace Story, OpenStacl Israel 2015
Eli Mansoor, Rackspace - The Rackspace Story, OpenStacl Israel 2015
 
4.4 fractional exponents notes 2
4.4 fractional exponents notes 24.4 fractional exponents notes 2
4.4 fractional exponents notes 2
 
Nadya ip 9ci
Nadya ip 9ciNadya ip 9ci
Nadya ip 9ci
 
Ieeepro techno solutions ieee java project - privacy-preserving multi-keywor...
Ieeepro techno solutions  ieee java project - privacy-preserving multi-keywor...Ieeepro techno solutions  ieee java project - privacy-preserving multi-keywor...
Ieeepro techno solutions ieee java project - privacy-preserving multi-keywor...
 
HIPERVINCULOS
HIPERVINCULOSHIPERVINCULOS
HIPERVINCULOS
 
Foire de Caen 2015 - Communiqué de Presse
Foire de Caen 2015 - Communiqué de PresseFoire de Caen 2015 - Communiqué de Presse
Foire de Caen 2015 - Communiqué de Presse
 
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
Dov Shalev, Kontron - Quantum Leap in Converged Modular Servers for Cloud Inf...
 
OpenStack in Production
OpenStack in ProductionOpenStack in Production
OpenStack in Production
 
Heat optimization
Heat optimizationHeat optimization
Heat optimization
 

Semelhante a Openstack devops challenges

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
Maarten Smeets
 
Infrastructure Considerations : Design : "webops"
Infrastructure Considerations : Design : "webops"Infrastructure Considerations : Design : "webops"
Infrastructure Considerations : Design : "webops"
Piyush Kumar
 

Semelhante a Openstack devops challenges (20)

Openstack devops challenges a journey from dump baremetal to functional ope...
Openstack devops challenges   a journey from dump baremetal to functional ope...Openstack devops challenges   a journey from dump baremetal to functional ope...
Openstack devops challenges a journey from dump baremetal to functional ope...
 
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
 
OSGi Cloud Ecosystems - David Bosschaert
OSGi Cloud Ecosystems - David BosschaertOSGi Cloud Ecosystems - David Bosschaert
OSGi Cloud Ecosystems - David Bosschaert
 
Kash Kubernetified
Kash KubernetifiedKash Kubernetified
Kash Kubernetified
 
OSGi and Cloud Computing - David Bosschaert
OSGi and Cloud Computing - David BosschaertOSGi and Cloud Computing - David Bosschaert
OSGi and Cloud Computing - David Bosschaert
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as code
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014
 
From monolith to microservice with containers.
From monolith to microservice with containers.From monolith to microservice with containers.
From monolith to microservice with containers.
 
Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansSanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticians
 
Flexible compute
Flexible computeFlexible compute
Flexible compute
 
DataStax: Dockerizing Cassandra on Modern Linux
DataStax: Dockerizing Cassandra on Modern LinuxDataStax: Dockerizing Cassandra on Modern Linux
DataStax: Dockerizing Cassandra on Modern Linux
 
Cassandra on Docker
Cassandra on DockerCassandra on Docker
Cassandra on Docker
 
Amis conference soa deployment. the dirty tricks using bamboo, nexus and xl ...
Amis conference soa deployment. the dirty tricks using  bamboo, nexus and xl ...Amis conference soa deployment. the dirty tricks using  bamboo, nexus and xl ...
Amis conference soa deployment. the dirty tricks using bamboo, nexus and xl ...
 
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
 
Infra / Cont delivery - 3rd party automation
Infra / Cont delivery - 3rd party automationInfra / Cont delivery - 3rd party automation
Infra / Cont delivery - 3rd party automation
 
Confoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile InfrastructureConfoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile Infrastructure
 
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)
 
Infrastructure Considerations : Design : "webops"
Infrastructure Considerations : Design : "webops"Infrastructure Considerations : Design : "webops"
Infrastructure Considerations : Design : "webops"
 

Mais de openstackindia

Outreachy with-openstack-zaqar
Outreachy with-openstack-zaqarOutreachy with-openstack-zaqar
Outreachy with-openstack-zaqar
openstackindia
 
Why open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomedWhy open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomed
openstackindia
 
OpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse EngineeredOpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse Engineered
openstackindia
 
State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStack
openstackindia
 
Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone
openstackindia
 
8 devstack beyond_hello-world
8 devstack beyond_hello-world8 devstack beyond_hello-world
8 devstack beyond_hello-world
openstackindia
 
7 distributed storage_open_stack
7 distributed storage_open_stack7 distributed storage_open_stack
7 distributed storage_open_stack
openstackindia
 

Mais de openstackindia (20)

Guts & OpenStack migration
Guts & OpenStack migrationGuts & OpenStack migration
Guts & OpenStack migration
 
Your first patch to OpenStack
Your first patch to OpenStackYour first patch to OpenStack
Your first patch to OpenStack
 
OpenStack Neutron Behind The Senes
OpenStack Neutron Behind The SenesOpenStack Neutron Behind The Senes
OpenStack Neutron Behind The Senes
 
OpenStack Storage Buddy Ceph
OpenStack Storage Buddy CephOpenStack Storage Buddy Ceph
OpenStack Storage Buddy Ceph
 
OpenStack Watcher
OpenStack WatcherOpenStack Watcher
OpenStack Watcher
 
State of Containers in OpenStack
State of Containers in OpenStackState of Containers in OpenStack
State of Containers in OpenStack
 
The OpenStack Contribution Workflow
The OpenStack Contribution WorkflowThe OpenStack Contribution Workflow
The OpenStack Contribution Workflow
 
Introduction to Cinder
Introduction to CinderIntroduction to Cinder
Introduction to Cinder
 
OpenStack NFV Edge computing for IOT microservices
OpenStack NFV Edge computing for IOT microservicesOpenStack NFV Edge computing for IOT microservices
OpenStack NFV Edge computing for IOT microservices
 
OpenStack Tempest and REST API testing
OpenStack Tempest and REST API testingOpenStack Tempest and REST API testing
OpenStack Tempest and REST API testing
 
Ceph openstack-jun-2015-meetup
Ceph openstack-jun-2015-meetupCeph openstack-jun-2015-meetup
Ceph openstack-jun-2015-meetup
 
Outreachy with-openstack-zaqar
Outreachy with-openstack-zaqarOutreachy with-openstack-zaqar
Outreachy with-openstack-zaqar
 
OpenStack Heat
OpenStack HeatOpenStack Heat
OpenStack Heat
 
Why open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomedWhy open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomed
 
OpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse EngineeredOpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse Engineered
 
State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStack
 
Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone
 
8 devstack beyond_hello-world
8 devstack beyond_hello-world8 devstack beyond_hello-world
8 devstack beyond_hello-world
 
7 distributed storage_open_stack
7 distributed storage_open_stack7 distributed storage_open_stack
7 distributed storage_open_stack
 
5 cisco open_stack
5 cisco open_stack5 cisco open_stack
5 cisco open_stack
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 

Openstack devops challenges

  • 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 – Leader election with consul session locking to bootstrap clusters
  • 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 in various places like in ceph crushmap ● Some ideas about rolling upgrades, easier rollback support etc