Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cloud & DevOps World

Cloud & DevOps World

Slide deck used at Cloud & DevOps World in June, 2016 by Tim Savage https://tmt.knect365.com/cloud-devops-world/speakers/tim-savage

Armakuni

June 14, 2016
Tweet

More Decks by Armakuni

Other Decks in Technology

Transcript

  1. Armakuni • Cloud native transformations • Engineering for the cloud

    • Application development in the cloud Introductions Tim Savage, Armakuni Tim Savage • Director • Full stack engineer • Product owner @armakunihq http://www.armakuni.com
  2. ▪ Well known UK Charity ▪ Vision: “Just world free

    from poverty” ▪ £1 billion since its inception in 1985 ▪ Campaigns: Red Nose Day & Sport Relief ▪ 8-12 week campaigns culminating in a telethon event. Introductions Comic Relief
  3. Responsibility Armakuni built and run the platform that has to

    be able to handle all the credit card transactions generated at this point.
  4. To Summarise the Challenge... ▪ 400 donations per second ▪

    Public and Call Centre interfaces just 7 hours per year
  5. To Summarise the Challenge... ▪ 400 donations per second ▪

    Public and Call Centre interfaces ▪ 7 hours per year Guarantee £Xty million in donations
  6. To Summarise the Challenge... ▪ 400 donations per second ▪

    Public and Call Centre interfaces ▪ 7 hours per year ▪ Guarantee £Xty million in donations No second chance
  7. To Summarise the Challenge... ▪ 400 donations per second ▪

    Public and Call Centre interfaces ▪ 7 hours per year ▪ Guarantee £Xty million in donations ▪ No second chance On a charity budget
  8. To Summarise the Challenge... ▪ 400 donations per second ▪

    Public and Call Centre interfaces ▪ 7 hours per year ▪ Guarantee £Xty million in donations ▪ No second chance ▪ On a charity budget No practising
  9. 400 Real-time card transactions per second 100,000 + 10,000 Concurrent

    public users + Call centre users 800,000 Donations in a 7 hour window
  10. Before 2012? ▪ Java Monolith : : Code to manage,

    difficult development process ▪ No automated testing : : Manual testing leads to gaps ▪ Manual deployment : : Inconsistencies, time consuming, unrepeatable ▪ Single points of failure : : Infrastructure provider, platform, bandwidth ▪ Multiple partners : : Complex matrix of partners, up to 50 people involved ▪ 1 year feedback cycle : : Changes were only really tested once a year
  11. ▪ TDD/BDD ▪ Unit ▪ Integration ▪ Security ▪ Load

    ▪ ... all automated ▪ ... ... all run every time a commit is made No Automated Testing >> Full Suite of automated tests
  12. Manual Deployment >> Continuous Deployment ▪ Continuous deployment is utterly

    dependant on automated testing ▪ Now, all code changes deploy to production on success ▪ (We use Concourse CI)
  13. Single Points of Failure >> Commoditised Services ▪ Where we

    have an external dependancy we have “commoditised” it ▪ Multiple payment service providers ▪ Multiple infrastructure providers ▪ If it doesn’t have an api, we aren’t interested!
  14. Multiple Partners >> Single Partner ▪ We have reduced Comic

    Reliefs dependancy from multiple partners and 40-50 people down to a team of 4 ▪ Everything is code - nothing is done manually, so all knowledge is stored as code +
  15. 1 year feedback cycle >> 15 minute feedback cycle ▪

    Every code change pushed goes through our entire suite of tests before making its way to production ▪ Developers can make changes with confidence
  16. • PaaS - Platform as a Service • Lots “out

    of the box”: ◦ Health monitoring ◦ Routing ◦ Centralised logging ◦ Easy service integration (eg data sources) • Separates applications from infrastructure • Standardised contract for developers
  17. Architecture Add some apps DNS FRONT-END US EAST 1 Cloud

    Foundry (BOSH/EC2) 28 microservices
  18. Architecture Now add some continents and IaaS providers DNS FRONT-END

    US EAST 1 Cloud Foundry BOSH/EC2 FRONT-END EU WEST 1 Cloud Foundry BOSH/EC2 FRONT-END LONDON Cloud Foundry BOSH/VMWARE
  19. Architecture Add Management layer DNS FRONT-END US EAST 1 Cloud

    Foundry BOSH/EC2 FRONT-END EU WEST 1 Cloud Foundry BOSH/EC2 FRONT-END LONDON Cloud Foundry BOSH/VMWAR E REPORTING EU CENTRAL Cloud Foundry BOSH/EC2 LOGS
  20. To Conclude ▪ SUCCESSFUL : : Last 4 campaigns, £Millions

    processed ▪ MANAGEABLE : : 1 team to manage ▪ TEAM : : 50 to 4 ▪ COST : : £Millions (commercially comparable) to < £300k ▪ AGILE : : Even now, the team can be very agile