Published Mar 16, 2021

Episode 451: Luke Kysow on Service Mesh

Luke Kysow from Hashicorp delves into the complexities of service mesh technology, emphasizing advanced traffic management, zero trust networking, and identity-based security, with a focus on Consul compared to other solutions like Istio and Linkerd.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Load Balancing

    Load balancing within a service mesh environment offers unique advantages, as explains. He highlights how service discovery can integrate load information, allowing for more intelligent routing decisions. This is achieved by leveraging proxies that track request patterns and adjust routing based on response times and server loads.

    When we end up putting all this stuff into the proxy, and the proxy is the one that decides where to route these requests, you now have just basically infinite control over where these requests route and what kind of load balancing you want to do.

    ---

    further discusses the use of service splitters in Consul, enabling traffic distribution for canary deployments and A/B testing 1 2.

       

    Retry & Failover

    Retry and failover mechanisms are crucial for maintaining service reliability in a distributed system. describes how proxies can handle retries with exponential backoff and implement circuit breaker patterns to prevent overwhelming services with repeated requests. This approach centralizes failure handling, reducing the need for individual applications to manage retries.

    So what we get with the service mesh now is don't write a for loop in your application that tries this network call 20 times. Instead, try it once, send it out to the proxy.

    ---

    also emphasizes the importance of observability, as proxies emit metrics that help diagnose failures and optimize failover strategies 3 4.

       

    Dynamic Config

    Dynamic traffic configuration in service meshes like Consul allows for flexible and responsive network management. explains how dynamic configurations enable operators to adjust traffic flows based on real-time data, such as spinning up additional instances when a database becomes slow. This capability is enhanced by integrating service meshes with CI/CD pipelines, facilitating seamless deployment and traffic management.

    It's going to be really easy to route only 10% or only a small amount of traffic to those ten instances when we have a service mesh and all of our calls are leaving proxies across our infrastructure.

    ---

    also discusses the use of service splitters for canary deployments, allowing for precise traffic control and monitoring 5 2.

Related Episodes