SlideShare a Scribd company logo
1 of 32
Download to read offline
FROM SNOWFLAKES TO A COMMON
AUTOMATED PLATFORM
Ricard Clau
John Paul Newman
WHAT DO WE DO?
• Automation group function in Wonga
• Small team servicing X engineers in 5 locations
• CI / CD pipelines, Logging / Monitoring,
infrastructure provisioning, config management, …
• Most of the team is quite new to the company
A BIT OF WONGA HISTORY
• Started in 2007, DevOps was not even a thing!
• Regions expansion, acquisitions, …
• Massive growth, engineers did their best to keep up
• Regulations happened, FCA approval needed
• Massive turnover, knowledge lost, lack of docs…
CURRENT PROBLEMS
• Snowflake servers, many attempts in the past failed
• No unified processes in the group
• Not great monitoring dashboards
• No DevOps culture, we are seen as a service team
• Sometimes, all these are great excuses
WANTTO ACHIEVE
• Build / Provision servers & infrastructure from code
• Needs to work for both Windows and Linux
• Hybrid cloud (AWS) / datacenter (vSphere)
• Simple, pragmatic and efficient tools
• Progressive introduction of new tooling
INITIAL ROADMAP
• Pick tools to build / automate everything
• Rationalise CI / CD tooling
• Plan a progressive migration to the AWS cloud
• Rationalise logging / monitoring infrastructure
• Build platform capabilities that can be shared
CI
Jenkins Team City ThoughtWorks GoCD
CI
Jenkins Team City ThoughtWorks GoCD
JENKINS
• Hundreds of plugins and documentation
• Job configuration from code via Jenkins 

Job Builder (JJB) or Wonga's own JJB Ruby DSL*
• Free! Allowing each team to have their own self-
managed server and agents
* https://github.com/wongatech/wongatech.github.io/blob/master/_drafts/jenkins-job-builder-ruby-dsl.md
SCM
Gerrit GitLab GitHub
SCM
Gerrit GitLab GitHub
GERRIT
• Review and CI validation processes
• Supports replication for DR
• LDAP backed authentication
• Integrates with internal tools, like JIRA
• Detailed ACLs and nice project structure
GITHUB
• Nice UI and developers familiarity
• Hooks integration
• Debatable Pull Requests model
• Delegate DR, HA, etc… to Github
• Has source code based wiki
SCM
Puppet Labs Opscode Chef Ansible
SCM
Puppet Labs Opscode Chef Ansible
ANSIBLE STRENGTHS
• Easy learning curve
• Agentless but you can also do ansible-pull
• Plays nicely with running Windows servers
• Decent community roles in Ansible Galaxy
ANSIBLE ISSUES
• Ansible 2.0 is still a bit buggy
• You always need a Linux control machine
• Less flexible than Chef or Puppet (unless you
write your own modules…)
• Variable quality in Ansible Galaxy
MONITORING
MONITORING
ELK STACKVS SPLUNK
• Decent in-house Splunk experience
• Splunk dashboards still a bit better than Kibana
• Logstash needs to configure GROK, Splunk can
mostly guess itself
• Still experimenting with ELK for our own stuff
INFLUXDATA
• A platform for collecting time-series data
• Model system metrics and business metrics
• We use the Telegraf agent to send metrics,
InfluxDB to store data and Grafana dashboards
• Need to explore Kapacitor for monitoring
INFLUXDATA CONCERNS
• Experimental support for Windows
• Still 0.12 at the moment. Breaking API changes
• Many people get confused about time-series data
• InfluxDB cluster not free anymore
INFRASTRUCTURE
PACKER STRENGTHS
• Works nicely with both Windows and Linux
• Plays nicely with AWS and VMWare
• Easy to share provisioning scripts
• Easier to understand than Config Management
tools (Chef, Puppet or Ansible)
PACKER CAVEATS
• Need to be very prescriptive or the number of
templates can get out of hand quickly
• Hard to go with a DRY approach
• Often not much benefit in Linux systems vs
provisioning tools on startup
TERRAFORM STRENGTHS
• Plays nicely with AWS and has some initial
support for vSphere (actively developed)
• Has a nice pluggable providers system to
automate virtually everything… if you know Go
• No real cloud agnostic competitor
TERRAFORM ISSUES
• Not great documentation and error messages
• Some providers don´t have nice update support
• Tricky to store state files
• Terraform modules are still a bit hacky
• Relatively immature overall
SOME SUCCESS!
• Tools decided, good engagement in the team
• Building Packer AMIs andVMWare templates
• Some services already fully managed by Ansible
• Many servers rebuilt from config management
• Small Terraform setups working
THE (NEAR) FUTURE
• Consul for Service Discovery and Config storage
• Better secrets / keys management (Vault)
• Start the Prod migration to AWS (some
components already running in PreProd)
• Improve the current successes and think platform
BABY STEPS
A LONG JOURNEY AHEAD
QUESTIONS?
• BTW… incidentally… we are hiring!
• Come talk to us!
• Thank you for listening!

