is a separate system • Diverse Init Systems (Systemd, OpenRC, custom) • Diverse communication: API vs. Shell • Push vs. Pull configuration • Kubelet has many OS responsibilities •
plane from the control plane.” — Matt Klein • The data plane is meant to be simple. Opinionated decisions are implemented at the control plane. • This decouples envoy from higher-level orchestration. • Use a generic common bootstrap (file), then can subscribe to any number of control planes. https://blog.envoyproxy.io/the-universal-data-plane-api-d15cec7a
Utilizes gRPC: Bi-directional streaming, etc. Also supports JSON/REST Metadata support • Supports static (file-based) and dynamic (streaming gRPC) configurations • Eventually consistent
Service (CDS) Route Discovery Service (RDS) Listener Discovery Service (LDS) Health Discovery Service (HDS) Secret Discovery Service (SDS) Aggregated Discovery Service (ADS)
World) updates, allows multiple subscriptions or connection to an aggregated resource server: • State of the World (Basic xDS): SotW, separate gRPC stream for each resource type (DiscoveryRequest/DiscoveryResponse proto3) • Incremental xDS: incremental, separate gRPC stream for each resource type (DeltaDiscoveryRequest/DeltaDiscoveryResponse proto3) • Aggregated Discovery Service (ADS): SotW, aggregate stream for all resource types • Incremental ADS: incremental, aggregate stream for all resource types