Slack

Migrating Millions of Concurrent Websockets to Envoy

Mar 15, 2021
Migrating Millions of Concurrent Websockets to Envoy
SummaryAI, from the source post

This post details the migration of Slack's websocket load balancing tier from HAProxy to Envoy Proxy. It outlines the motivations for the migration, including Envoy's hot restart capabilities and advanced load balancing features (zone-aware routing, outlier detection, panic routing). The post describes the process of generating Envoy configurations using Chef libraries and custom resources, the testing and validation methods employed (curl, debug logging, admin interface, JSON logs), and the production rollout strategy using weighted DNS routing via NS1 and NLBs. The migration aimed to improve operability, standardize on a single proxy technology, and leverage Envoy's advanced features.

More from the Edge Network Request Flow trail