More Related Content

More from Ricard Clau

DevOps Barcelona Conference 2018 - Intro
DevOps Barcelona Conference 2018 - IntroDevOps Barcelona Conference 2018 - Intro
DevOps Barcelona Conference 2018 - IntroRicard Clau
 
Hashicorp at holaluz
Hashicorp at holaluzHashicorp at holaluz
Hashicorp at holaluzRicard Clau
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOpsRicard Clau
 
Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014Ricard Clau
 
Speed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with RedisSpeed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with RedisRicard Clau
 
Scaling with Symfony - PHP UK
Scaling with Symfony - PHP UKScaling with Symfony - PHP UK
Scaling with Symfony - PHP UKRicard Clau
 
Redis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHPRedis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHPRicard Clau
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Ricard Clau
 
Betabeers Barcelona - Buenas prácticas
Betabeers Barcelona - Buenas prácticasBetabeers Barcelona - Buenas prácticas
Betabeers Barcelona - Buenas prácticasRicard Clau
 
Desymfony - Servicios
Desymfony  - ServiciosDesymfony  - Servicios
Desymfony - ServiciosRicard Clau
 

More from Ricard Clau (10)

DevOps Barcelona Conference 2018 - Intro
DevOps Barcelona Conference 2018 - IntroDevOps Barcelona Conference 2018 - Intro
DevOps Barcelona Conference 2018 - Intro
 
Hashicorp at holaluz
Hashicorp at holaluzHashicorp at holaluz
Hashicorp at holaluz
 
What we talk about when we talk about DevOps
What we talk about when we talk about DevOpsWhat we talk about when we talk about DevOps
What we talk about when we talk about DevOps
 
Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014
 
Speed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with RedisSpeed up your Symfony2 application and build awesome features with Redis
Speed up your Symfony2 application and build awesome features with Redis
 
Scaling with Symfony - PHP UK
Scaling with Symfony - PHP UKScaling with Symfony - PHP UK
Scaling with Symfony - PHP UK
 
Redis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHPRedis Everywhere - Sunshine PHP
Redis Everywhere - Sunshine PHP
 
Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2Escalabilidad y alto rendimiento con Symfony2
Escalabilidad y alto rendimiento con Symfony2
 
Betabeers Barcelona - Buenas prácticas
Betabeers Barcelona - Buenas prácticasBetabeers Barcelona - Buenas prácticas
Betabeers Barcelona - Buenas prácticas
 
Desymfony - Servicios
Desymfony  - ServiciosDesymfony  - Servicios
Desymfony - Servicios
 

Recently uploaded

Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniquesugginaramesh
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction managementMariconPadriquez1
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 

Recently uploaded (20)

Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniques
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction management
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 

