Functional Layers
Background
Context on the inclusion of “functional layers” can be viewed in our ADR. In short, UDS Core publishes smaller Zarf packages that contain subsets of core’s capabilities, grouped by their function (such as monitoring, logging, backup/restore, etc) to allow more flexibility in deployment. This helps to support resource constrained environments (edge deployments) and other situations where an environment has different needs than the default core stack.
Each layer is published as an individual OCI Zarf package. Package sources can be viewed under the packages
directory, with each folder containing a readme detailing the contents and any dependencies. All layers assume the requirement of the base layer which provides Istio, the UDS Operator, and UDS Policy Engine.
Example Usage
Functional layers are designed to be combined into a UDS bundle for deployment. The example below shows all layers in the correct order. Keep in mind that ‘base’ must always be the first layer, and any other layers should follow based on their dependency order. When building your bundle, you can skip layers that don’t fit your deployment needs and apply overrides to individual layers as needed. Ensure all layers are using the same version for compatibility.