SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
DevConfCZ, Feb 2015
Step by Step
Reusing old features to build new ones
Allon Mureinik
amureini@redhat.com / @mureinik
Supervisor, RHEV Storage
Red Hat
DevConfCZ, Feb 2015
DevConfCZ, Feb 2015
Old school software development
Requirements
Design
Implementation
Verification
Maintenance
DevConfCZ, Feb 2015
And when you're all set and done
DevConfCZ, Feb 2015
An alternative approach
DevConfCZ, Feb 2015
Case study – oVirt Live Merge
DevConfCZ, Feb 2015
What Is oVirt?
Large scale, centralized
management for server and
desktop virtualization
Based on leading performance,
scalability and security
infrastructure technologies
Provide an open source
alternative to vCenter/vSphere
Focus on KVM for best
integration/performance
Focus on ease of use/deployment
DevConfCZ, Feb 2015
oVirt: Not a Single Project
● oVirt-Engine
● VDSM
● oVirt-Node
● ovirt-Engine-SDK
● oVirt-Engine-CLI
● oVirt-Guest-Agent
● oVirt-Image-Uploader
● oVirt-iso-Uploader
● oVirt-Log-Collector
● oVirt-DWH
● oVirt-Reports
● Incubation Projects
– MOM
– moVirt
● Test Projects
● … your contributions are
welcome!
● See http://ovirt.org for details
DevConfCZ, Feb 2015
Some architecture...
DevConfCZ, Feb 2015
Live Snapshot
● Capture disks and
memory at a point in
time
● Implemented using
qcow2 volume chains
● Usages
– Save the state before
a major change
● Can be previewed or
reverted
– VM live backup
– Live Storage
Migration
DevConfCZ, Feb 2015
The next logical step...
● Bug 647386 - Support live deletion of a
snapshot / live-merge
– Reported against RHEVM 2.3.0 (Oct. 2010)
– 27 customer tickets
– http://www.ovirt.org/Features/Live_Merge
● So what's the big deal?
DevConfCZ, Feb 2015
An actual conversation...
DevConfCZ, Feb 2015
An actual conversation...
DevConfCZ, Feb 2015
An actual conversation...
DevConfCZ, Feb 2015
An actual conversation...
DevConfCZ, Feb 2015
Problem 1 – What if a merge fails?
DevConfCZ, Feb 2015
Problem 1 – What if a merge fails?
DevConfCZ, Feb 2015
Solution 1 – Single Disk Snapshots
http://www.ovirt.org/Features/Single_Disk_Snapshot
DevConfCZ, Feb 2015
Problem 2 – long running tasks...
● Up to 3.5.0, oVirt has two kinds of verbs
to communicate with VDSM:
– Synchronous verbs
● Finish in under 3 minutes
● Give result immediately
– Asynchronous
● May take a long time to complete
● Return a task to be monitored
● Only run on SPM
– Engine commands have up to 3 stages
● executeAction() - Synchronous database + VDSM
● Poll the task until it completes (or fails)
● endSuccefully() / endWithFailure()
DevConfCZ, Feb 2015
Solution 2 - SEAT
● A mechanism was added for Serial
Execution of Asyncronous Tasks
– http://wiki.ovirt.org/Features/Serial_Executi
on_of_Asynchronous_Tasks
– Allows creating chains of actions:
● execute
● poll for a task
● move to the next execution...
● ... or rollback everything
DevConfCZ, Feb 2015
Solution 2 – Why would I even...
● Live Storage Migration
– http://www.ovirt.org/Features/Design/Storage
LiveMigration
● Utilizes SEAT for a series of tasks:
– [Live Snapshot – not mandatory]
– Clone image structure
– Start syncing active image
– Sync backing chain
– Stop sync
– Remove (and wipe) source
DevConfCZ, Feb 2015
Problem 3 – Still only SPM tasks
● Up to 3.5.0, only SPM can run
asynchronous tasks
– This is due to the requirement to persist task
info on the master domain
DevConfCZ, Feb 2015
Solution 3 – HSM “Tasks”
● Separate the coordination code from the
polling code
– http://www.ovirt.org/Features/Design/Comma
ndCoordinator
– Report the progression of the block job on the
pooled VM stats
● Now the HSM that runs the VM can run
the merge verb
– The basis for rewriting VM migration
– The basis for removing the SPM completely
● Come here all about it in DevConfCZ 2016!
DevConfCZ, Feb 2015
A quick shoutout
DevConfCZ, Feb 2015
THANK YOU!
Feedback appreciated:
http://devconf.cz/f/79
Stay in touch:
amureini@redhat.com
@mureinik
https://il.linkedin.com/pub/mureinik
Patches welcome:
http://www.ovirt.org

