SlideShare uma empresa Scribd logo
1 de 14
holistic devployment
why the last mile is the longest




           Piotr Żołnierek
               @pzol
Is production deploy part of DONE?
Has your customer ever been afraid of updates?

Do you have:
continuous-integration?
fully-automated-deployment?
continuous-deployment?
who is NOT having integration and/or unit tests?




                                                   anixe
This is deployment -manual, hard, not-repeatable
without the team, without coordination
Tough cowboy thinks he can handle it all
deploy once the build has succeeded
or midnight deploy

If cow runs away
cowboy runs after cow and fixes problem
you can patch cows on production (pasture)

cows are kind of self-organizing - servers are not




  deployment process
                                                     anixe
This is how we started a couple of

                                                                    anti-patterns                                              years ago!

                                                                                                                               cowboy deployment - manually
                                                                                                                               driving the cattle to the pastures



                                                                                                             ad-hoc releases

                                                                                                       production patching

                                                                                                            service monolith

                                                                                                         lack of automation

•   AdHoc Release – Devs would deploy as soon as they made quick fixes to the application.
•   Production Patching – Sysadmins change configs and other parts directly on production, nobody knows what they changed
•   Service Monolith – the apps are not modular enough or not modular the way and nobody understood how they work together.
•   Lack of Automation – the whole deploy process was done manually, every time!


                                                                                                                                                                anixe
separation of concerns

                                                 Technology
                                                 Operations                                    deployment
     web applications
                                                                                              infrastructure
        versioning
  software architecture
                              Software                                                              QA
    shared applications      Development                                                    technical analysis
                                                                                              24x7 support
 research & development
                                                                                      systems & app administration
                                                        QA




what we did? what many do!
we split!                                  Both Devs and Ops, from their perspective, want the best for the business.
                                           Only, optimizing any subsystem without context, leads to the destabilization
                                           of the system as a whole, de facto decreasing overall performance.




                                                                                                                          anixe
conflict of interests

                    Software                      Technology
                   Development                    Operations




no contact with
customer           change                    preservation

                  new features                release is risk
                  release often                 availability
                                                  stability
                                                 reliability




                                                                anixe
anti-patterns

                                                                                                              ad-hoc releases

                                                                                                        production patching

                                                                                                            service monolith

                                                                                                          lack of automation


•   AdHoc Release – Devs would deploy as soon as they made quick fixes to the application.
•   Production Patching – Sysadmins change configs and other parts directly on production, nobody knows what they changed
•   Service Monolith – the apps are not modular enough or not modular the way and nobody understood how they work together.
•   Lack of Automation – the whole deploy process was done manually, every time!


                                                                                                                                anixe
anti-patterns

                                                                                                              ad-hoc releases

                                                                                                        production patching

                                                                                                            service monolith

                                                                                                          lack of automation

                                                                                         over the wall deployment
•   AdHoc Release – Devs would deploy as soon as they made quick fixes to the application.
•   Production Patching – Sysadmins change configs and other parts directly on production, nobody knows what they changed
•   Service Monolith – the apps are not modular enough or not modular the way and nobody understood how they work together.
•   Lack of Automation – the whole deploy process was done manually, every time!


                                                                                                                                anixe
solution 1: devops
new movement
sysadmin who can program
                                          Software               Technology
                                         Development             Operations




                                       devops = sysadmins with
                                          coding knowledge

                                     pros                                         cons
                  + ops can lookup code                        - silos
                  + ops can automate platform install/deploy   - dev not responsible for production
                  + ops can better understand app
                  + ops can write tests



                                                                                                      anixe
solution 2: no-ops
                               Software
                             Development
                                   &
                              Technology
                              Operations


                     one really cross-functional
                                team

                   pros                             cons
+ all understand app              - 24x7 support
+ common responsibility           - dev must know hardware/infrastructure
                                  - dev must know all customer configs




                                                                            anixe
solution 3: cloud
     deployment
app administration
                                                                                                                           infrastructure
    web applications          Software                                                            Technology             technical analysis
       versioning
 software architecture       Development                                                          Operations               24x7 support
                                                                                                                      systems administration
   shared applications
research & development




                                            pros                                          cons
                         + internal/outsource infrastructure doesn’t   - silos
                         matter                                        - support difficult, lack of knowledge of app
                         + devs responsible for production done




                                                                                                                                               anixe
how far have we come?
                         our current solution: cloud


     windows                                           linux
devs build, test and write deploy scripts     devs build, test and deploy
ops run deploy scripts                        devs deploy via scripts
dbs do db migrations via script               scripts do db migrations
                                              devs write app management scripts

                                                                            anixe
good devployment patterns

                 automation
            composite deployment
                 self-check
              code-data split
            adaptive deployment




                                   anixe
thanks!

           Piotr Żołnierek
                   @pzol
            speakerrate.com/pzol




pzol.agirei.com/holistic-devployment


                                       anixe

Mais conteúdo relacionado

Semelhante a AgileCE2011 holistic devployment

Collaborative Lifecycle Managmenent - an Introduction
Collaborative Lifecycle Managmenent - an IntroductionCollaborative Lifecycle Managmenent - an Introduction
Collaborative Lifecycle Managmenent - an IntroductionStrongback Consulting
 
Bamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - BriefBamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - BriefEllen Feaheny
 
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft AjaxThe Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft AjaxDarren Sim
 
Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))dev2ops
 
Continuous Deployment with Bamboo and Deployit
Continuous Deployment with Bamboo and DeployitContinuous Deployment with Bamboo and Deployit
Continuous Deployment with Bamboo and DeployitXebiaLabs
 
Mawea Profile Presentation Slides 2011
Mawea Profile Presentation Slides 2011Mawea Profile Presentation Slides 2011
Mawea Profile Presentation Slides 2011evebby526
 
Avea Release Management IBM Innovate 2012
Avea Release Management IBM Innovate 2012Avea Release Management IBM Innovate 2012
Avea Release Management IBM Innovate 2012Oguzhan Ozavar
 
Introducing the WSO2 App Factory
Introducing the WSO2 App FactoryIntroducing the WSO2 App Factory
Introducing the WSO2 App FactoryWSO2
 
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs
 
12 2 panel_bechauf
12 2 panel_bechauf12 2 panel_bechauf
12 2 panel_bechaufmitusap
 
Session #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft ApproachSession #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft ApproachSteve Lange
 
Saa S Scio Engagement Model V2 2 Generic
Saa S Scio Engagement Model V2 2  GenericSaa S Scio Engagement Model V2 2  Generic
Saa S Scio Engagement Model V2 2 GenericScioSales
 
Agile for Startups
Agile for StartupsAgile for Startups
Agile for StartupsBhavin Javia
 
Enventive brochure
Enventive brochureEnventive brochure
Enventive brochureAlan Smith
 
Correlation of simulation_models_using_concept_modeling
Correlation of simulation_models_using_concept_modelingCorrelation of simulation_models_using_concept_modeling
Correlation of simulation_models_using_concept_modelingSalvatore Scalera
 
Verteilte Synchronisierung von Modellen in automatisierten Entwicklungsprozessen
Verteilte Synchronisierung von Modellen in automatisierten EntwicklungsprozessenVerteilte Synchronisierung von Modellen in automatisierten Entwicklungsprozessen
Verteilte Synchronisierung von Modellen in automatisierten EntwicklungsprozessenIntland Software GmbH
 
Modeling for Fun and Profit
Modeling for Fun and ProfitModeling for Fun and Profit
Modeling for Fun and ProfitDavid Sciamma
 
Modeling for Fun and Profit
Modeling for Fun and ProfitModeling for Fun and Profit
Modeling for Fun and ProfitDavid Sciamma
 

Semelhante a AgileCE2011 holistic devployment (20)

Collaborative Lifecycle Managmenent - an Introduction
Collaborative Lifecycle Managmenent - an IntroductionCollaborative Lifecycle Managmenent - an Introduction
Collaborative Lifecycle Managmenent - an Introduction
 
Bamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - BriefBamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - Brief
 
Empoweringsme
EmpoweringsmeEmpoweringsme
Empoweringsme
 
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft AjaxThe Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
The Web Development Eco-system with VSTS, ASP.NET 2.0 & Microsoft Ajax
 
Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))
 
Continuous Deployment with Bamboo and Deployit
Continuous Deployment with Bamboo and DeployitContinuous Deployment with Bamboo and Deployit
Continuous Deployment with Bamboo and Deployit
 
TIME & METHOD STUDY
TIME & METHOD STUDYTIME & METHOD STUDY
TIME & METHOD STUDY
 
Mawea Profile Presentation Slides 2011
Mawea Profile Presentation Slides 2011Mawea Profile Presentation Slides 2011
Mawea Profile Presentation Slides 2011
 
Avea Release Management IBM Innovate 2012
Avea Release Management IBM Innovate 2012Avea Release Management IBM Innovate 2012
Avea Release Management IBM Innovate 2012
 
Introducing the WSO2 App Factory
Introducing the WSO2 App FactoryIntroducing the WSO2 App Factory
Introducing the WSO2 App Factory
 
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
 
12 2 panel_bechauf
12 2 panel_bechauf12 2 panel_bechauf
12 2 panel_bechauf
 
Session #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft ApproachSession #1: Development Practices And The Microsoft Approach
Session #1: Development Practices And The Microsoft Approach
 
Saa S Scio Engagement Model V2 2 Generic
Saa S Scio Engagement Model V2 2  GenericSaa S Scio Engagement Model V2 2  Generic
Saa S Scio Engagement Model V2 2 Generic
 
Agile for Startups
Agile for StartupsAgile for Startups
Agile for Startups
 
Enventive brochure
Enventive brochureEnventive brochure
Enventive brochure
 
Correlation of simulation_models_using_concept_modeling
Correlation of simulation_models_using_concept_modelingCorrelation of simulation_models_using_concept_modeling
Correlation of simulation_models_using_concept_modeling
 
