SlideShare a Scribd company logo
1 of 52
Download to read offline
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Deep dive into the Microsoft
OpenStack CI infrastructure
Alessandro Pilotti
Cloudbase Solutions
Hyper-V MVP
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Huge thanks to our sponsors & partners!
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• OpenStack - what’s this?
• Hyper-V integration
• OpenStack continuous integration
• The Hyper-V CI infrastructure
• Undercloud and Overclouds
Agenda
Premium community conference on Microsoft technologies itcampro@ itcamp14#
An open source IaaS project
–Apache 2 license
Managed by the OpenStack Foundation
–More than 150 companies joined it including:
–AMD, Intel, Canonical, SUSE Linux, Red Hat,
Cisco, Dell, HP, IBM, NEC, Vmware
Portable
–Mostly used on Linux
Written in Python
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Essex
– Apr 2012
– Hyper-V removed
• Folsom
– October 2012
– Cloudbase Solutions involvement - Hyper-V re-included 
• Grizzly
– Apr 2013
• Havana
– October 2013
• Icehouse
– Apr 2014
Releases
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Distributed Components
– Can be deployed on a single server or multiple servers
• Public RESTful API
– Bindings available for various languages (including .Net)
• Queues (AMQP) for private APIs
– Great scalability
• Relational DBs for storing the configuration
– MySQL, PostgreSQL, SQLite (and SQL server)
• UI
– CLI tools
– Web dashboard
OpenStack Architecture
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Compute (Nova)
Object Storage (Swift)
Block Storage (Cinder)
Image Service (Glance)
Networking (Quantum / Neutron)
Dashboard (Horizon)
Identity (Keystone)
Metering (Ceilometer)
Orchestration (Heat)
Components
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Architecture 1
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Architecture 2
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• AMQP
–RabbitMQ
–Apache Qpid
• API
–RESTful services
• Database
–Any Python SQLAlchemy provider
–Mostly MySQL
–SQL Server required various bug fixes
Component interaction
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• FREE edition
–Full Hypervisor
–Minimum OS support
• Minimum impact on security updates, etc
• Windows Server 2012 R2
–Just enable the related role
• Windows 8.1
–For workstation / testing / development usage
Hyper-V Server availability
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Nova Compute driver
• Neutron plugin
• Cinder Volume driver
• Windows Cloud-Init
• Ceilometer Agent
• Heat templates
Hyper-V / Windows Openstack components
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Python Application installed as an
application/service on the Hyper-V node.
• OpenStack compute utilizes key features
baked into the Hyper-V Virtualization
Platform
• Does not require windows clustering
services
• Does not require shared storage
Hyper-V Nova Compute
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Hyper-V plugin is part of Quantum since Jan
2013
– Project renamed in Neutron since Havana
• Supported network types:
– VLAN
– Flat
– Local
• Plugin / agent model
– Plugin runs in quantum-server (controller)
– Agent runs on each Hyper-V compute node
Neutron
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Typical Neutron setup
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Quantum plugin / agent AMQP RPC protocol is
compatible with OpenVSwitch
• You can use the OVS plugin with Hyper-V agents (or
vice versa)
– Limited to compatible L2 protocols: Flat / VLAN
• You can use the L3 and DHCP agents with the Hyper-V
plugin
– Using the OVS L2 agent on the networking nodes
• Supports ML2 plugin!
Neutron OVS interop
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• We ported OVS to Hyper-V
Open vSwitch Windows porting
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• De facto standard for SDN
• Great interoperability
– Hyper-V / KVM / etc
• OpenFlow
• Tunnelling
–VXLAN
–GRE
• Neutron OVS plugin
–No need for a different one
Why OpenVSwitch?
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Great code review platform
–Gerrit
• Strong emphasis on unit tests
–Commits do not pass w/o tests
–Python is a dynamic language
• Syntactical and semantic validation needed
• Great continuous integration effort
–Lots of moving parts
How does OpenStack handle such complexity?
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Originally developed by Google for Android
• Stand-alone patch review system
• Manages:
–Git Repositories
–Code Review
–Event Stream
–Privileges (propose / merge code, manage git
repositories)
Gerrit
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Gerrit workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Gerrit UI
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Except special cases every contribution
must have either:
–Blueprint
• for new features
• to be approved by core team
–Bug report
• for, ahem, bugs
• http://launchpad.net
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Clone repository, e.g.:
– git clone https://github.com/openstack/nova.git
• Create a short lived branch:
– git checkout -b bug/12345678
– Do changes
– git commit
• Commit message must contain referefence to bug / bp
– git review
• Install with pip install git-review
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Gerrit triggers:
– Pep8 / Flake8 tests
• Code conformity über alles!
• Very important with > 850 contributors
– Unit tests
– Integration tests with multiple env (e.g. Nova):
• KVM
• Hyper-V
• VMWare
• XenServer
• etc
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Each CI results can vote +1 / -1 or be
neutral
–At the moment both errors and failures
account for -1
• Hard to distinguish between them
• In case of failures users can issue a
“recheck”
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• At this stage code can be peer reviewed
• Every user can review the code
– Leave comments
– Vote +1 / -1
• Each project (e.g Nova) has a peer elected team
with “+2 rights”
– Vote +2 / -2
• A commit requires 2x +2 and approval to be
merged
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• At this point the code is ready to be merged
–Another CI run is required
–Code base is changed since code submission
• If successful, the code will finally merge into
the git repository!
Code contribution workflow
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Queue monitoring
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Microsoft contributes hardware for CI
–Around 200 servers ATM
–Currently based in Cambridge, MA
• CI support team provided by:
–Microsoft
–Cloudbase Solutions
Hyper-V CI
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Consistency
– All projects should act the same way during code
reviews and offer the same interface to the devs
• Repeatability
– system should run 100 or 500 times per day
without failing
• Availability
– complete automation means that if it stops, the
whole project stops
OpenStack Requirements of automation
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Zuul
• Jenkins
• Undercloud
– KVM compute nodes
• Overcloud
– Devstack running on KVM VMs
– Hyper-V compute nodes
• Logs HTTP server
• Logstash
Hyper-V CI components
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Open source project
• monitors in-progress jobs for a set of
related patches
• will pre-emptively cancel any dependent
test jobs that would not succeed due to a
failure in a dependent patch
Zuul
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Zuul workflow
Gerrit
registers
commit
Zuul listens
Gerrit
stream and
records
commit
Zuul clones
referenced
git repo
locally
Predefined
Jenkins
job(s)
started by
Zuul
Zuul collects
and pushes
upstream
Jenkins
job(s)
results
Premium community conference on Microsoft technologies itcampro@ itcamp14#
pipelines:
- name: check
description: Newly uploaded patchsets enter this pipeline to receive an initial +/-1 Verified vote from Jenkins.
failure-message: Build failed. For rechecking only on the Hyper-V CI, add a review comment with recheck hyper-v
manager: IndependentPipelineManager
precedence: low
trigger:
gerrit:
- event: patchset-created
- event: change-restored
- event: comment-added
comment_filter: (?i)^(Patch Set [0-9]+:nn)?s*recheck(( (?:bug|lp)[s#:]*(d+))|( no bug)|( hyper-v))s*$
success:
gerrit:
verified: 0
failure:
gerrit:
verified: 0
Zuul yaml config 1/2
Premium community conference on Microsoft technologies itcampro@ itcamp14#
jobs:
- name: ^.*$
parameter-function: set_log_url
- name: 01_Reserve_Hyper-V_Node_01
voting: true
success-pattern:
http://64.119.130.115/{build.parameters[ZUUL_CHANGE]}/{build.parameters[ZUUL_PATCHSET
]}/
failure-pattern:
http://64.119.130.115/{build.parameters[ZUUL_CHANGE]}/{build.parameters[ZUUL_PATCHSET
]}/
success-message: Looks good to me
failure-message: Test run failed.
projects:
- name: openstack/nova
check:
- 01_Reserve_Hyper-V_Node_01
- name: openstack/neutron
check:
- 01_Reserve_Hyper-V_Node_01
Zuul yaml config 2/2
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• The de facto CI framework
–Open Source, written in Java
–Provides a well done UI (CLI as well)
• Lots of available plugins
• Supports git and other SCMs
• Executes jobs:
–on demand
–scheduled
–based on repository changes
Jenkins
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Jobs can be executed on
– Jenkins host
– Slaves (Linux, Windows)
• Jobs can be interdependent
– The CI executes multiple ones for each patchset
• Client / Server architecture
– Scales poorly
• Zuul integrates with Jenkins
– Executes jobs and waits for outcome
jenkins
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• 5 jobs defined
1. Reserve Hyper-V Node 01
2. Reserve Hyper-V Node 02
3. Initialize Test Environment
4. Run Tempest Test
5. Clean Test Environment
• Return result is the result of executing jobs
1 to 4, result of job 5 is ignored
Jenkins CI jobs
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Jenkins UI
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• OpenStack’s integration tests suite
• Test types
– Smoke tests
– Positive tests
– Negative tests
– White box tests
• Roughly 2.200 tests executed by the Hyper-V CI
Tempest
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Tempest
Premium community conference on Microsoft technologies itcampro@ itcamp14#
class MyTest(tempest.test.BaseTestCase):
def setUp(self):
…
def tearDown(self):
…
def do_whatever_action_test(self):
…
def do_whatever_other_action_test(self):
…
Tempest example - regular testcase
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Each time that a patchset is tested, an entire
OpenStack cloud needs to be spin up
• To achieve this, we use OpenStack
– Dogfooding FTW 
• Undercloud
– An OpenStack infrastructure
– Spins up IaaS instances for each patchset
• Overcloud
– The OpenStack cloud being tests
– runs the tempest tests
Under and Over clouds
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• CentOS 6.5 servers
–Deployed with RDO
• Puppet based
–Controller
• APIs and most OpenStack services
–Network
• networking node(s)
• running Neutron + Open vSwitch
–KVM compute nodes
Undercloud
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Ubuntu 12.04 VMs
–on undercloud’s VMs
–Running DevStack
–OpenStack development environment
–Code dependencies pulled via git
• Hyper-V compute nodes
–Bare metal
–Two per job, to test live migration
–Attached by Jenkins to the DevStack overcloud
Overcloud
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Undercloud UI - showing overcloud instances
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• Jenkins and tempests logs are copied to a
file server
• Served to the user from an HTTP server
–Linked in the Zuul job results
• Logs are quite tricky to parse
–they’re fairly big!
• Enter Logstash!
Logs
Premium community conference on Microsoft technologies itcampro@ itcamp14#
• LogStash
–A tool for managing events and logs
• Elasticsearch
–Distributed search and analytics engine
• Kibana
–Web UI
• The Hyper-V CI logstash instance is hosted
on Azure
LogStash
Premium community conference on Microsoft technologies itcampro@ itcamp14#
LogStash
Premium community conference on Microsoft technologies itcampro@ itcamp14#
Q & A