Más contenido relacionado

La actualidad más candente

Kvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storageKvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storageSean Cohen
 
Managing ceph through_oVirt_using_Cinder
Managing ceph through_oVirt_using_CinderManaging ceph through_oVirt_using_Cinder
Managing ceph through_oVirt_using_CinderMaor Lipchuk
 
Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...
Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...
Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...Martin Peřina
 
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...OpenNebula Project
 
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan HoracekOpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan HoracekNETWAYS
 
Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM ShapeBlue
 
oVirt DR Site to-site using ansible
oVirt DR Site to-site using ansibleoVirt DR Site to-site using ansible
oVirt DR Site to-site using ansibleMaor Lipchuk
 
Storage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStackStorage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStackShapeBlue
 
OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9
OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9
OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9OpenNebula Project
 
How Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project FeedbackHow Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project FeedbackNETWAYS
 
How can OpenNebula fit your needs - OpenNebulaConf 2013
How can OpenNebula fit your needs - OpenNebulaConf 2013 How can OpenNebula fit your needs - OpenNebulaConf 2013
How can OpenNebula fit your needs - OpenNebulaConf 2013 Maxence Dunnewind
 
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebulaOpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebulaOpenNebula Project
 
Containerize ovs ovn components
Containerize ovs ovn componentsContainerize ovs ovn components
Containerize ovs ovn componentsAliasgar Ginwala
 
Optimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceOptimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceStorPool Storage
 
How automated cloud infrastructure setups can help with Continuous Delivery
How automated cloud infrastructure setups can help with Continuous DeliveryHow automated cloud infrastructure setups can help with Continuous Delivery
How automated cloud infrastructure setups can help with Continuous DeliveryEdmund Siegfried Haselwanter
 
Mi-Cloud Deployment Scenarios - Nazarudin Wijee
Mi-Cloud Deployment Scenarios - Nazarudin WijeeMi-Cloud Deployment Scenarios - Nazarudin Wijee
Mi-Cloud Deployment Scenarios - Nazarudin WijeeOpenNebula Project
 

La actualidad más candente (20)

Kvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storageKvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storage
 
Managing ceph through_oVirt_using_Cinder
Managing ceph through_oVirt_using_CinderManaging ceph through_oVirt_using_Cinder
Managing ceph through_oVirt_using_Cinder
 
Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...
Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...
Host fencing in oVirt - Fixing the unknown and allowing VMs to be highly avai...
 
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
 
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan HoracekOpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
 
Quickly Debug VM Failures in OpenStack
Quickly Debug VM Failures in OpenStackQuickly Debug VM Failures in OpenStack
Quickly Debug VM Failures in OpenStack
 
Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM Achieving the ultimate performance with KVM
Achieving the ultimate performance with KVM
 
oVirt DR Site to-site using ansible
oVirt DR Site to-site using ansibleoVirt DR Site to-site using ansible
oVirt DR Site to-site using ansible
 
Storage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStackStorage based snapshots for KVM VMs in CloudStack
Storage based snapshots for KVM VMs in CloudStack
 
OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9
OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9
OpenNebulaconf2017US: Multi-Site Hyperconverged OpenNebula with DRBD9
 
How Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project FeedbackHow Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project Feedback
 
Make room! Make room!
Make room! Make room!Make room! Make room!
Make room! Make room!
 
How can OpenNebula fit your needs - OpenNebulaConf 2013
How can OpenNebula fit your needs - OpenNebulaConf 2013 How can OpenNebula fit your needs - OpenNebulaConf 2013
How can OpenNebula fit your needs - OpenNebulaConf 2013
 
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebulaOpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
OpenNebulaConf 2016 - Storage Hands-on Workshop by Javier Fontán, OpenNebula
 