From snowflakes to a common automated platform

  • 1. FROM SNOWFLAKES TO A COMMON AUTOMATED PLATFORM Ricard Clau John Paul Newman
  • 2. WHAT DO WE DO? • Automation group function in Wonga • Small team servicing X engineers in 5 locations • CI / CD pipelines, Logging / Monitoring, infrastructure provisioning, config management, … • Most of the team is quite new to the company
  • 3. A BIT OF WONGA HISTORY • Started in 2007, DevOps was not even a thing! • Regions expansion, acquisitions, … • Massive growth, engineers did their best to keep up • Regulations happened, FCA approval needed • Massive turnover, knowledge lost, lack of docs…
  • 4. CURRENT PROBLEMS • Snowflake servers, many attempts in the past failed • No unified processes in the group • Not great monitoring dashboards • No DevOps culture, we are seen as a service team • Sometimes, all these are great excuses
  • 5. WANTTO ACHIEVE • Build / Provision servers & infrastructure from code • Needs to work for both Windows and Linux • Hybrid cloud (AWS) / datacenter (vSphere) • Simple, pragmatic and efficient tools • Progressive introduction of new tooling
  • 6. INITIAL ROADMAP • Pick tools to build / automate everything • Rationalise CI / CD tooling • Plan a progressive migration to the AWS cloud • Rationalise logging / monitoring infrastructure • Build platform capabilities that can be shared
  • 7. CI Jenkins Team City ThoughtWorks GoCD
  • 8. CI Jenkins Team City ThoughtWorks GoCD
  • 9. JENKINS • Hundreds of plugins and documentation • Job configuration from code via Jenkins 
 Job Builder (JJB) or Wonga's own JJB Ruby DSL* • Free! Allowing each team to have their own self- managed server and agents * https://github.com/wongatech/wongatech.github.io/blob/master/_drafts/jenkins-job-builder-ruby-dsl.md
  • 12. GERRIT • Review and CI validation processes • Supports replication for DR • LDAP backed authentication • Integrates with internal tools, like JIRA • Detailed ACLs and nice project structure
  • 13. GITHUB • Nice UI and developers familiarity • Hooks integration • Debatable Pull Requests model • Delegate DR, HA, etc… to Github • Has source code based wiki
  • 14. SCM Puppet Labs Opscode Chef Ansible
  • 15. SCM Puppet Labs Opscode Chef Ansible
  • 16. ANSIBLE STRENGTHS • Easy learning curve • Agentless but you can also do ansible-pull • Plays nicely with running Windows servers • Decent community roles in Ansible Galaxy
  • 17. ANSIBLE ISSUES • Ansible 2.0 is still a bit buggy • You always need a Linux control machine • Less flexible than Chef or Puppet (unless you write your own modules…) • Variable quality in Ansible Galaxy
  • 20. ELK STACKVS SPLUNK • Decent in-house Splunk experience • Splunk dashboards still a bit better than Kibana • Logstash needs to configure GROK, Splunk can mostly guess itself • Still experimenting with ELK for our own stuff
  • 21. INFLUXDATA • A platform for collecting time-series data • Model system metrics and business metrics • We use the Telegraf agent to send metrics, InfluxDB to store data and Grafana dashboards • Need to explore Kapacitor for monitoring
  • 22. INFLUXDATA CONCERNS • Experimental support for Windows • Still 0.12 at the moment. Breaking API changes • Many people get confused about time-series data • InfluxDB cluster not free anymore
  • 24. PACKER STRENGTHS • Works nicely with both Windows and Linux • Plays nicely with AWS and VMWare • Easy to share provisioning scripts • Easier to understand than Config Management tools (Chef, Puppet or Ansible)
  • 25. PACKER CAVEATS • Need to be very prescriptive or the number of templates can get out of hand quickly • Hard to go with a DRY approach • Often not much benefit in Linux systems vs provisioning tools on startup
  • 26. TERRAFORM STRENGTHS • Plays nicely with AWS and has some initial support for vSphere (actively developed) • Has a nice pluggable providers system to automate virtually everything… if you know Go • No real cloud agnostic competitor
  • 27. TERRAFORM ISSUES • Not great documentation and error messages • Some providers don´t have nice update support • Tricky to store state files • Terraform modules are still a bit hacky • Relatively immature overall
  • 28. SOME SUCCESS! • Tools decided, good engagement in the team • Building Packer AMIs andVMWare templates • Some services already fully managed by Ansible • Many servers rebuilt from config management • Small Terraform setups working
  • 29. THE (NEAR) FUTURE • Consul for Service Discovery and Config storage • Better secrets / keys management (Vault) • Start the Prod migration to AWS (some components already running in PreProd) • Improve the current successes and think platform
  • 31. A LONG JOURNEY AHEAD
  • 32. QUESTIONS? • BTW… incidentally… we are hiring! • Come talk to us! • Thank you for listening!