More Related Content

What's hot

Building Cloud Virtual Topologies with Ravello and Ansible
Building Cloud Virtual Topologies with Ravello and AnsibleBuilding Cloud Virtual Topologies with Ravello and Ansible
Building Cloud Virtual Topologies with Ravello and AnsibleDamien Garros
 
Continuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOpsContinuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOpsDocker, Inc.
 
DevOps Days Boston 2017: Developer first workflows for Kubernetes
DevOps Days Boston 2017: Developer first workflows for KubernetesDevOps Days Boston 2017: Developer first workflows for Kubernetes
DevOps Days Boston 2017: Developer first workflows for KubernetesAmbassador Labs
 
Principles of Kubernetes
Principles of KubernetesPrinciples of Kubernetes
Principles of KubernetesJames Kelly
 
Cloud Native Apps with GitOps
Cloud Native Apps with GitOps Cloud Native Apps with GitOps
Cloud Native Apps with GitOps Weaveworks
 
Your Auto-Scaling Bot - Volkan Tufecki
Your Auto-Scaling Bot - Volkan TufeckiYour Auto-Scaling Bot - Volkan Tufecki
Your Auto-Scaling Bot - Volkan TufeckiDocker, Inc.
 
Top 10 dev ops tools (1)
Top 10 dev ops tools (1)Top 10 dev ops tools (1)
Top 10 dev ops tools (1)yalini97
 