Introduction to oVirt
Introduction to oVirtIntroduction to oVirt
Introduction to oVirt
 
Containerize ovs ovn components
Containerize ovs ovn componentsContainerize ovs ovn components
Containerize ovs ovn components
 
Optimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_PerformanceOptimization_of_Virtual_Machines_for_High_Performance
Optimization_of_Virtual_Machines_for_High_Performance
 
How automated cloud infrastructure setups can help with Continuous Delivery
How automated cloud infrastructure setups can help with Continuous DeliveryHow automated cloud infrastructure setups can help with Continuous Delivery
How automated cloud infrastructure setups can help with Continuous Delivery
 
Mi-Cloud Deployment Scenarios - Nazarudin Wijee
Mi-Cloud Deployment Scenarios - Nazarudin WijeeMi-Cloud Deployment Scenarios - Nazarudin Wijee
Mi-Cloud Deployment Scenarios - Nazarudin Wijee
 
oVirt 4.3 highlights
oVirt 4.3 highlightsoVirt 4.3 highlights
oVirt 4.3 highlights
 

Destacado

Production Function
Production FunctionProduction Function
Production FunctionAnne Acosta
 
COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)
COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)
COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)ATHUL RAJ.R
 
Nuclear power plant
Nuclear power plantNuclear power plant
Nuclear power plantATHUL RAJ.R
 
Donau - smart software for growing business
Donau - smart software for growing businessDonau - smart software for growing business
Donau - smart software for growing businessCarla Kelemen
 
Remote detection of illegal usage of electricity
Remote detection of illegal usage of electricityRemote detection of illegal usage of electricity
Remote detection of illegal usage of electricityATHUL RAJ.R
 
Costs associated with production
Costs associated with productionCosts associated with production
Costs associated with productionAnne Acosta
 
Touchless controlling technology using gesture recognisation
Touchless controlling technology using gesture recognisationTouchless controlling technology using gesture recognisation
Touchless controlling technology using gesture recognisationATHUL RAJ.R
 
Hevert
Hevert Hevert
Hevert mrkrik
 
Instructions for patients with complete dentures
Instructions for patients with complete denturesInstructions for patients with complete dentures
Instructions for patients with complete denturesmuhammed bahadeen
 

Destacado (20)

Production Function
Production FunctionProduction Function
Production Function
 
motoFANkowy tutorial odc. 2
motoFANkowy tutorial odc. 2motoFANkowy tutorial odc. 2
motoFANkowy tutorial odc. 2
 
motoFANki 2015
motoFANki 2015motoFANki 2015
motoFANki 2015
 
COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)
COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)
COMPENSATION OF HARMONIC CURRENTS UTILIZING AHC( ACTIVE HARMONIC COMPENSATOR)
 
motoFANkowy tutorial odc. 6
motoFANkowy tutorial odc. 6 motoFANkowy tutorial odc. 6
motoFANkowy tutorial odc. 6
 
Ntroduction
NtroductionNtroduction
Ntroduction
 
motoFANkowy tutorial odc.3
motoFANkowy tutorial odc.3motoFANkowy tutorial odc.3
motoFANkowy tutorial odc.3
 
Nuclear power plant
Nuclear power plantNuclear power plant
Nuclear power plant
 
Lifestyle
LifestyleLifestyle
Lifestyle
 
Presentation1 1
Presentation1 1Presentation1 1
Presentation1 1
 
20-42GHz x2
20-42GHz x220-42GHz x2
20-42GHz x2
 
Donau - smart software for growing business
Donau - smart software for growing businessDonau - smart software for growing business
Donau - smart software for growing business
 
Remote detection of illegal usage of electricity
Remote detection of illegal usage of electricityRemote detection of illegal usage of electricity
Remote detection of illegal usage of electricity
 
Prezentacja Rajd Niepodległości 2014 cz. 3
Prezentacja Rajd Niepodległości 2014 cz. 3Prezentacja Rajd Niepodległości 2014 cz. 3
Prezentacja Rajd Niepodległości 2014 cz. 3
 
Group 3
Group 3Group 3
Group 3
 
Costs associated with production
Costs associated with productionCosts associated with production
Costs associated with production
 
