Skip to content

Latest commit

 

History

History
92 lines (58 loc) · 6.4 KB

README.md

File metadata and controls

92 lines (58 loc) · 6.4 KB

prometheus-federator

This repo contains a set of three interlinked projects:

  • The Prometheus Federator is a k8s Operator that manages deploying Project Monitoring Stacks.
  • The Helm Project Operator is a generic design for a Kubernetes Operator that acts on ProjectHelmChart CRs.
  • Helm Locker is a Kubernetes operator that prevents resource drift on (i.e. "locks") Kubernetes objects that are tracked by Helm 3 releases.

Note

The last two project (helm-project-operator and helm-locker) are not intended or supported for standalone use.

For more info on Helm Project Operator, see the dedicated README file.
For more info on Helm Locker, see the dedicated README file.

Getting Started

For more information, see the Getting Started guide.

Branches and Releases

This is the current branch strategy for rancher/backup-restore-operator, it may change in the future.

Branch Tag Rancher
main head main branch (head)
release/v0.0 v0.x.x v2.9.x, v2.8.x

Note

We are starting our new Branch strategy officially in 2.10, the prior Rancher versions will receive updates to their new versions once cleared for backporting.

More Info

Prometheus Federator is an operator (powered by rancher/helm-project-operator and rancher/charts-build-scripts) that manages deploying one or more Project Monitoring Stacks composed of the following set of resources that are scoped to project namespaces:

A user can specify that they would like to deploy a Project Monitoring Stack by creating a ProjectHelmChart CR in a Project Registration Namespace (cattle-project-<id>) with spec.helmApiVersion: monitoring.cattle.io/v1alpha1, which will deploy the Project Monitoring Stack in a Project Release Namespace (cattle-project-<id>-monitoring).

Note: Since this Project Monitoring Stack deploys Prometheus Operator CRs, an existing Prometheus Operator instance must already be deployed in the cluster for Prometheus Federator to successfully be able to deploy Project Monitoring Stacks. It is recommended to use rancher-monitoring for this. For more information on how the chart works or advanced configurations, please read the README.md on the chart.

For more information on ProjectHelmCharts and how to configure the underlying operator, please read the README.md on the chart or check out the general docs on Helm Project Operators in rancher/helm-project-operator.

For more information on how to configure the underlying Project Monitoring Stack, please read the README.md of the underlying chart (rancher-project-monitoring).

Developing

Which branch do I make changes on?

Prometheus Federator is built and released off the contents of the main branch. To make a contribution, open up a PR to the main branch.

For more information, see the Developing guide.

Building

make

Note: For a more in-depth explanation of how Prometheus Federator is built (intended for anyone who would like to fork this repo to create a new Project Operator!), see the Build guide.

Running

./build/bin/prometheus-federator

Versioning and Releasing For Rancher

Note

We are starting our new Branch strategy officially in 2.10, the prior Rancher versions will receive updates to their new versions once cleared for backporting. Once we fully adopt this branching and release process, we will remove this note.

While this repository does maintain a standalone Helm repository for vanilla Helm users to consume directly, users of Rancher will see forked versions of these chart releases available on Rancher's Apps & Marketplace; the forked chart releases are maintained in the rancher/charts repository on being released from a dev-vX.X branch to a release-vX.X branch, where X.X corresponds to the Rancher ${Major}.${Minor} version that the users is using (i.e. Rancher 2.7).

The chart in rancher/charts is generally the version that is intended for use in production since that is the chart that will be tested by Rancher's QA team. Generally, these charts will match stable versions of charts available in this repository, so non-Rancher users should be able to safely use those versions in this repository for production use cases (at their own risk).

For more information on the process maintainers of this repository use to mirror these charts over to rancher/charts, see the Rancher release guide.

License

Copyright (c) 2020 Rancher Labs, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.