VM vs Docker-Based Pipelines
VM vs Docker-Based PipelinesVM vs Docker-Based Pipelines
VM vs Docker-Based PipelinesCodefresh
 
Containerd + buildkit breakout
Containerd + buildkit breakoutContainerd + buildkit breakout
Containerd + buildkit breakoutDocker, Inc.
 
Training Ensimag OpenStack 2016
Training Ensimag OpenStack 2016Training Ensimag OpenStack 2016
Training Ensimag OpenStack 2016Bruno Cornec
 
All Things Open : Crash Course in Open Source Cloud Computing
All Things Open : Crash Course in Open Source Cloud Computing All Things Open : Crash Course in Open Source Cloud Computing
All Things Open : Crash Course in Open Source Cloud Computing Mark Hinkle
 
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployOPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployNatale Vinto
 
Leveraging CI/CD to improve open stack operation
Leveraging CI/CD to improve open stack operationLeveraging CI/CD to improve open stack operation
Leveraging CI/CD to improve open stack operationMaría Angélica Bracho
 
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2Amrita Prasad
 
DCSF19 Docker Containers & Java: What I Wish I Had Been Told
DCSF19 Docker Containers & Java: What I Wish I Had Been ToldDCSF19 Docker Containers & Java: What I Wish I Had Been Told
DCSF19 Docker Containers & Java: What I Wish I Had Been ToldDocker, Inc.
 
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Gilad Garon
 