Touchless controlling technology using gesture recognisation
Touchless controlling technology using gesture recognisationTouchless controlling technology using gesture recognisation
Touchless controlling technology using gesture recognisation
 
Hevert
Hevert Hevert
Hevert
 
Podziekowanie dla Sponsorów - motoFANki 2014
Podziekowanie dla Sponsorów - motoFANki 2014Podziekowanie dla Sponsorów - motoFANki 2014
Podziekowanie dla Sponsorów - motoFANki 2014
 
Instructions for patients with complete dentures
Instructions for patients with complete denturesInstructions for patients with complete dentures
Instructions for patients with complete dentures
 

Similar a Step by Step - Reusing old features to build new ones

Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...
Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...
Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...Quantyca - Data at Core
 
Chicago DevOps Meetup Nov2019
Chicago DevOps Meetup Nov2019Chicago DevOps Meetup Nov2019
Chicago DevOps Meetup Nov2019Mike Villiger
 
Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015Microsoft
 
Ahmadabad mule soft_meetup_6march2021_azure_CICD
Ahmadabad mule soft_meetup_6march2021_azure_CICDAhmadabad mule soft_meetup_6march2021_azure_CICD
Ahmadabad mule soft_meetup_6march2021_azure_CICDShekh Muenuddeen
 
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.Ohad Basan
 
The State of the Veil Framework
The State of the Veil FrameworkThe State of the Veil Framework
The State of the Veil FrameworkVeilFramework
 
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...Angel Alberici
 
Vue Introduction
Vue IntroductionVue Introduction
Vue IntroductionElad Gasner
 
DevOps World | Jenkins World 2018 and The Future of Jenkins
DevOps World | Jenkins World 2018 and The Future of JenkinsDevOps World | Jenkins World 2018 and The Future of Jenkins
DevOps World | Jenkins World 2018 and The Future of JenkinsNigel Charman
 
Odo improving the developer experience on OpenShift - hack & sangria
Odo   improving the developer experience on OpenShift - hack & sangriaOdo   improving the developer experience on OpenShift - hack & sangria
Odo improving the developer experience on OpenShift - hack & sangriaJorge Morales
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftYaniv cohen
 
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDGonzalo Marcos Ansoain
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0Jasmine Conseil
 
Toronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptx
Toronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptxToronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptx
Toronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptxAnurag Dwivedi
 
DevSecOps - Security in DevOps
DevSecOps - Security in DevOpsDevSecOps - Security in DevOps
DevSecOps - Security in DevOpsAarno Aukia
 

Similar a Step by Step - Reusing old features to build new ones (20)

Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...
Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...
Create a One Click Migration (OCM) process to Automate Repeatable Infrastruct...
 
Chicago DevOps Meetup Nov2019
Chicago DevOps Meetup Nov2019Chicago DevOps Meetup Nov2019
Chicago DevOps Meetup Nov2019
 
ElasTest Webinar
ElasTest WebinarElasTest Webinar
ElasTest Webinar
 
Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015
 
Ahmadabad mule soft_meetup_6march2021_azure_CICD
Ahmadabad mule soft_meetup_6march2021_azure_CICDAhmadabad mule soft_meetup_6march2021_azure_CICD
Ahmadabad mule soft_meetup_6march2021_azure_CICD
 
Sprint 17
Sprint 17Sprint 17
Sprint 17
 
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
 
The State of the Veil Framework
The State of the Veil FrameworkThe State of the Veil Framework
The State of the Veil Framework
 
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
 
Getting Started with ASP.NET vNext
Getting Started with ASP.NET vNextGetting Started with ASP.NET vNext
Getting Started with ASP.NET vNext
 
Vue Introduction
Vue IntroductionVue Introduction
Vue Introduction
 
Building APIs with Mule and Spring Boot
Building APIs with Mule and Spring BootBuilding APIs with Mule and Spring Boot
Building APIs with Mule and Spring Boot
 
DevOps in realtime
DevOps in realtimeDevOps in realtime
DevOps in realtime
 
DevOps World | Jenkins World 2018 and The Future of Jenkins
DevOps World | Jenkins World 2018 and The Future of JenkinsDevOps World | Jenkins World 2018 and The Future of Jenkins
DevOps World | Jenkins World 2018 and The Future of Jenkins
 
