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

Canary Releases in Kubernetes with Gloo API Gateway

Solo.io
April 09, 2020

Canary Releases in Kubernetes with Gloo API Gateway

Canary deployments are an approach for safer application delivery and in this case, the delivery of new software to your end users without disrupting or interrupting their experience. Techniques like Blue/Green, Canary and Progressive Delivery allow you to reduce the risk by slowing down and better controlling how many end users have access to the new software as it is deployed to production.

Combined with the adoption of microservices architecture, containers and Kubernetes, our deployment practices change from upgrading in place to deploying entire new services in its place. These new applications can be made up of tens or even hundreds of loosely coupled services that are releasing new versions weekly or even daily.

When operationalizing Kubernetes environments, operators can leverage the networking layer to control the impact of new releases without creating service outages, gain early insight into any issues with the new service, and gain control over the software releases to ensure successful deployments, proper application behavior and a great end user experience.

More Information
Website https://www.solo.io/products/gloo/
Watch the video https://youtu.be/sGkeX47_F4A
Tutorial https://www.solo.io/blog/two-phased-canary-rollout-with-gloo/
Request a demo https://lp.solo.io/lp-request-a-demo-overview
Join the community https://slack.solo.io/

Solo.io

April 09, 2020
Tweet

More Decks by Solo.io

Other Decks in Programming

Transcript

  1. 2 | Copyright © 2020 Successfully deliver new features and

    software frequently to end users Minimize risk, downtime, and disruption to end users GOAL CHALLENGE
  2. 3 | Copyright © 2020 Successfully deliver new features and

    software frequently to end users Minimize risk, downtime, and disruption to end users GOAL CHALLENGE How is this complicated by microservices architecture? > More components changing > Changes are independent of other services
  3. 4 | Copyright © 2020 Canary Releases Offer Safer Deployments

    What is it? Canary release is a technique to reduce the risk of introducing a new software version in production by slowly rolling out the change to a small subset of users before rolling it out to the entire infrastructure and making it available to everybody. How does it work? 1. Deploy new version alongside existing version 2. Route a small percentage of traffic to the new service 3. Observe behavior and once satisfied*, route all traffic to new service * Caveat: There are many ways to implement this and we will cover one of them today Source https://martinfowler.com/bliki/CanaryRelease.html
  4. 5 | Copyright © 2020 Gloo, a Next Generation API

    Gateway Cloud-native API Gateway and Ingress Controller • Built with Envoy Proxy • Kubernetes-native • Pluggable and extensible Gloo can… • Connect any app: monolith, microservice, serverless • Secure and protect app services • Granular traffic control, management and observability • Extend and customize to your environment
  5. 6 | Copyright © 2020 Canary Releases with Gloo ENVOY

    CONFIG CONTROL PLANE DATA PLANE END USERS echo v1 echo v2 namespace: echo Two Phased Canary Release Phase 1 • Deploy new version • Shift subset of traffic to v2 • Perform tests and observe Phase 2 • Progressively shift more traffic • Observe under load • Decommission v1
  6. 8 | Copyright © 2020 Many Use Cases for Gloo

    API Gateway API GATEWAY KUBERNETES INGRESS SERVICE MESH INTEGRATION KNATIVE SERVING
  7. 11 | Copyright © 2020 LEARN MORE solo.io/gloo TUTORIAL solo.io/blog/two-phased-canary-rollout-with-gloo

    REQUEST TRIAL lp.solo.io/lp-request-a-trial-general SOLO COMMUNITY slack.solo.io Thank You!