Tales of Training: Scaling CodeLabs with Swarm Mode and Docker-Compose
Tales of Training: Scaling CodeLabs with Swarm Mode and Docker-ComposeTales of Training: Scaling CodeLabs with Swarm Mode and Docker-Compose
Tales of Training: Scaling CodeLabs with Swarm Mode and Docker-ComposeDocker, Inc.
 
Node.js Rocks in Docker for Dev and Ops
Node.js Rocks in Docker for Dev and OpsNode.js Rocks in Docker for Dev and Ops
Node.js Rocks in Docker for Dev and OpsBret Fisher
 
Docker Enterprise Workshop - Intro
Docker Enterprise Workshop - IntroDocker Enterprise Workshop - Intro
Docker Enterprise Workshop - IntroPatrick Chanezon
 
Continuous Delivery the Hard Way with Kubernetes
Continuous Delivery the Hard Way with Kubernetes Continuous Delivery the Hard Way with Kubernetes
Continuous Delivery the Hard Way with Kubernetes Weaveworks
 

What's hot (20)

Building Cloud Virtual Topologies with Ravello and Ansible
Building Cloud Virtual Topologies with Ravello and AnsibleBuilding Cloud Virtual Topologies with Ravello and Ansible
Building Cloud Virtual Topologies with Ravello and Ansible
 
Continuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOpsContinuous Packaging is also Mandatory for DevOps
Continuous Packaging is also Mandatory for DevOps
 
DevOps Days Boston 2017: Developer first workflows for Kubernetes
DevOps Days Boston 2017: Developer first workflows for KubernetesDevOps Days Boston 2017: Developer first workflows for Kubernetes
DevOps Days Boston 2017: Developer first workflows for Kubernetes
 
Principles of Kubernetes
Principles of KubernetesPrinciples of Kubernetes
Principles of Kubernetes
 
Cloud Native Apps with GitOps
Cloud Native Apps with GitOps Cloud Native Apps with GitOps
Cloud Native Apps with GitOps
 
Your Auto-Scaling Bot - Volkan Tufecki
Your Auto-Scaling Bot - Volkan TufeckiYour Auto-Scaling Bot - Volkan Tufecki
Your Auto-Scaling Bot - Volkan Tufecki
 
Top 10 dev ops tools (1)
Top 10 dev ops tools (1)Top 10 dev ops tools (1)
Top 10 dev ops tools (1)
 
VM vs Docker-Based Pipelines
VM vs Docker-Based PipelinesVM vs Docker-Based Pipelines
VM vs Docker-Based Pipelines
 
Containerd + buildkit breakout
Containerd + buildkit breakoutContainerd + buildkit breakout
Containerd + buildkit breakout
 
Training Ensimag OpenStack 2016
Training Ensimag OpenStack 2016Training Ensimag OpenStack 2016
Training Ensimag OpenStack 2016
 
All Things Open : Crash Course in Open Source Cloud Computing
All Things Open : Crash Course in Open Source Cloud Computing All Things Open : Crash Course in Open Source Cloud Computing
All Things Open : Crash Course in Open Source Cloud Computing
 
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & DeployOPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
OPENSHIFT CONTAINER PLATFORM CI/CD Build & Deploy
 
Leveraging CI/CD to improve open stack operation
Leveraging CI/CD to improve open stack operationLeveraging CI/CD to improve open stack operation
Leveraging CI/CD to improve open stack operation
 
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2
 
DCSF19 Docker Containers & Java: What I Wish I Had Been Told
DCSF19 Docker Containers & Java: What I Wish I Had Been ToldDCSF19 Docker Containers & Java: What I Wish I Had Been Told
DCSF19 Docker Containers & Java: What I Wish I Had Been Told
 
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
 
Tales of Training: Scaling CodeLabs with Swarm Mode and Docker-Compose
Tales of Training: Scaling CodeLabs with Swarm Mode and Docker-ComposeTales of Training: Scaling CodeLabs with Swarm Mode and Docker-Compose
Tales of Training: Scaling CodeLabs with Swarm Mode and Docker-Compose
 