Odo improving the developer experience on OpenShift - hack & sangria
Odo   improving the developer experience on OpenShift - hack & sangriaOdo   improving the developer experience on OpenShift - hack & sangria
Odo improving the developer experience on OpenShift - hack & sangria
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShift
 
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0
 
Toronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptx
Toronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptxToronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptx
Toronto MuleSoft_Meetup_Run Time Fabric - Self Managed Kubernetes.pptx
 
DevSecOps - Security in DevOps
DevSecOps - Security in DevOpsDevSecOps - Security in DevOps
DevSecOps - Security in DevOps
 

Más de Allon Mureinik

Default to Async - Prevent DoS attacks on your app and your day
Default to Async - Prevent DoS attacks on your app and your dayDefault to Async - Prevent DoS attacks on your app and your day
Default to Async - Prevent DoS attacks on your app and your dayAllon Mureinik
 
What an episode of Rick and Morty taught me about (accidental) toxicity
What an episode of Rick and Morty taught me about (accidental) toxicityWhat an episode of Rick and Morty taught me about (accidental) toxicity
What an episode of Rick and Morty taught me about (accidental) toxicityAllon Mureinik
 
We are the Borg, you will be interviewed
We are the Borg, you will be interviewedWe are the Borg, you will be interviewed
We are the Borg, you will be interviewedAllon Mureinik
 
What I wish I knew about security - Allon Mureinik DevConf.CZ 2022
What I wish I knew about security  - Allon Mureinik DevConf.CZ 2022What I wish I knew about security  - Allon Mureinik DevConf.CZ 2022
What I wish I knew about security - Allon Mureinik DevConf.CZ 2022Allon Mureinik
 
Somebody set up us the bomb DevConf.CZ 2022 Lightning Talk
Somebody set up us the bomb  DevConf.CZ 2022 Lightning TalkSomebody set up us the bomb  DevConf.CZ 2022 Lightning Talk
Somebody set up us the bomb DevConf.CZ 2022 Lightning TalkAllon Mureinik
 
Cognitive biases, blind spots and inclusion
Cognitive biases, blind spots and inclusionCognitive biases, blind spots and inclusion
Cognitive biases, blind spots and inclusionAllon Mureinik
 
This DoS goes loop-di-loop
This DoS goes loop-di-loopThis DoS goes loop-di-loop
This DoS goes loop-di-loopAllon Mureinik
 
How open source made me a better manager
How open source made me a better managerHow open source made me a better manager
How open source made me a better managerAllon Mureinik
 
Automatic for the People
Automatic for the PeopleAutomatic for the People
Automatic for the PeopleAllon Mureinik
 
Automatic for the people
Automatic for the peopleAutomatic for the people
Automatic for the peopleAllon Mureinik
 
Mockito - How a mocking library built a real community
Mockito - How a mocking library built a real communityMockito - How a mocking library built a real community
Mockito - How a mocking library built a real communityAllon Mureinik
 
Mockito - how a mocking library built a real community (August Penguin 2017)
Mockito - how a mocking library built a real community (August Penguin 2017)Mockito - how a mocking library built a real community (August Penguin 2017)
Mockito - how a mocking library built a real community (August Penguin 2017)Allon Mureinik
 
Reversim Summit 2016 - Ja-WAT
Reversim Summit 2016 - Ja-WATReversim Summit 2016 - Ja-WAT
Reversim Summit 2016 - Ja-WATAllon Mureinik
 
oVirt 3.5 Storage Features Overview
oVirt 3.5 Storage Features OverviewoVirt 3.5 Storage Features Overview
oVirt 3.5 Storage Features OverviewAllon Mureinik
 
Retro Testing (DevConTLV Jan 2014)
Retro Testing (DevConTLV Jan 2014)Retro Testing (DevConTLV Jan 2014)
Retro Testing (DevConTLV Jan 2014)Allon Mureinik
 

Más de Allon Mureinik (16)

Default to Async - Prevent DoS attacks on your app and your day
Default to Async - Prevent DoS attacks on your app and your dayDefault to Async - Prevent DoS attacks on your app and your day
Default to Async - Prevent DoS attacks on your app and your day
 
