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

CloudNative London Sept '18 - Accelerating Deli...

Avatar for Si Westcott Si Westcott
September 28, 2018

CloudNative London Sept '18 - Accelerating Delivery Velocity With Kubernetes

Avatar for Si Westcott

Si Westcott

September 28, 2018

More Decks by Si Westcott

Other Decks in Technology

Transcript

  1. Bet UK 2015 2018 3 Software Engineering Squads 15 Software

    Engineering Squads 1 DevOps Squad 0 DevOps Squads Monolith Monolith, Microservices On-premise On-premise, AWS VMs VMs, Containers @sewestcott
  2. Growing pains Increasing complexity Unclear ownership Risky to change Release

    queues Static configuration 30% YoY growth @sewestcott
  3. Platform Engineering Outside of the squad, there should be no

    humans involved between feature and customer @sewestcott
  4. Test > Staging > Prod-1 > Prod-2 The cost of

    “Hello World” @sewestcott Backups DNS Certificates Load Balancing Storage Firewall Operating System Servers Failover Logging Scaling Patching Alerting Monitoring SIEM IDS
  5. Repeatability Test > Staging > Prod-1 > Prod-2 helm install

    <chart> --namespace test --values env/test.yaml helm install <chart> --namespace staging --values env/staging.yaml helm install <chart> --namespace prod-1 --values env/prod-1.yaml helm install <chart> --namespace prod-2 --values env/prod-2.yaml @sewestcott
  6. Shifting left Integration, performance testing helm install <chart> --namespace TICKET-1

    --values env/integration.yaml helm install <chart> --namespace TICKET-2 --values env/integration.yaml helm install <chart> --namespace TICKET-3 --values env/integration.yaml helm install <chart> --namespace TICKET-4 --values env/integration.yaml @sewestcott
  7. @sewestcott VM VM VM VM VM Stats VM Stats Graphite

    Static workload config Separate deployment pipeline Alerting
  8. Prometheus Operator Orchestrates Prometheus on Kubernetes Scrape targets & rules

    defined as Kubernetes YAML Deployed with application github.com/coreos/prometheus-operator @sewestcott
  9. Squads have operational responsibility for their services ... that includes

    patching Jenkins is the go to platform Groovy libraries to interface with load balancers, run healthchecks & silence alarms Is this effective use of engineering time? @sewestcott
  10. Kubernetes Deployments Engineering squads responsible for updating containers Managed rollouts

    and readiness/liveness probes Trust Kubernetes to handle updates @sewestcott