docs: add envoy to the proxycfg diagram (#16834)

* docs: add envoy to the proxycfg diagram
This commit is contained in:
cskh 2023-04-04 09:42:42 -04:00 committed by GitHub
parent 0582f137c5
commit a319953576
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 10 deletions

View File

@ -20,11 +20,11 @@
// | State | | State Sync | // | State | | State Sync |
// +-------+ +-----+------+ // +-------+ +-----+------+
// ▲ | // ▲ |
// | +---------------+ | 2. // +-------+ | +---------------+ | 2.
// 4. | 4a. | Local | | // | envoy | 4. | 4a. | Local | |
// | +-▶ | Config Source +-+ | // +-------+ | +-▶ | Config Source +-+ |
// | | +---------------+ | | // | stream | | +---------------+ | |
// | | ▼ ▼ // | | ▼ ▼
// +--------+ 3. +-+-+-----------+ 6. +----------+ 2a. +----------+ // +--------+ 3. +-+-+-----------+ 6. +----------+ 2a. +----------+
// | xDS +---▶ | Catalog +-----▶ | proxycfg +----▶ | proxycfg | // | xDS +---▶ | Catalog +-----▶ | proxycfg +----▶ | proxycfg |
// | Server | ◀---+ Config Source +-----▶ | Manager +--+ | State | // | Server | ◀---+ Config Source +-----▶ | Manager +--+ | State |
@ -41,10 +41,10 @@
// they are sync'd to the proxycfg.Manager. // they are sync'd to the proxycfg.Manager.
// 2a. proxycfg.Manager creates a state object for the service and begins // 2a. proxycfg.Manager creates a state object for the service and begins
// pre-fetching data (go to 8). // pre-fetching data (go to 8).
// 3. Client begins a stream and the xDS server calls Watch on its ConfigSource - // 3. Client (i.e., envoy) begins a stream and the xDS server calls Watch on its
// on a client agent this would be a local config source, on a server it would // ConfigSource - on a client agent this would be a local config source, on a
// be a catalog config source. // server it would be a catalog config source.
// 4. The catalog config source will check if service is registered locally. // 4. On server, the catalog config source will check if service is registered locally.
// 4a. If the service *is* registered locally it hands off the the local config // 4a. If the service *is* registered locally it hands off the the local config
// source, which calls Watch on the proxycfg manager (and serves the pre- // source, which calls Watch on the proxycfg manager (and serves the pre-
// fetched data). // fetched data).

View File

@ -37,7 +37,7 @@ The core of the built-in proxy is implemented in the [connect/proxy](https://git
The high-level flow of configuring Envoy is: The high-level flow of configuring Envoy is:
1. The initial "bootstrap" configuration is generated for an Envoy proxy by a consul-dataplane instance or a Consul client agent. 1. The initial "bootstrap" configuration is generated for an Envoy proxy by a consul-dataplane instance or a Consul client agent.
2. Envoy dials the xDS server, requesting configuration to act as a particular proxy or gateway instance. The xDS server will either be a Consul server or a Consul client agent. 2. Envoy dials the xDS server, requesting configuration to act as a particular proxy or gateway instance. The xDS server will either be a Consul server or a Consul client agent.
3. Consul in initializes internal watches for the snapshot of data necessary to configure Envoy. This snapshot will contain data as collected from Consul's state. 3. Consul initializes internal watches for the snapshot of data necessary to configure Envoy. This snapshot will contain data as collected from Consul's state.
4. As these snapshots are generated and updated, Consul will generate and push Envoy configuration for the various xDS resource types if there were changes. 4. As these snapshots are generated and updated, Consul will generate and push Envoy configuration for the various xDS resource types if there were changes.
### Bootstrapping Envoy proxies ### Bootstrapping Envoy proxies