What an episode of Rick and Morty taught me about (accidental) toxicity
What an episode of Rick and Morty taught me about (accidental) toxicityWhat an episode of Rick and Morty taught me about (accidental) toxicity
What an episode of Rick and Morty taught me about (accidental) toxicity
 
We are the Borg, you will be interviewed
We are the Borg, you will be interviewedWe are the Borg, you will be interviewed
We are the Borg, you will be interviewed
 
What I wish I knew about security - Allon Mureinik DevConf.CZ 2022
What I wish I knew about security  - Allon Mureinik DevConf.CZ 2022What I wish I knew about security  - Allon Mureinik DevConf.CZ 2022
What I wish I knew about security - Allon Mureinik DevConf.CZ 2022
 
Somebody set up us the bomb DevConf.CZ 2022 Lightning Talk
Somebody set up us the bomb  DevConf.CZ 2022 Lightning TalkSomebody set up us the bomb  DevConf.CZ 2022 Lightning Talk
Somebody set up us the bomb DevConf.CZ 2022 Lightning Talk
 
Zoom out
Zoom outZoom out
Zoom out
 
Cognitive biases, blind spots and inclusion
Cognitive biases, blind spots and inclusionCognitive biases, blind spots and inclusion
Cognitive biases, blind spots and inclusion
 
This DoS goes loop-di-loop
This DoS goes loop-di-loopThis DoS goes loop-di-loop
This DoS goes loop-di-loop
 
How open source made me a better manager
How open source made me a better managerHow open source made me a better manager
How open source made me a better manager
 
Automatic for the People
Automatic for the PeopleAutomatic for the People
Automatic for the People
 
Automatic for the people
Automatic for the peopleAutomatic for the people
Automatic for the people
 
Mockito - How a mocking library built a real community
Mockito - How a mocking library built a real communityMockito - How a mocking library built a real community
Mockito - How a mocking library built a real community
 
Mockito - how a mocking library built a real community (August Penguin 2017)
Mockito - how a mocking library built a real community (August Penguin 2017)Mockito - how a mocking library built a real community (August Penguin 2017)
Mockito - how a mocking library built a real community (August Penguin 2017)
 
Reversim Summit 2016 - Ja-WAT
Reversim Summit 2016 - Ja-WATReversim Summit 2016 - Ja-WAT
Reversim Summit 2016 - Ja-WAT
 
oVirt 3.5 Storage Features Overview
oVirt 3.5 Storage Features OverviewoVirt 3.5 Storage Features Overview
oVirt 3.5 Storage Features Overview
 
Retro Testing (DevConTLV Jan 2014)
Retro Testing (DevConTLV Jan 2014)Retro Testing (DevConTLV Jan 2014)
Retro Testing (DevConTLV Jan 2014)
 

Último

Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Mastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptxMastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptxAS Design & AST.
 
Key Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery RoadmapKey Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery RoadmapIshara Amarasekera
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Effort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software ProjectsEffort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software ProjectsDEEPRAJ PATHAK
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfmaor17
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdfSteve Caron
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolsosttopstonverter
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 

Último (20)

Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Mastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptxMastering Project Planning with Microsoft Project 2016.pptx
Mastering Project Planning with Microsoft Project 2016.pptx
 
Key Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery RoadmapKey Steps in Agile Software Delivery Roadmap
Key Steps in Agile Software Delivery Roadmap
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Effort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software ProjectsEffort Estimation Techniques used in Software Projects
Effort Estimation Techniques used in Software Projects
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdf
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration tools
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 

