The SRE Exporter is a service running in Edge Orchestrator that perpetually collects a subset of metrics from both Edge Orchestrator services and Edge Nodes, and exports them to an arbitrary external destination server using the Prometheus Remote-Write Protocol.
The SRE Exporter is intended to enhance the reliability of Edge Orchestrator by allowing it to store and monitor its essential metrics within an independent Site Reliability Engineering (SRE) system. Such an SRE system may implement its own data retention policy and provide SRE functions like performance monitoring, incident management, on-call management, etc.
The SRE Exporter allows for the configuration of the following settings:
- Destination server URL and basic authentication credentials
- TLS (optionally the server's private CA root certificate can be provided)
- Export time interval
- Edge Orchestrator instance-specific label
The SRE Exporter allows for monitoring the following metrics:
- Edge Orchestrator API success rate and latency
- Edge Orchestrator cluster nodes saturation metrics (CPU and memory)
- Edge Orchestrator Vault status
- Edge Nodes metrics (CPU, memory, disk, temperature) across all organizations and projects
See the Exported metrics specification for more details.
Read more about the SRE Exporter in the Documentation.
To set up the development environment and work on this project, follow the steps below.
All necessary tools will be installed using the install-tools target.
Note that docker and asdf must be installed beforehand.
To install all the necessary tools needed for development the project, run:
make install-toolsTo build the project, use the following command:
make buildTo lint the code and ensure it adheres to the coding standards, run:
make lintTo run the tests and verify the functionality of the project, use:
make testTo build the Docker images for the project, run:
make docker-buildTo package the Helm chart for the project, use:
make helm-buildTo push the Docker images to the registry, run:
make docker-pushTo push the Helm chart to the repository, use:
make helm-pushTo load the Docker images into a local Kind cluster, run:
make kind-allTo generate code from protobuf definitions, use:
make protoIt is recommended to develop the sre-exporter application by deploying and testing it as a part of the Edge Orchestrator cluster.
Refer to Development and Testing document for more detailed instructions.
The code of this project is maintained and released in CI using the VERSION file.
In addition, the chart is versioned with the same tag as the VERSION file.
This is mandatory to keep all chart versions and app versions coherent.
To bump the version, increment the version in the VERSION file and run the following command
(to set version and appVersion in the Chart.yaml automatically):
make helm-buildTo learn how to contribute to the project, see the Contributor's Guide.
To learn more about the project, its community, and governance, visit the Edge Orchestrator Community.
For support, start with Troubleshooting or Contact us.
The Edge Orchestrator Site Reliability Engineering (SRE) Exporter is licensed under the Apache 2.0 License.
Last Updated Date: {March 28, 2025}