agent/

directory
v0.0.0-...-7c0b2e9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2026 License: Apache-2.0

Directories

Path Synopsis
cmd
agent command
agent-ready command
Command agent-ready is the aether-agent pod's exec liveness and readiness probe (proposal 041).
Command agent-ready is the aether-agent pod's exec liveness and readiness probe (proposal 041).
identity-ready command
Command identity-ready is the egress-side identity gate (#1053): an init container the controller's pod-mutating webhook injects into every mesh-managed pod, which exits 0 only once SPIRE has issued the pod's X.509 SVID.
Command identity-ready is the egress-side identity gate (#1053): an init container the controller's pod-mutating webhook injects into every mesh-managed pod, which exits 0 only once SPIRE has issued the pod's X.509 SVID.
mesh-dns command
Command mesh-dns is the standalone, slim mesh-DNS resolver binary run by the aether-mesh-dns DaemonSet (issues #578, #583).
Command mesh-dns is the standalone, slim mesh-DNS resolver binary run by the aether-mesh-dns DaemonSet (issues #578, #583).
mesh-dns-ready command
Command mesh-dns-ready is the aether-mesh-dns pod's exec readiness probe (#683).
Command mesh-dns-ready is the aether-mesh-dns pod's exec readiness probe (#683).
proxy-ready command
Command proxy-ready is the aether-proxy pod's exec readiness probe (#673).
Command proxy-ready is the aether-proxy pod's exec readiness probe (#673).
proxy-supervisor command
Command proxy-supervisor is the Envoy hot-restart supervisor run as the aether-proxy container entrypoint (proposal 001, carved out of the agent binary by issue #772 phase B2).
Command proxy-supervisor is the Envoy hot-restart supervisor run as the aether-proxy container entrypoint (proposal 001, carved out of the agent binary by issue #772 phase B2).
uds-csi command
Command uds-csi is the csi.aether.io CSI node plugin (proposal 039 Phase 1): the mesh-owned carrier for the directory a UDS-served workload binds its socket in.
Command uds-csi is the csi.aether.io CSI node plugin (proposal 039 Phase 1): the mesh-owned carrier for the directory a UDS-served workload binds its socket in.
Package constants defines agent-specific constants for socket paths and directory defaults.
Package constants defines agent-specific constants for socket paths and directory defaults.
internal
capture
Package capture contains the node agent's transparent-capture controller: it watches the generated selectorless mesh Services (proposal 018, Phase 3a) and projects their cluster.local authorities into the snapshot cache, which builds the cap_http route table the per-pod capture listeners serve.
Package capture contains the node agent's transparent-capture controller: it watches the generated selectorless mesh Services (proposal 018, Phase 3a) and projects their cluster.local authorities into the snapshot cache, which builds the cap_http route table the per-pod capture listeners serve.
cmd
Package cmd provides command-line interface configuration for the Aether agent.
Package cmd provides command-line interface configuration for the Aether agent.
cni/server
Package server implements a gRPC server for the CNI plugin interface.
Package server implements a gRPC server for the CNI plugin interface.
cniconflist
Package cniconflist keeps aether chained in the node's active CNI conflist.
Package cniconflist keeps aether chained in the node's active CNI conflist.
configimport
Package configimport materializes cross-cluster GAMMA config on a spoke (proposal 026, multi-cluster config propagation — the consumer side).
Package configimport materializes cross-cluster GAMMA config on a spoke (proposal 026, multi-cluster config propagation — the consumer side).
edge/gatewayapi
Package gatewayapi contains the edge proxy's Gateway API controller: it watches Gateway API HTTPRoutes, TCPRoutes, and TLSRoutes attached to a Gateway of the aether GatewayClass and projects them into the edge data plane (proposal 018 — north-south).
Package gatewayapi contains the edge proxy's Gateway API controller: it watches Gateway API HTTPRoutes, TCPRoutes, and TLSRoutes attached to a Gateway of the aether GatewayClass and projects them into the edge data plane (proposal 018 — north-south).
edge/gatewayapi/attachment
Package attachment holds the edge Gateway API controller's route→listener attachment resolution: parentRef matching, allowedRoutes (namespaces/kinds) admission, ReferenceGrant-gated backendRef admission, and listener/route hostname intersection.
Package attachment holds the edge Gateway API controller's route→listener attachment resolution: parentRef matching, allowedRoutes (namespaces/kinds) admission, ReferenceGrant-gated backendRef admission, and listener/route hostname intersection.
edge/portalloc
Package portalloc provides deterministic internal-port allocation for per-Gateway edge listeners (proposal 021 Phase 2).
Package portalloc provides deterministic internal-port allocation for per-Gateway edge listeners (proposal 021 Phase 2).
edge/secret
Package secret resolves edge downstream-TLS certificates from pluggable backends (the SecretProvider enum).
Package secret resolves edge downstream-TLS certificates from pluggable backends (the SecretProvider enum).
endpointpolicy
Package endpointpolicy contains the node agent's EndpointPolicy controller: it watches the service-scoped delivery policies (proposal 034 Phase 1b) and projects them into the snapshot cache as a "<ns>/<svc>" → "<volume>/<file>" map.
Package endpointpolicy contains the node agent's EndpointPolicy controller: it watches the service-scoped delivery policies (proposal 034 Phase 1b) and projects them into the snapshot cache as a "<ns>/<svc>" → "<volume>/<file>" map.
gamma
Package gamma contains the node agent's GAMMA controller: it watches Gateway API HTTPRoutes and GRPCRoutes attached to a Service (parentRef kind=Service) — plus the ReferenceGrants that authorise cross-namespace backendRefs and the HTTPFilter extensions those rules attach (proposal 025) — and projects their L7 rules into the node proxy's routing (proposal 018, Phase 2 — east-west).
Package gamma contains the node agent's GAMMA controller: it watches Gateway API HTTPRoutes and GRPCRoutes attached to a Service (parentRef kind=Service) — plus the ReferenceGrants that authorise cross-namespace backendRefs and the HTTPFilter extensions those rules attach (proposal 025) — and projects their L7 rules into the node proxy's routing (proposal 018, Phase 2 — east-west).
gatewaystatus
Package gatewaystatus contains shared helpers for writing Gateway API status: controller-owned RouteParentStatus entries on Routes and conditions on Gateways/GatewayClasses.
Package gatewaystatus contains shared helpers for writing Gateway API status: controller-owned RouteParentStatus entries on Routes and conditions on Gateways/GatewayClasses.
identity
Package identity holds the node agent's late-bound workload identity facts — the ones that used to be resolved synchronously on the startup path and are now folded in whenever SPIRE gets around to issuing an SVID (issue #740).
Package identity holds the node agent's late-bound workload identity facts — the ones that used to be resolved synchronously on the startup path and are now folded in whenever SPIRE gets around to issuing an SVID (issue #740).
l4route
Package l4route contains the node agent's L4 route controller: it watches Gateway API TCPRoutes, TLSRoutes, and UDPRoutes (parentRef kind=Service) and projects their rules into the node proxy's capture listener filter chains.
Package l4route contains the node agent's L4 route controller: it watches Gateway API TCPRoutes, TLSRoutes, and UDPRoutes (parentRef kind=Service) and projects their rules into the node proxy's capture listener filter chains.
meshdns
Package meshdns is Aether's DNS resolver (Istio-style, proposal 018 mesh-global FQDN).
Package meshdns is Aether's DNS resolver (Istio-style, proposal 018 mesh-global FQDN).
node
Package node provides node-level operations for the agent — notably removing the aether startup taint once the agent's CNI is serving, so workload pods can schedule onto the node (the Cilium-style cold-start gate; see issue #261).
Package node provides node-level operations for the agent — notably removing the aether startup taint once the agent's CNI is serving, so workload pods can schedule onto the node (the Cilium-style cold-start gate; see issue #261).
ownership
Package ownership decides which node agent owns its node (proposal 041).
Package ownership decides which node agent owns its node (proposal 041).
proxy/hotrestart
Package hotrestart implements a supervisor that manages the aether-proxy Envoy process and performs Envoy hot restarts across restart epochs, replicating the behavior of Envoy's hot-restarter.py in Go (see docs/proposals/001_proxy-hot-restart.md).
Package hotrestart implements a supervisor that manages the aether-proxy Envoy process and performs Envoy hot restarts across restart epochs, replicating the behavior of Envoy's hot-restarter.py in Go (see docs/proposals/001_proxy-hot-restart.md).
schedmetrics
Package schedmetrics exports the node agent's own kernel scheduler counters as OpenTelemetry instruments under aether.agent.sched.* (issue #1131).
Package schedmetrics exports the node agent's own kernel scheduler counters as OpenTelemetry instruments under aether.agent.sched.* (issue #1131).
spire
Package spire provides integration with SPIRE for X.509 SVID management.
Package spire provides integration with SPIRE for X.509 SVID management.
supervisorcmd
Package supervisorcmd builds the cobra command for the Envoy hot-restart supervisor (proposal 001).
Package supervisorcmd builds the cobra command for the Envoy hot-restart supervisor (proposal 001).
udscsi
Package udscsi is the csi.aether.io node plugin (proposal 039 Phase 1): the CSI driver that gives each UDS-served workload a mesh-owned socket directory.
Package udscsi is the csi.aether.io node plugin (proposal 039 Phase 1): the CSI driver that gives each UDS-served workload a mesh-owned socket directory.
xds/ack
Package ack tracks Envoy's delta-xDS ACK/NACKs per resource, replacing admin /config_dump polling (which serializes config on Envoy's main thread) as the agent's confirmation that a config update reached the proxy.
Package ack tracks Envoy's delta-xDS ACK/NACKs per resource, replacing admin /config_dump polling (which serializes config on Envoy's main thread) as the agent's confirmation that a config update reached the proxy.
xds/cache
Package cache manages Envoy xDS snapshot resources for the agent.
Package cache manages Envoy xDS snapshot resources for the agent.
xds/cache/cachemetrics
Package cachemetrics holds the agent xDS snapshot-generation instruments.
Package cachemetrics holds the agent xDS snapshot-generation instruments.
xds/cache/snapversion
Package snapversion generates xDS snapshot version strings for the agent cache.
Package snapversion generates xDS snapshot version strings for the agent cache.
xds/config
Package config provides Envoy configuration helpers for xDS resources.
Package config provides Envoy configuration helpers for xDS resources.
xds/proxy
Package proxy provides functions to generate Envoy resource types (listeners, clusters, endpoints, routes, filter chains) from pod and service registry data.
Package proxy provides functions to generate Envoy resource types (listeners, clusters, endpoints, routes, filter chains) from pod and service registry data.
xds/quicdemand
Package quicdemand sorts the `quic:` twin names in the node proxy's delta CDS requests into the three things they can mean (issues #1020, #1033).
Package quicdemand sorts the `quic:` twin names in the node proxy's delta CDS requests into the three things they can mean (issues #1020, #1033).
xds/server
Package server implements the agent-specific Envoy xDS server.
Package server implements the agent-specific Envoy xDS server.
xds/xdsconst
Package xdsconst holds the Aether pod annotation keys consumed exclusively by the agent's xDS proxy-config generation (proxy/cache/server), keeping them out of the cross-tree common/constants fan-in.
Package xdsconst holds the Aether pod annotation keys consumed exclusively by the agent's xDS proxy-config generation (proxy/cache/server), keeping them out of the cross-tree common/constants fan-in.
Package storage provides interfaces and implementations for persisting and retrieving pod data, as local file-based storage backed by an in-memory cache.
Package storage provides interfaces and implementations for persisting and retrieving pod data, as local file-based storage backed by an in-memory cache.
test
envoy_validate
Package envoy_validate provides functions to build representative Envoy bootstrap JSON configurations derived from the aether node-agent's actual xDS proxy builders.
Package envoy_validate provides functions to build representative Envoy bootstrap JSON configurations derived from the aether node-agent's actual xDS proxy builders.
envoy_validate/generate command
Command generate-envoy-bootstrap emits representative Envoy bootstrap JSON files into --out for offline inspection or CI artifact storage.
Command generate-envoy-bootstrap emits representative Envoy bootstrap JSON files into --out for offline inspection or CI artifact storage.
envoybin
Package envoybin locates the pinned aether-proxy Envoy binary inside a Bazel test's runfiles tree.
Package envoybin locates the pinned aether-proxy Envoy binary inside a Bazel test's runfiles tree.
xdseval
Package xdseval evaluates the parts of Envoy configuration the agent's tests reason about, the way the pinned proxy does: which filter chain of a listener a connection selects (filter_chain_matcher, or the legacy filter_chain_match), and what a route table answers one request (virtual host selection, the virtual host's matcher, the first matching route).
Package xdseval evaluates the parts of Envoy configuration the agent's tests reason about, the way the pinned proxy does: which filter chain of a listener a connection selects (filter_chain_matcher, or the legacy filter_chain_match), and what a route table answers one request (virtual host selection, the virtual host's matcher, the first matching route).
Package types provides type definitions used throughout the Aether agent.
Package types provides type definitions used throughout the Aether agent.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL