Data Virtualization Deployments: How to Manage Very Large Deployments
What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually...
Transcript of What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually...
![Page 1: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/1.jpg)
What is Continuous Delivery?
Simon Gunton
March 2017
@Cessle
![Page 2: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/2.jpg)
About Me
• Operations Engineer for AutoTrader
• Previously worked at M247
• My arm span is greater than my height!• Don’t have as much skill on a mountain
bike as I thought!
![Page 3: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/3.jpg)
About Autotrader
• Largest new and used car digital market place in the UK
• 6x larger than our nearest competitor
• 80% of UK car dealers advertise through us
• 92% of UK consumers know who we are
• Worth ~£3.9Bn on the London Stock Exchange
• About 450k cars advertised at any one time
![Page 4: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/4.jpg)
Our product estate
2013/14• 40 Deployments per
week• Deployed by
Operations to live• Deployed to live
manually using legacy Perl scripts• 75 Apps• 350 Go Pipelines
• 2016/17• 80+ Deployments
per week• Deployed by Devs to
live• Deployed to live
automagically using GO CI pipelines• 198 Apps• 2400+ Go Pipelines
![Page 5: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/5.jpg)
Release Rate & Success
![Page 6: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/6.jpg)
We all know waterfall
![Page 7: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/7.jpg)
So what is CI & CD?
![Page 8: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/8.jpg)
Continuous Integration (CI)
• Code is stored in shared repository (Git, SVN)• Committed multiple times per day
(typically)• Each check in is then verified with
automated builds• Fast feed back loop• Build & deployment process to be
consistent• Dev/QA environments to be consistent
![Page 9: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/9.jpg)
Continuous Delivery (CD)
• An extension of CI• Deployed to live automatically• Post integration testing done
automatically• Build & deployment process to be
consistent across all environments• Dev/QA/Staging/Live environments to all
be consistent
![Page 10: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/10.jpg)
CodePlanPacka
geTest
Release
Deploy
Operate
Traditional Deployment
Continuous Deployment / Continuous Delivery
Continuous Integration
DevOps
![Page 11: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/11.jpg)
What about infrastructure?
![Page 12: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/12.jpg)
Infrastructure
• Your configuration is your code• Changes only made by changing the
code• Your code is tested in a different
environment before live
![Page 13: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/13.jpg)
Cloud Only?
• NO!• Networks is fashionably late to the party• Use the same principles & tools as
sysadmin / developers
![Page 14: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/14.jpg)
What are my options?
• NAPALM • Network Automation and Programmability
Abstraction Layer with Multivendor support• Python library• Set of functions to interact with different
router vendor devices via unified API• https://github.com/napalm-automation/napal
m• OpenConfig• Written in YANG• http://www.openconfig.net
![Page 15: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/15.jpg)
Other Tools
• Ansible• CFEngine• Chef• Otter• Puppet• Saltstack
![Page 16: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/16.jpg)
A python script is not going to steal your job
*Disclaimer*
I take zero responsibility or liability if you loop/null route/shoot laser in engineer eye/erase your network due to following anything I have said in this talk
![Page 17: What is Continuous Delivery? - NetMcr€¦ · Operations to live • Deployed to live manually using legacy Perl scripts • 75 Apps • 350 Go Pipelines • 2016/17 • 80+ Deployments](https://reader033.fdocuments.net/reader033/viewer/2022053002/5f0660fc7e708231d417b2ec/html5/thumbnails/17.jpg)
References
• Past, Present, and Future of Network Operations• David Barroso, Fastly• https://www.usenix.org/conference/srecon16e
urope/program/presentation/• AutoTrader… from continuous integration
to continuous delivery• Mark Crossfield• http://markcrossfield.co.uk/2014-10-22-devop
s-manchester-auto-trader-from-continuous-integration-to-continuous-delivery.html