Node.js Rocks in Docker for Dev and Ops
Node.js Rocks in Docker for Dev and OpsNode.js Rocks in Docker for Dev and Ops
Node.js Rocks in Docker for Dev and Ops
 
Docker Enterprise Workshop - Intro
Docker Enterprise Workshop - IntroDocker Enterprise Workshop - Intro
Docker Enterprise Workshop - Intro
 
Continuous Delivery the Hard Way with Kubernetes
Continuous Delivery the Hard Way with Kubernetes Continuous Delivery the Hard Way with Kubernetes
Continuous Delivery the Hard Way with Kubernetes
 

Similar to Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)

ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp
 
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...ITCamp
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015Henry Huang
 
Docker adventures in Continuous Delivery - Alex Vranceanu
Docker adventures in Continuous Delivery - Alex VranceanuDocker adventures in Continuous Delivery - Alex Vranceanu
Docker adventures in Continuous Delivery - Alex VranceanuITCamp
 
OpenStack - JobShop @Iași, 2016
OpenStack - JobShop @Iași, 2016OpenStack - JobShop @Iași, 2016
OpenStack - JobShop @Iași, 2016Alexandru Coman
 
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWERContinuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWERIndrajit Poddar
 
Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops OverviewJoel W. King
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkinsecubemarketing
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time Amazon Web Services
 
Ansible Tower | Docker | Cisco ACI
Ansible Tower | Docker | Cisco ACIAnsible Tower | Docker | Cisco ACI
Ansible Tower | Docker | Cisco ACIJoel W. King
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAmazon Web Services
 
321 codeincontainer brewbox
321 codeincontainer brewbox321 codeincontainer brewbox
321 codeincontainer brewboxLino Telera
 
Serverless brewbox
Serverless   brewboxServerless   brewbox
Serverless brewboxLino Telera
 
What's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerWhat's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerITCamp
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development PipelineGlobalLogic Ukraine
 
Webinar: OpenStack Best Practices for Production
Webinar: OpenStack Best Practices for ProductionWebinar: OpenStack Best Practices for Production
Webinar: OpenStack Best Practices for ProductionPlatform9
 
The New Era of Code in the Cloud (Bogdan Toporan)
The New Era of Code in the Cloud (Bogdan Toporan)The New Era of Code in the Cloud (Bogdan Toporan)
The New Era of Code in the Cloud (Bogdan Toporan)ITCamp
 

Similar to Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti) (20)

ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
ITCamp 2013 - Tudor Damian - Running Linux on Microsoft Private and Public Cl...
 
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015
 
Docker adventures in Continuous Delivery - Alex Vranceanu
Docker adventures in Continuous Delivery - Alex VranceanuDocker adventures in Continuous Delivery - Alex Vranceanu
Docker adventures in Continuous Delivery - Alex Vranceanu
 
OpenStack - JobShop @Iași, 2016
OpenStack - JobShop @Iași, 2016OpenStack - JobShop @Iași, 2016
OpenStack - JobShop @Iași, 2016
 
Versioning for Developers
Versioning for DevelopersVersioning for Developers
Versioning for Developers
 
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWERContinuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
 
Net Devops Overview
Net Devops OverviewNet Devops Overview
Net Devops Overview
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkins
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time
 
Moby KubeCon 2017
Moby KubeCon 2017Moby KubeCon 2017
Moby KubeCon 2017
 
Ansible Tower | Docker | Cisco ACI
Ansible Tower | Docker | Cisco ACIAnsible Tower | Docker | Cisco ACI
Ansible Tower | Docker | Cisco ACI
 
Cont0519
Cont0519Cont0519
Cont0519
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
 
321 codeincontainer brewbox
321 codeincontainer brewbox321 codeincontainer brewbox
321 codeincontainer brewbox
 
Serverless brewbox
Serverless   brewboxServerless   brewbox
Serverless brewbox
 
What's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas MaurerWhat's New in Hyper-V 2016 - Thomas Maurer
What's New in Hyper-V 2016 - Thomas Maurer
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Webinar: OpenStack Best Practices for Production
Webinar: OpenStack Best Practices for ProductionWebinar: OpenStack Best Practices for Production
Webinar: OpenStack Best Practices for Production
 
The New Era of Code in the Cloud (Bogdan Toporan)
The New Era of Code in the Cloud (Bogdan Toporan)The New Era of Code in the Cloud (Bogdan Toporan)
The New Era of Code in the Cloud (Bogdan Toporan)
 

More from ITCamp

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...ITCamp
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...ITCamp
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp
 

