envoyproxy / envoyproxy/envoy

Slow Envoy init due to secret initialization

Open
#21,492 4 comments 0 reactions 0 assignees View on GitHub
area/go-control-plane area/sds help wanted investigate
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 20h
Merged PRs (30d)
437

Description

Our Envoy currently holds about 2000 secrets. On startup, it will begin initializing these secrets but won't serve traffic until all of them have been loaded.

On first start, it takes about 20-30 minutes to load them all. During this time, you could run `curl localhost:19000/config_dump | grep "initialized" | wc -l` and it will slowly count down. Once it reaches 0, it almost immediately.

We're currently using the [Golang Control Plane](https://github.com/envoyproxy/go-control-plane) Snapshot API.

I'm wondering if there's a faster way to load these secrets, or potentially even a way to lazily load them?

Envoy Version: 1.21.2

I suspect this is due to us having a single control plane with ADS but I'm only spitballing here

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.