Verteilte Synchronisierung von Modellen in automatisierten Entwicklungsprozessen
Verteilte Synchronisierung von Modellen in automatisierten EntwicklungsprozessenVerteilte Synchronisierung von Modellen in automatisierten Entwicklungsprozessen
Verteilte Synchronisierung von Modellen in automatisierten Entwicklungsprozessen
 
Modeling for Fun and Profit
Modeling for Fun and ProfitModeling for Fun and Profit
Modeling for Fun and Profit
 
Modeling for Fun and Profit
Modeling for Fun and ProfitModeling for Fun and Profit
Modeling for Fun and Profit
 

Último

FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
[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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
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
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Último (20)

FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
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...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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
 
[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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
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
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

AgileCE2011 holistic devployment

  • 1. holistic devployment why the last mile is the longest Piotr Żołnierek @pzol
  • 2. Is production deploy part of DONE? Has your customer ever been afraid of updates? Do you have: continuous-integration? fully-automated-deployment? continuous-deployment? who is NOT having integration and/or unit tests? anixe
  • 3. This is deployment -manual, hard, not-repeatable without the team, without coordination Tough cowboy thinks he can handle it all deploy once the build has succeeded or midnight deploy If cow runs away cowboy runs after cow and fixes problem you can patch cows on production (pasture) cows are kind of self-organizing - servers are not deployment process anixe
  • 4. This is how we started a couple of anti-patterns years ago! cowboy deployment - manually driving the cattle to the pastures ad-hoc releases production patching service monolith lack of automation • AdHoc Release – Devs would deploy as soon as they made quick fixes to the application. • Production Patching – Sysadmins change configs and other parts directly on production, nobody knows what they changed • Service Monolith – the apps are not modular enough or not modular the way and nobody understood how they work together. • Lack of Automation – the whole deploy process was done manually, every time! anixe
  • 5. separation of concerns Technology Operations deployment web applications infrastructure versioning software architecture Software QA shared applications Development technical analysis 24x7 support research & development systems & app administration QA what we did? what many do! we split! Both Devs and Ops, from their perspective, want the best for the business. Only, optimizing any subsystem without context, leads to the destabilization of the system as a whole, de facto decreasing overall performance. anixe
  • 6. conflict of interests Software Technology Development Operations no contact with customer change preservation new features release is risk release often availability stability reliability anixe
  • 7. anti-patterns ad-hoc releases production patching service monolith lack of automation • AdHoc Release – Devs would deploy as soon as they made quick fixes to the application. • Production Patching – Sysadmins change configs and other parts directly on production, nobody knows what they changed • Service Monolith – the apps are not modular enough or not modular the way and nobody understood how they work together. • Lack of Automation – the whole deploy process was done manually, every time! anixe
  • 8. anti-patterns ad-hoc releases production patching service monolith lack of automation over the wall deployment • AdHoc Release – Devs would deploy as soon as they made quick fixes to the application. • Production Patching – Sysadmins change configs and other parts directly on production, nobody knows what they changed • Service Monolith – the apps are not modular enough or not modular the way and nobody understood how they work together. • Lack of Automation – the whole deploy process was done manually, every time! anixe
  • 9. solution 1: devops new movement sysadmin who can program Software Technology Development Operations devops = sysadmins with coding knowledge pros cons + ops can lookup code - silos + ops can automate platform install/deploy - dev not responsible for production + ops can better understand app + ops can write tests anixe
  • 10. solution 2: no-ops Software Development & Technology Operations one really cross-functional team pros cons + all understand app - 24x7 support + common responsibility - dev must know hardware/infrastructure - dev must know all customer configs anixe
  • 11. solution 3: cloud deployment app administration infrastructure web applications Software Technology technical analysis versioning software architecture Development Operations 24x7 support systems administration shared applications research & development pros cons + internal/outsource infrastructure doesn’t - silos matter - support difficult, lack of knowledge of app + devs responsible for production done anixe
  • 12. how far have we come? our current solution: cloud windows linux devs build, test and write deploy scripts devs build, test and deploy ops run deploy scripts devs deploy via scripts dbs do db migrations via script scripts do db migrations devs write app management scripts anixe
  • 13. good devployment patterns automation composite deployment self-check code-data split adaptive deployment anixe
  • 14. thanks! Piotr Żołnierek @pzol speakerrate.com/pzol pzol.agirei.com/holistic-devployment anixe

Notas do Editor

  1. -CTO @anixe - cool stuff \n- tuesdays, thursdays also CEO\n- develop in .net, ruby\n
  2. - great software need to get it to production\n- devs become quicker in building, but cannot release as often as they want, \n- ops might have a different cycle (customer related), shared resources, own department\n- ops rarely automate, newest trend, install on one VM and clone\n- hardening sprints? separate operations/admin departments? (creates waterfall)\n- limited access to production, PCI compliancy\n- we have cross-functional teams, but without including admins / infrastructure\n
  3. - we were a cool startup, only cool developers\n- we have been struggling with this problem for a long while\n- cowboy deployment - tough - confident - guy who thinks he can do it all\n- no automated testing originally\n- all manual work all the time\n- builds a great new feature and uploads it directly in to production (manually)\n- is manual releases, at the will of the cowboy (deployer) - no coordination, no qa \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n