Step by Step - Reusing old features to build new ones

  • 1. DevConfCZ, Feb 2015 Step by Step Reusing old features to build new ones Allon Mureinik amureini@redhat.com / @mureinik Supervisor, RHEV Storage Red Hat DevConfCZ, Feb 2015
  • 2. DevConfCZ, Feb 2015 Old school software development Requirements Design Implementation Verification Maintenance
  • 3. DevConfCZ, Feb 2015 And when you're all set and done
  • 4. DevConfCZ, Feb 2015 An alternative approach
  • 5. DevConfCZ, Feb 2015 Case study – oVirt Live Merge
  • 6. DevConfCZ, Feb 2015 What Is oVirt? Large scale, centralized management for server and desktop virtualization Based on leading performance, scalability and security infrastructure technologies Provide an open source alternative to vCenter/vSphere Focus on KVM for best integration/performance Focus on ease of use/deployment
  • 7. DevConfCZ, Feb 2015 oVirt: Not a Single Project ● oVirt-Engine ● VDSM ● oVirt-Node ● ovirt-Engine-SDK ● oVirt-Engine-CLI ● oVirt-Guest-Agent ● oVirt-Image-Uploader ● oVirt-iso-Uploader ● oVirt-Log-Collector ● oVirt-DWH ● oVirt-Reports ● Incubation Projects – MOM – moVirt ● Test Projects ● … your contributions are welcome! ● See http://ovirt.org for details
  • 8. DevConfCZ, Feb 2015 Some architecture...
  • 9. DevConfCZ, Feb 2015 Live Snapshot ● Capture disks and memory at a point in time ● Implemented using qcow2 volume chains ● Usages – Save the state before a major change ● Can be previewed or reverted – VM live backup – Live Storage Migration
  • 10. DevConfCZ, Feb 2015 The next logical step... ● Bug 647386 - Support live deletion of a snapshot / live-merge – Reported against RHEVM 2.3.0 (Oct. 2010) – 27 customer tickets – http://www.ovirt.org/Features/Live_Merge ● So what's the big deal?
  • 11. DevConfCZ, Feb 2015 An actual conversation...
  • 12. DevConfCZ, Feb 2015 An actual conversation...
  • 13. DevConfCZ, Feb 2015 An actual conversation...
  • 14. DevConfCZ, Feb 2015 An actual conversation...
  • 15. DevConfCZ, Feb 2015 Problem 1 – What if a merge fails?
  • 16. DevConfCZ, Feb 2015 Problem 1 – What if a merge fails?
  • 17. DevConfCZ, Feb 2015 Solution 1 – Single Disk Snapshots http://www.ovirt.org/Features/Single_Disk_Snapshot
  • 18. DevConfCZ, Feb 2015 Problem 2 – long running tasks... ● Up to 3.5.0, oVirt has two kinds of verbs to communicate with VDSM: – Synchronous verbs ● Finish in under 3 minutes ● Give result immediately – Asynchronous ● May take a long time to complete ● Return a task to be monitored ● Only run on SPM – Engine commands have up to 3 stages ● executeAction() - Synchronous database + VDSM ● Poll the task until it completes (or fails) ● endSuccefully() / endWithFailure()
  • 19. DevConfCZ, Feb 2015 Solution 2 - SEAT ● A mechanism was added for Serial Execution of Asyncronous Tasks – http://wiki.ovirt.org/Features/Serial_Executi on_of_Asynchronous_Tasks – Allows creating chains of actions: ● execute ● poll for a task ● move to the next execution... ● ... or rollback everything
  • 20. DevConfCZ, Feb 2015 Solution 2 – Why would I even... ● Live Storage Migration – http://www.ovirt.org/Features/Design/Storage LiveMigration ● Utilizes SEAT for a series of tasks: – [Live Snapshot – not mandatory] – Clone image structure – Start syncing active image – Sync backing chain – Stop sync – Remove (and wipe) source
  • 21. DevConfCZ, Feb 2015 Problem 3 – Still only SPM tasks ● Up to 3.5.0, only SPM can run asynchronous tasks – This is due to the requirement to persist task info on the master domain
  • 22. DevConfCZ, Feb 2015 Solution 3 – HSM “Tasks” ● Separate the coordination code from the polling code – http://www.ovirt.org/Features/Design/Comma ndCoordinator – Report the progression of the block job on the pooled VM stats ● Now the HSM that runs the VM can run the merge verb – The basis for rewriting VM migration – The basis for removing the SPM completely ● Come here all about it in DevConfCZ 2016!
  • 23. DevConfCZ, Feb 2015 A quick shoutout
  • 24. DevConfCZ, Feb 2015 THANK YOU! Feedback appreciated: http://devconf.cz/f/79 Stay in touch: amureini@redhat.com @mureinik https://il.linkedin.com/pub/mureinik Patches welcome: http://www.ovirt.org