More from ITCamp (20)

ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
 
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
 
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing SkillsITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Peter Leeson - Managing Skills
 
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud ResourcesITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
 
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UXITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
 
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean ArchitectureITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
 
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...ITCamp 2019 - Florin Loghiade -  Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
 
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...ITCamp 2019 - Florin Flestea -  How 3rd Level support experience influenced m...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
 
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
 
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The EnterpriseITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
 
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal TrendsITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
 
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data LakeITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
 
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AIITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andy Cross - Business Outcomes from AI
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
 
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
 
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
 
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go NowITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
 
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian QualityITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2019 - Peter Leeson - Vitruvian Quality
 
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World ApplicationITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
 
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
 

Recently uploaded

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
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 Processorsdebabhi2
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Recently uploaded (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
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
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Deep Dive into the Microsoft OpenStack CI Infrastructure (Alessandro Pilotti)

  • 1. Premium community conference on Microsoft technologies itcampro@ itcamp14# Deep dive into the Microsoft OpenStack CI infrastructure Alessandro Pilotti Cloudbase Solutions Hyper-V MVP
  • 2. Premium community conference on Microsoft technologies itcampro@ itcamp14# Huge thanks to our sponsors & partners!
  • 3. Premium community conference on Microsoft technologies itcampro@ itcamp14# • OpenStack - what’s this? • Hyper-V integration • OpenStack continuous integration • The Hyper-V CI infrastructure • Undercloud and Overclouds Agenda
  • 4. Premium community conference on Microsoft technologies itcampro@ itcamp14# An open source IaaS project –Apache 2 license Managed by the OpenStack Foundation –More than 150 companies joined it including: –AMD, Intel, Canonical, SUSE Linux, Red Hat, Cisco, Dell, HP, IBM, NEC, Vmware Portable –Mostly used on Linux Written in Python
  • 5. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Essex – Apr 2012 – Hyper-V removed • Folsom – October 2012 – Cloudbase Solutions involvement - Hyper-V re-included  • Grizzly – Apr 2013 • Havana – October 2013 • Icehouse – Apr 2014 Releases
  • 6. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Distributed Components – Can be deployed on a single server or multiple servers • Public RESTful API – Bindings available for various languages (including .Net) • Queues (AMQP) for private APIs – Great scalability • Relational DBs for storing the configuration – MySQL, PostgreSQL, SQLite (and SQL server) • UI – CLI tools – Web dashboard OpenStack Architecture
  • 7. Premium community conference on Microsoft technologies itcampro@ itcamp14# Compute (Nova) Object Storage (Swift) Block Storage (Cinder) Image Service (Glance) Networking (Quantum / Neutron) Dashboard (Horizon) Identity (Keystone) Metering (Ceilometer) Orchestration (Heat) Components
  • 8. Premium community conference on Microsoft technologies itcampro@ itcamp14# Architecture 1
  • 9. Premium community conference on Microsoft technologies itcampro@ itcamp14# Architecture 2
  • 10. Premium community conference on Microsoft technologies itcampro@ itcamp14# • AMQP –RabbitMQ –Apache Qpid • API –RESTful services • Database –Any Python SQLAlchemy provider –Mostly MySQL –SQL Server required various bug fixes Component interaction
  • 11. Premium community conference on Microsoft technologies itcampro@ itcamp14# • FREE edition –Full Hypervisor –Minimum OS support • Minimum impact on security updates, etc • Windows Server 2012 R2 –Just enable the related role • Windows 8.1 –For workstation / testing / development usage Hyper-V Server availability
  • 12. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Nova Compute driver • Neutron plugin • Cinder Volume driver • Windows Cloud-Init • Ceilometer Agent • Heat templates Hyper-V / Windows Openstack components
  • 13. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Python Application installed as an application/service on the Hyper-V node. • OpenStack compute utilizes key features baked into the Hyper-V Virtualization Platform • Does not require windows clustering services • Does not require shared storage Hyper-V Nova Compute
  • 14. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Hyper-V plugin is part of Quantum since Jan 2013 – Project renamed in Neutron since Havana • Supported network types: – VLAN – Flat – Local • Plugin / agent model – Plugin runs in quantum-server (controller) – Agent runs on each Hyper-V compute node Neutron
  • 15. Premium community conference on Microsoft technologies itcampro@ itcamp14# Typical Neutron setup
  • 16. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Quantum plugin / agent AMQP RPC protocol is compatible with OpenVSwitch • You can use the OVS plugin with Hyper-V agents (or vice versa) – Limited to compatible L2 protocols: Flat / VLAN • You can use the L3 and DHCP agents with the Hyper-V plugin – Using the OVS L2 agent on the networking nodes • Supports ML2 plugin! Neutron OVS interop
  • 17. Premium community conference on Microsoft technologies itcampro@ itcamp14# • We ported OVS to Hyper-V Open vSwitch Windows porting
  • 18. Premium community conference on Microsoft technologies itcampro@ itcamp14# • De facto standard for SDN • Great interoperability – Hyper-V / KVM / etc • OpenFlow • Tunnelling –VXLAN –GRE • Neutron OVS plugin –No need for a different one Why OpenVSwitch?
  • 19. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Great code review platform –Gerrit • Strong emphasis on unit tests –Commits do not pass w/o tests –Python is a dynamic language • Syntactical and semantic validation needed • Great continuous integration effort –Lots of moving parts How does OpenStack handle such complexity?
  • 20. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Originally developed by Google for Android • Stand-alone patch review system • Manages: –Git Repositories –Code Review –Event Stream –Privileges (propose / merge code, manage git repositories) Gerrit
  • 21. Premium community conference on Microsoft technologies itcampro@ itcamp14# Gerrit workflow
  • 22. Premium community conference on Microsoft technologies itcampro@ itcamp14# Gerrit UI
  • 23. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Except special cases every contribution must have either: –Blueprint • for new features • to be approved by core team –Bug report • for, ahem, bugs • http://launchpad.net Code contribution workflow
  • 24. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Clone repository, e.g.: – git clone https://github.com/openstack/nova.git • Create a short lived branch: – git checkout -b bug/12345678 – Do changes – git commit • Commit message must contain referefence to bug / bp – git review • Install with pip install git-review Code contribution workflow
  • 25. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Gerrit triggers: – Pep8 / Flake8 tests • Code conformity über alles! • Very important with > 850 contributors – Unit tests – Integration tests with multiple env (e.g. Nova): • KVM • Hyper-V • VMWare • XenServer • etc Code contribution workflow
  • 26. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Each CI results can vote +1 / -1 or be neutral –At the moment both errors and failures account for -1 • Hard to distinguish between them • In case of failures users can issue a “recheck” Code contribution workflow
  • 27. Premium community conference on Microsoft technologies itcampro@ itcamp14# Code contribution workflow
  • 28. Premium community conference on Microsoft technologies itcampro@ itcamp14# • At this stage code can be peer reviewed • Every user can review the code – Leave comments – Vote +1 / -1 • Each project (e.g Nova) has a peer elected team with “+2 rights” – Vote +2 / -2 • A commit requires 2x +2 and approval to be merged Code contribution workflow
  • 29. Premium community conference on Microsoft technologies itcampro@ itcamp14# • At this point the code is ready to be merged –Another CI run is required –Code base is changed since code submission • If successful, the code will finally merge into the git repository! Code contribution workflow
  • 30. Premium community conference on Microsoft technologies itcampro@ itcamp14# Queue monitoring
  • 31. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Microsoft contributes hardware for CI –Around 200 servers ATM –Currently based in Cambridge, MA • CI support team provided by: –Microsoft –Cloudbase Solutions Hyper-V CI
  • 32. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Consistency – All projects should act the same way during code reviews and offer the same interface to the devs • Repeatability – system should run 100 or 500 times per day without failing • Availability – complete automation means that if it stops, the whole project stops OpenStack Requirements of automation
  • 33. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Zuul • Jenkins • Undercloud – KVM compute nodes • Overcloud – Devstack running on KVM VMs – Hyper-V compute nodes • Logs HTTP server • Logstash Hyper-V CI components
  • 34. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Open source project • monitors in-progress jobs for a set of related patches • will pre-emptively cancel any dependent test jobs that would not succeed due to a failure in a dependent patch Zuul
  • 35. Premium community conference on Microsoft technologies itcampro@ itcamp14# Zuul workflow Gerrit registers commit Zuul listens Gerrit stream and records commit Zuul clones referenced git repo locally Predefined Jenkins job(s) started by Zuul Zuul collects and pushes upstream Jenkins job(s) results
  • 36. Premium community conference on Microsoft technologies itcampro@ itcamp14# pipelines: - name: check description: Newly uploaded patchsets enter this pipeline to receive an initial +/-1 Verified vote from Jenkins. failure-message: Build failed. For rechecking only on the Hyper-V CI, add a review comment with recheck hyper-v manager: IndependentPipelineManager precedence: low trigger: gerrit: - event: patchset-created - event: change-restored - event: comment-added comment_filter: (?i)^(Patch Set [0-9]+:nn)?s*recheck(( (?:bug|lp)[s#:]*(d+))|( no bug)|( hyper-v))s*$ success: gerrit: verified: 0 failure: gerrit: verified: 0 Zuul yaml config 1/2
  • 37. Premium community conference on Microsoft technologies itcampro@ itcamp14# jobs: - name: ^.*$ parameter-function: set_log_url - name: 01_Reserve_Hyper-V_Node_01 voting: true success-pattern: http://64.119.130.115/{build.parameters[ZUUL_CHANGE]}/{build.parameters[ZUUL_PATCHSET ]}/ failure-pattern: http://64.119.130.115/{build.parameters[ZUUL_CHANGE]}/{build.parameters[ZUUL_PATCHSET ]}/ success-message: Looks good to me failure-message: Test run failed. projects: - name: openstack/nova check: - 01_Reserve_Hyper-V_Node_01 - name: openstack/neutron check: - 01_Reserve_Hyper-V_Node_01 Zuul yaml config 2/2
  • 38. Premium community conference on Microsoft technologies itcampro@ itcamp14# • The de facto CI framework –Open Source, written in Java –Provides a well done UI (CLI as well) • Lots of available plugins • Supports git and other SCMs • Executes jobs: –on demand –scheduled –based on repository changes Jenkins
  • 39. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Jobs can be executed on – Jenkins host – Slaves (Linux, Windows) • Jobs can be interdependent – The CI executes multiple ones for each patchset • Client / Server architecture – Scales poorly • Zuul integrates with Jenkins – Executes jobs and waits for outcome jenkins
  • 40. Premium community conference on Microsoft technologies itcampro@ itcamp14# • 5 jobs defined 1. Reserve Hyper-V Node 01 2. Reserve Hyper-V Node 02 3. Initialize Test Environment 4. Run Tempest Test 5. Clean Test Environment • Return result is the result of executing jobs 1 to 4, result of job 5 is ignored Jenkins CI jobs
  • 41. Premium community conference on Microsoft technologies itcampro@ itcamp14# Jenkins UI
  • 42. Premium community conference on Microsoft technologies itcampro@ itcamp14# • OpenStack’s integration tests suite • Test types – Smoke tests – Positive tests – Negative tests – White box tests • Roughly 2.200 tests executed by the Hyper-V CI Tempest
  • 43. Premium community conference on Microsoft technologies itcampro@ itcamp14# Tempest
  • 44. Premium community conference on Microsoft technologies itcampro@ itcamp14# class MyTest(tempest.test.BaseTestCase): def setUp(self): … def tearDown(self): … def do_whatever_action_test(self): … def do_whatever_other_action_test(self): … Tempest example - regular testcase
  • 45. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Each time that a patchset is tested, an entire OpenStack cloud needs to be spin up • To achieve this, we use OpenStack – Dogfooding FTW  • Undercloud – An OpenStack infrastructure – Spins up IaaS instances for each patchset • Overcloud – The OpenStack cloud being tests – runs the tempest tests Under and Over clouds
  • 46. Premium community conference on Microsoft technologies itcampro@ itcamp14# • CentOS 6.5 servers –Deployed with RDO • Puppet based –Controller • APIs and most OpenStack services –Network • networking node(s) • running Neutron + Open vSwitch –KVM compute nodes Undercloud
  • 47. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Ubuntu 12.04 VMs –on undercloud’s VMs –Running DevStack –OpenStack development environment –Code dependencies pulled via git • Hyper-V compute nodes –Bare metal –Two per job, to test live migration –Attached by Jenkins to the DevStack overcloud Overcloud
  • 48. Premium community conference on Microsoft technologies itcampro@ itcamp14# Undercloud UI - showing overcloud instances
  • 49. Premium community conference on Microsoft technologies itcampro@ itcamp14# • Jenkins and tempests logs are copied to a file server • Served to the user from an HTTP server –Linked in the Zuul job results • Logs are quite tricky to parse –they’re fairly big! • Enter Logstash! Logs
  • 50. Premium community conference on Microsoft technologies itcampro@ itcamp14# • LogStash –A tool for managing events and logs • Elasticsearch –Distributed search and analytics engine • Kibana –Web UI • The Hyper-V CI logstash instance is hosted on Azure LogStash
  • 51. Premium community conference on Microsoft technologies itcampro@ itcamp14# LogStash
  • 52. Premium community conference on Microsoft technologies itcampro@ itcamp14# Q & A