diff --git a/.abs/main.yaml b/.abs/main.yaml index 63ceadb0..bd1969aa 100644 --- a/.abs/main.yaml +++ b/.abs/main.yaml @@ -1,6 +1,6 @@ replace-chart-version-with-git: true generate-metadata: true -chart-dir: ./helm/prometheus-operator-app +chart-dir: ./helm/kube-prometheus-stack destination: ./build ct-config: ./.circleci/ct-config.yaml catalog-base-url: https://giantswarm.github.io/giantswarm-catalog/ diff --git a/.circleci/config.yml b/.circleci/config.yml index 432870d4..decf59bd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -11,7 +11,8 @@ workflows: name: push-to-default-app-catalog app_catalog: "default-catalog" app_catalog_test: "default-test-catalog" - chart: "prometheus-operator-app" + chart: "kube-prometheus-stack" + explicit_allow_chart_name_mismatch: "true" ct_config: ".circleci/ct-config.yaml" filters: # Trigger the job also on git tag. @@ -24,7 +25,8 @@ workflows: name: push-to-giantswarm-app-catalog app_catalog: "giantswarm-catalog" app_catalog_test: "giantswarm-test-catalog" - chart: "prometheus-operator-app" + chart: "kube-prometheus-stack" + explicit_allow_chart_name_mismatch: "true" ct_config: ".circleci/ct-config.yaml" filters: # Trigger the job also on git tag. diff --git a/.github/workflows/e2e-test.yaml b/.github/workflows/e2e-test.yaml index 436643f5..aa261364 100644 --- a/.github/workflows/e2e-test.yaml +++ b/.github/workflows/e2e-test.yaml @@ -13,17 +13,17 @@ jobs: - name: install chart run: | - sed -i 's/\[\[ .Version \]\]/0.0.0/' helm/prometheus-operator-app/Chart.yaml + sed -i 's/\[\[ .Version \]\]/0.0.0/' helm/kube-prometheus-stack/Chart.yaml - helm dependency update ./helm/prometheus-operator-app/ + helm dependency update ./helm/kube-prometheus-stack/ - helm --kube-context kind-chart-testing install e2e-test-prometheus-operator ./helm/prometheus-operator-app/ --wait + helm --kube-context kind-chart-testing install e2e-test-prometheus-operator ./helm/kube-prometheus-stack/ --wait - kubectl --context kind-chart-testing wait pod --for=condition=Ready -l app=prometheus-operator-app-operator + kubectl --context kind-chart-testing wait pod --for=condition=Ready -l app=kube-prometheus-stack-operator sleep 120 - STATE=$(kubectl --context kind-chart-testing get pods -l app=prometheus-operator-app-operator -ojson | jq -r '.items | .[0].status.phase') + STATE=$(kubectl --context kind-chart-testing get pods -l app=kube-prometheus-stack-operator -ojson | jq -r '.items | .[0].status.phase') if [ "$STATE" == "Running" ]; then echo 'prometheus operator is Running' else diff --git a/.gitignore b/.gitignore index 8b7f4242..3026eac5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ **/__pycache__ **/test_results**.xml build/ -helm/prometheus-operator-app/charts/*.tgz +helm/kube-prometheus-stack/charts/*.tgz diff --git a/CHANGELOG.md b/CHANGELOG.md index 36b30bac..59dc87cd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,8 @@ and this project's packages adheres to [Semantic Versioning](http://semver.org/s ### Changed -- Upgraded chart dependency to [kube-prometheus-stack-51.4.1](https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-51.4.1) +- Rename app to `kube-prometheus-stack`` +- Upgraded chart dependency to [kube-prometheus-stack-51.5.1](https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-51.5.1) ## [6.2.0] - 2023-10-09 @@ -201,7 +202,7 @@ and this project's packages adheres to [Semantic Versioning](http://semver.org/s ### Changed -- Update chart to [kube-prometheus-stack-44.2.0](https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-44.2.0). See [breaking changes](https://github.com/giantswarm/prometheus-operator-app/blob/main/README.md#from-2x-to-3x) +- Update chart to [kube-prometheus-stack-44.2.0](https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-44.2.0). See [breaking changes](https://github.com/giantswarm/kube-prometheus-stack-app/blob/main/README.md#from-2x-to-3x) - Update `alertmanager` from 0.23.0 to 0.25.0 - Update `grafana` from 6.22.* to 6.48.* - Update `kube-state-metrics` from 4.5.* to 4.24.* @@ -249,7 +250,7 @@ and this project's packages adheres to [Semantic Versioning](http://semver.org/s ### Changed -- Update `upstream chart` to [kube-prometheus-stack-32.4.0](https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-32.4.0). See [breaking changes](https://github.com/giantswarm/prometheus-operator-app/blob/main/README.md#from-13x-to-2x) +- Update `upstream chart` to [kube-prometheus-stack-32.4.0](https://github.com/prometheus-community/helm-charts/releases/tag/kube-prometheus-stack-32.4.0). See [breaking changes](https://github.com/giantswarm/kube-prometheus-stack-app/blob/main/README.md#from-13x-to-2x) - Upgrade `prometheus-operator` from [0.52.1](https://github.com/prometheus-operator/prometheus-operator/releases/tag/v0.52.1) to [0.54.0](https://github.com/prometheus-operator/prometheus-operator/releases/tag/v0.54.0) - Update `prometheus` from 2.31.1 to 2.33.1 @@ -511,17 +512,20 @@ and this project's packages adheres to [Semantic Versioning](http://semver.org/s ## [0.3.2] ### Changed + - Fix CRD installation to support both helm2 and helm3 - Add support for installations in China ## [0.3.1] ### Changed + - Fix application name in the circleci config ## [0.3.0] ### Changed + - Fix kubelet service name in the Prometheus Operator deployment - Update Prometheus Operator to 0.38.1 - Update Prometheus to 2.17.2 @@ -534,6 +538,7 @@ and this project's packages adheres to [Semantic Versioning](http://semver.org/s ## [0.2.0] ### Changed + - Add Kubernetes 1.16 support - Update Prometheus Operator to 0.35.0 - Update Prometheus to 2.15.2 @@ -554,71 +559,71 @@ and this project's packages adheres to [Semantic Versioning](http://semver.org/s - First version of the prometheus operator chart. -[Unreleased]: https://github.com/giantswarm/prometheus-operator-app/compare/v6.2.1...HEAD -[6.2.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v6.2.0...v6.2.1 -[6.2.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v6.1.0...v6.2.0 -[6.1.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v6.0.0...v6.1.0 -[6.0.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.2.0...v6.0.0 -[5.2.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.1.0...v5.2.0 -[5.1.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.7...v5.1.0 -[5.0.7]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.6...v5.0.7 -[5.0.6]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.5...v5.0.6 -[5.0.5]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.4...v5.0.5 -[5.0.4]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.3...v5.0.4 -[5.0.3]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.2...v5.0.3 -[5.0.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.1...v5.0.2 -[5.0.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v5.0.0...v5.0.1 -[5.0.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.4.0...v5.0.0 -[4.4.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.3.0...v4.4.0 -[4.3.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.2.4...v4.3.0 -[4.2.4]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.2.3...v4.2.4 -[4.2.3]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.2.2...v4.2.3 -[4.2.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.2.1...v4.2.2 -[4.2.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.2.0...v4.2.1 -[4.2.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.1.0...v4.2.0 -[4.1.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.0.1...v4.1.0 -[4.0.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v4.0.0...v4.0.1 -[4.0.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v3.0.0...v4.0.0 -[3.0.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v2.1.2...v3.0.0 -[2.1.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v2.1.1...v2.1.2 -[2.1.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v2.1.0...v2.1.1 -[2.1.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v2.0.2...v2.1.0 -[2.0.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v2.0.1...v2.0.2 -[2.0.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v2.0.0...v2.0.1 -[2.0.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.3.1...v2.0.0 -[1.3.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.3.0...v1.3.1 -[1.3.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.2.1...v1.3.0 -[1.2.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.2.0...v1.2.1 -[1.2.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.1.2...v1.2.0 -[1.1.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.1.1...v1.1.2 -[1.1.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.1.0...v1.1.1 -[1.1.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.0.2...v1.1.0 -[1.0.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.0.1...v1.0.2 -[1.0.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v1.0.0...v1.0.1 -[1.0.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.12.1...v1.0.0 -[0.12.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.12.0...v0.12.1 -[0.12.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.11.0...v0.12.0 -[0.11.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.10.2...v0.11.0 -[0.10.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.10.1...v0.10.2 -[0.10.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.10.0...v0.10.1 -[0.10.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.9.0...v0.10.0 -[0.9.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.8.2...v0.9.0 -[0.8.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.8.1...v0.8.2 -[0.8.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.8.0...v0.8.1 -[0.8.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.7.0...v0.8.0 -[0.7.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.7.1...v0.7.2 -[0.7.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.7.0...v0.7.1 -[0.7.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.6.0...v0.7.0 -[0.6.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.5.2...v0.6.0 -[0.5.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.5.1...v0.5.2 -[0.5.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.5.0...v0.5.1 -[0.5.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.4.0...v0.5.0 -[0.4.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.3.4...v0.4.0 -[0.3.4]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.3.3...v0.3.4 -[0.3.3]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.3.2..v0.3.3 -[0.3.2]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.3.1..v0.3.2 -[0.3.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.3.0..v0.3.1 -[0.3.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.2.0..v0.3.0 -[0.2.0]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.1.1..v0.2.0 -[0.1.1]: https://github.com/giantswarm/prometheus-operator-app/compare/v0.1.0..v0.1.1 -[0.1.0]: https://github.com/giantswarm/prometheus-operator-app/releases/tag/v0.1.0 +[Unreleased]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v6.2.1...HEAD +[6.2.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v6.2.0...v6.2.1 +[6.2.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v6.1.0...v6.2.0 +[6.1.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v6.0.0...v6.1.0 +[6.0.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.2.0...v6.0.0 +[5.2.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.1.0...v5.2.0 +[5.1.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.7...v5.1.0 +[5.0.7]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.6...v5.0.7 +[5.0.6]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.5...v5.0.6 +[5.0.5]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.4...v5.0.5 +[5.0.4]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.3...v5.0.4 +[5.0.3]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.2...v5.0.3 +[5.0.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.1...v5.0.2 +[5.0.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v5.0.0...v5.0.1 +[5.0.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.4.0...v5.0.0 +[4.4.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.3.0...v4.4.0 +[4.3.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.2.4...v4.3.0 +[4.2.4]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.2.3...v4.2.4 +[4.2.3]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.2.2...v4.2.3 +[4.2.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.2.1...v4.2.2 +[4.2.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.2.0...v4.2.1 +[4.2.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.1.0...v4.2.0 +[4.1.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.0.1...v4.1.0 +[4.0.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v4.0.0...v4.0.1 +[4.0.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v3.0.0...v4.0.0 +[3.0.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v2.1.2...v3.0.0 +[2.1.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v2.1.1...v2.1.2 +[2.1.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v2.1.0...v2.1.1 +[2.1.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v2.0.2...v2.1.0 +[2.0.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v2.0.1...v2.0.2 +[2.0.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v2.0.0...v2.0.1 +[2.0.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.3.1...v2.0.0 +[1.3.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.3.0...v1.3.1 +[1.3.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.2.1...v1.3.0 +[1.2.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.2.0...v1.2.1 +[1.2.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.1.2...v1.2.0 +[1.1.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.1.1...v1.1.2 +[1.1.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.1.0...v1.1.1 +[1.1.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.0.2...v1.1.0 +[1.0.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.0.1...v1.0.2 +[1.0.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v1.0.0...v1.0.1 +[1.0.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.12.1...v1.0.0 +[0.12.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.12.0...v0.12.1 +[0.12.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.11.0...v0.12.0 +[0.11.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.10.2...v0.11.0 +[0.10.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.10.1...v0.10.2 +[0.10.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.10.0...v0.10.1 +[0.10.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.9.0...v0.10.0 +[0.9.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.8.2...v0.9.0 +[0.8.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.8.1...v0.8.2 +[0.8.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.8.0...v0.8.1 +[0.8.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.7.0...v0.8.0 +[0.7.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.7.1...v0.7.2 +[0.7.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.7.0...v0.7.1 +[0.7.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.6.0...v0.7.0 +[0.6.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.5.2...v0.6.0 +[0.5.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.5.1...v0.5.2 +[0.5.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.5.0...v0.5.1 +[0.5.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.4.0...v0.5.0 +[0.4.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.3.4...v0.4.0 +[0.3.4]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.3.3...v0.3.4 +[0.3.3]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.3.2..v0.3.3 +[0.3.2]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.3.1..v0.3.2 +[0.3.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.3.0..v0.3.1 +[0.3.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.2.0..v0.3.0 +[0.2.0]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.1.1..v0.2.0 +[0.1.1]: https://github.com/giantswarm/kube-prometheus-stack-app/compare/v0.1.0..v0.1.1 +[0.1.0]: https://github.com/giantswarm/kube-prometheus-stack-app/releases/tag/v0.1.0 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7a050903..d3ee96cb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,9 +7,9 @@ ## Upgrading -* change the `kube-prometheus-stack` upstream version in Chart dependencies (`helm/prometheus-operator-app/Chart.yaml`) -* run `helm dependency update helm/prometheus-operator-app` to update the Chart.lock file -* re-generate `helm/prometheus-operator-app/values.schema.json`: - * `helm schema-gen helm/prometheus-operator-app/values.yaml > helm/prometheus-operator-app/values.schema.json` to re-generate the file. - * `sed -i 's/"type": "null"/"type": ["string", "null"]/g' helm/prometheus-operator-app/values.schema.json` to accept strings for all null values. +* change the `kube-prometheus-stack` upstream version in Chart dependencies (`helm/kube-prometheus-stack/Chart.yaml`) +* run `helm dependency update helm/kube-prometheus-stack` to update the Chart.lock file +* re-generate `helm/kube-prometheus-stack/values.schema.json`: + * `helm schema-gen helm/kube-prometheus-stack/values.yaml > helm/kube-prometheus-stack/values.schema.json` to re-generate the file. + * `sed -i 's/"type": "null"/"type": ["string", "null"]/g' helm/kube-prometheus-stack/values.schema.json` to accept strings for all null values. * update the link in the [`Configuration`](./README.md#configuration) section of the Readme to point to the new tag configuration. diff --git a/README.md b/README.md index a2cf0961..28913b52 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -[![CircleCI](https://dl.circleci.com/status-badge/img/gh/giantswarm/prometheus-operator-app/tree/main.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/giantswarm/prometheus-operator-app/tree/main) +[![CircleCI](https://dl.circleci.com/status-badge/img/gh/giantswarm/kube-prometheus-stack-app/tree/main.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/giantswarm/kube-prometheus-stack-app/tree/main) -# Prometheus Operator App +# Kube Prometheus StackApp Giant Swarm offers Prometheus Operator as a [managed app](https://docs.giantswarm.io/changes/managed-apps/) which can be installed in any clusters. @@ -16,7 +16,7 @@ Giant Swarm offers Prometheus Operator as a [managed app](https://docs.giantswar ## Requirements In order to run this app and to be able to ensure smooth upgrades, we decided to split the CRDs from the application helm chart. -In this regard, you need to install the `prometheus-operator-crd` app compatible with the `prometheus-operator-app` version (same major version). +In this regard, you need to install the `prometheus-operator-crd` app compatible with the `kube-prometheus-stack` app version (same major version). ## Install @@ -32,6 +32,40 @@ There are several ways to install this app onto a workload cluster. A major chart version change (like v0.5.0 -> v1.0.0) indicates that there is an incompatible breaking change needing manual actions. +### From 6.x to 7.x + +This version renames `prometheus-operator-app` to `kube-prometheus-stack`. + +**⚠️ Please make sure to move all values nested under `prometheus-operator-app` to the new nested value `kube-prometheus-stack` ⚠️** + +Example: + +```yaml +# old values.yaml structure +prometheus-operator-app: + defaultRules: + rules: + kubeProxy: true + prometheusOperator: + image: + tag: v0.54.0 +``` + +```yaml +# new values.yaml structure +kube-prometheus-stack: + defaultRules: + rules: + kubeProxy: true + prometheusOperator: + image: + tag: v0.54.0 +``` + +### From 5.x to 6.x + +This version upgrades the kube-prometheus-stack chart from 46.x to 51.x and brings a small subset of changes (mainly upgrading prometheus-operator from 0.65 to 0.68 and a bunch of fixes). + ### From 4.x to 5.x This version upgrades the kube-prometheus-stack chart from 45.x to 46.x and brings a small subset of changes (mainly upgrading prometheus-operator from 0.63 to 0.65 and a bunch of fixes). @@ -370,12 +404,12 @@ In order to upgrade to 2.0.0, you should check the changes in values below and a ## Configuration -By default, Prometheus Operator App is configured to scrape all targets equipped with a Service Monitor in the cluster it's deployed to. +By default, Kube Prometheus Stack is configured to scrape all targets equipped with a Service Monitor in the cluster it's deployed to. `node-exporter` and `kube-state-metrics` are disabled by default because Giant Swarm provides them in their clusters but those components can be installed with: ```yaml -prometheus-operator-app: +kube-prometheus-stack: kubeStateMetrics: enabled: true nodeExporter: @@ -397,18 +431,18 @@ apiVersion: application.giantswarm.io/v1alpha1 kind: App metadata: labels: - name: prometheus-operator-app + name: kube-prometheus-stack # workload cluster resources live in a namespace with the same ID as the # workload cluster. namespace: abc12 spec: - name: prometheus-operator-app - namespace: prometheus-operator-app + name: kube-prometheus-stack + namespace: kube-prometheus-stack catalog: giantswarm version: 2.2.0 userConfig: configMap: - name: prometheus-operator-app-user-values + name: kube-prometheus-stack-user-values namespace: abc12 ``` @@ -417,11 +451,11 @@ spec: apiVersion: v1 kind: ConfigMap metadata: - name: prometheus-operator-app-user-values + name: kube-prometheus-stack-user-values namespace: abc12 data: values: | - prometheus-operator-app: + kube-prometheus-stack: kubeStateMetrics: enabled: true nodeExporter: @@ -436,7 +470,7 @@ The default configuration of this chart ignores secrets of type `helm.sh/release This can be changed by changing the value of `prometheusOperator.secretFieldSelector` in your values.yaml. Example: ```yaml -prometheus-operator-app: +kube-prometheus-stack: prometheusOperator: secretFieldSelector: "" ``` diff --git a/helm/prometheus-operator-app/Chart.lock b/helm/kube-prometheus-stack/Chart.lock similarity index 100% rename from helm/prometheus-operator-app/Chart.lock rename to helm/kube-prometheus-stack/Chart.lock diff --git a/helm/prometheus-operator-app/Chart.yaml b/helm/kube-prometheus-stack/Chart.yaml similarity index 95% rename from helm/prometheus-operator-app/Chart.yaml rename to helm/kube-prometheus-stack/Chart.yaml index e82670c2..f26450d3 100644 --- a/helm/prometheus-operator-app/Chart.yaml +++ b/helm/kube-prometheus-stack/Chart.yaml @@ -15,6 +15,5 @@ dependencies: - name: kube-prometheus-stack version: 51.5.1 repository: https://prometheus-community.github.io/helm-charts - alias: prometheus-operator-app sources: - "https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack" diff --git a/helm/kube-prometheus-stack/README.md b/helm/kube-prometheus-stack/README.md new file mode 100644 index 00000000..3633ae68 --- /dev/null +++ b/helm/kube-prometheus-stack/README.md @@ -0,0 +1,269 @@ +# kube-prometheus-stack + +![Version: 6.2.1](https://img.shields.io/badge/Version-6.2.1-informational?style=flat-square) ![AppVersion: v0.68.0](https://img.shields.io/badge/AppVersion-v0.68.0-informational?style=flat-square) + +Giant Swarm's Prometheus Operator Deployment + +**Homepage:** + +## Maintainers + +| Name | Email | Url | +| ---- | ------ | --- | +| giantswarm/team-atlas | | | + +## Source Code + +* + +## Requirements + +Kubernetes: `>=1.19.0-0` + +| Repository | Name | Version | +|------------|------|---------| +| https://prometheus-community.github.io/helm-charts | kube-prometheus-stack | 51.5.1 | + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| global.imageRegistry | string | `"docker.io"` | | +| global.rbac.create | bool | `true` | | +| global.rbac.pspAnnotations."seccomp.security.alpha.kubernetes.io/allowedProfileNames" | string | `"*"` | | +| global.rbac.pspEnabled | bool | `true` | | +| kube-prometheus-stack.alertmanager.alertmanagerSpec.image.repository | string | `"giantswarm/alertmanager"` | | +| kube-prometheus-stack.alertmanager.ingress.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.alertmanager.ingress.pathType | string | `"ImplementationSpecific"` | | +| kube-prometheus-stack.alertmanager.ingressPerReplica.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.alertmanager.ingressPerReplica.pathType | string | `"ImplementationSpecific"` | | +| kube-prometheus-stack.coreDns.enabled | bool | `true` | | +| kube-prometheus-stack.coreDns.service.selector.k8s-app | string | `"coredns"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.metricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.metricRelabelings[0].regex | string | `"coredns_dns_(request_size_bytes_bucket|response_size_bytes_bucket)"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.metricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.relabelings[0].replacement | string | `"coredns"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.relabelings[1].sourceLabels[0] | string | `"__meta_kubernetes_pod_node_name"` | | +| kube-prometheus-stack.coreDns.serviceMonitor.relabelings[1].targetLabel | string | `"node"` | | +| kube-prometheus-stack.grafana.ingress.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.grafana.rbac.pspEnabled | bool | `true` | | +| kube-prometheus-stack.grafana.rbac.pspUseAppArmor | bool | `false` | | +| kube-prometheus-stack.kube-state-metrics.collectors[0] | string | `"certificatesigningrequests"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[10] | string | `"limitranges"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[11] | string | `"mutatingwebhookconfigurations"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[12] | string | `"namespaces"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[13] | string | `"networkpolicies"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[14] | string | `"nodes"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[15] | string | `"persistentvolumeclaims"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[16] | string | `"persistentvolumes"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[17] | string | `"poddisruptionbudgets"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[18] | string | `"pods"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[19] | string | `"replicasets"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[1] | string | `"configmaps"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[20] | string | `"replicationcontrollers"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[21] | string | `"resourcequotas"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[22] | string | `"secrets"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[23] | string | `"services"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[24] | string | `"statefulsets"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[25] | string | `"storageclasses"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[26] | string | `"validatingwebhookconfigurations"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[27] | string | `"volumeattachments"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[2] | string | `"cronjobs"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[3] | string | `"daemonsets"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[4] | string | `"deployments"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[5] | string | `"endpoints"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[6] | string | `"horizontalpodautoscalers"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[7] | string | `"ingresses"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[8] | string | `"jobs"` | | +| kube-prometheus-stack.kube-state-metrics.collectors[9] | string | `"leases"` | | +| kube-prometheus-stack.kube-state-metrics.image.repository | string | `"giantswarm/kube-state-metrics"` | | +| kube-prometheus-stack.kube-state-metrics.metricLabelsAllowlist[0] | string | `"daemonsets=[application.giantswarm.io/team, app.kubernetes.io/name, app.kubernetes.io/component, app.kubernetes.io/instance, giantswarm.io/monitoring_basic_sli, giantswarm.io/service-type]"` | | +| kube-prometheus-stack.kube-state-metrics.metricLabelsAllowlist[1] | string | `"deployments=[application.giantswarm.io/team, app.kubernetes.io/name, app.kubernetes.io/component, app.kubernetes.io/instance, giantswarm.io/monitoring_basic_sli, giantswarm.io/service-type]"` | | +| kube-prometheus-stack.kube-state-metrics.metricLabelsAllowlist[2] | string | `"nodes=[giantswarm.io/machine-pool, giantswarm.io/machine-deployment, ip, topology.kubernetes.io/region, topology.kubernetes.io/zone]"` | | +| kube-prometheus-stack.kube-state-metrics.metricLabelsAllowlist[3] | string | `"pods=[application.giantswarm.io/team, app.kubernetes.io/name, app.kubernetes.io/component, app.kubernetes.io/instance, giantswarm.io/monitoring_basic_sli, giantswarm.io/service-type]"` | | +| kube-prometheus-stack.kube-state-metrics.metricLabelsAllowlist[4] | string | `"statefulsets=[application.giantswarm.io/team, app.kubernetes.io/name, app.kubernetes.io/component, app.kubernetes.io/instance, giantswarm.io/monitoring_basic_sli, giantswarm.io/service-type]"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.egress[0].to[0].ipBlock.cidr | string | `"10.0.0.0/8"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.egress[0].to[1].ipBlock.cidr | string | `"172.16.0.0/12"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.egress[0].to[2].ipBlock.cidr | string | `"192.168.0.0/16"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.egress[0].to[3].ipBlock.cidr | string | `"100.64.0.0/10"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.enabled | bool | `true` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.flavor | string | `"kubernetes"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.ingress[0].ports[0].port | int | `8080` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.ingress[0].ports[0].protocol | string | `"TCP"` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.ingress[0].ports[1].port | int | `8081` | | +| kube-prometheus-stack.kube-state-metrics.networkPolicy.ingress[0].ports[1].protocol | string | `"TCP"` | | +| kube-prometheus-stack.kube-state-metrics.podAnnotations."cluster-autoscaler.kubernetes.io/safe-to-evict" | string | `"true"` | | +| kube-prometheus-stack.kube-state-metrics.podSecurityPolicy.enabled | bool | `true` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.enabled | bool | `true` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[0].regex | string | `"kube_(.+_annotations|secret_type|pod_status_qos_class|pod_tolerations|pod_status_scheduled|replicaset_metadata_generation|replicaset_status_observed_generation|replicaset_annotations|replicaset_status_fully_labeled_replicas|.+_metadata_resource_version)"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[1].action | string | `"labeldrop"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[1].regex | string | `"image_id"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[2].action | string | `"replace"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[2].replacement | string | `"${1}"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[2].sourceLabels[0] | string | `"label_topology_kubernetes_io_region"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[2].targetLabel | string | `"region"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[3].action | string | `"replace"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[3].replacement | string | `"${1}"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[3].sourceLabels[0] | string | `"label_topology_kubernetes_io_zone"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[3].targetLabel | string | `"zone"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[4].action | string | `"labeldrop"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[4].regex | string | `"label_topology_kubernetes_io_region|label_topology_kubernetes_io_zone"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[5].action | string | `"replace"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[5].replacement | string | `"${1}"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[5].sourceLabels[0] | string | `"label_giantswarm_io_machine_deployment"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[5].targetLabel | string | `"nodepool"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[6].action | string | `"replace"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[6].replacement | string | `"${1}"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[6].sourceLabels[0] | string | `"label_giantswarm_io_machine_pool"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.metricRelabelings[6].targetLabel | string | `"nodepool"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.relabelings[0].replacement | string | `"kube-state-metrics"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.relabelings[1].sourceLabels[0] | string | `"__meta_kubernetes_pod_node_name"` | | +| kube-prometheus-stack.kube-state-metrics.prometheus.monitor.relabelings[1].targetLabel | string | `"node"` | | +| kube-prometheus-stack.kube-state-metrics.prometheusScrape | bool | `false` | | +| kube-prometheus-stack.kube-state-metrics.rbac.extraRules[0].apiGroups[0] | string | `"autoscaling.k8s.io"` | | +| kube-prometheus-stack.kube-state-metrics.rbac.extraRules[0].resources[0] | string | `"verticalpodautoscalers"` | | +| kube-prometheus-stack.kube-state-metrics.rbac.extraRules[0].verbs[0] | string | `"list"` | | +| kube-prometheus-stack.kube-state-metrics.rbac.extraRules[0].verbs[1] | string | `"watch"` | | +| kube-prometheus-stack.kube-state-metrics.resources.limits.cpu | string | `"2000m"` | | +| kube-prometheus-stack.kube-state-metrics.resources.limits.memory | string | `"200Mi"` | | +| kube-prometheus-stack.kube-state-metrics.resources.requests.cpu | string | `"200m"` | | +| kube-prometheus-stack.kube-state-metrics.resources.requests.memory | string | `"200Mi"` | | +| kube-prometheus-stack.kube-state-metrics.selfMonitor.enabled | bool | `true` | | +| kube-prometheus-stack.kube-state-metrics.verticalPodAutoscaler.enabled | bool | `true` | | +| kube-prometheus-stack.kubeApiServer.enabled | bool | `true` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[0].regex | string | `"apiserver_request_duration_seconds_bucket;(0.15|0.2|0.3|0.35|0.4|0.45|0.6|0.7|0.8|0.9|1.25|1.5|1.75|2|3|3.5|4|4.5|6|7|8|9|15|25|40|50)"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[0].sourceLabels[1] | string | `"le"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[1].action | string | `"drop"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[1].regex | string | `"rest_client_(rate_limiter_duration_seconds_bucket|request_size_bytes_bucket|response_size_bytes_bucket)"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[1].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[2].action | string | `"drop"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[2].regex | string | `"apiserver_(longrunning_requests|watch_events_sizes_count|watch_events_sizes_sum|storage_list_fetched_objects_total|storage_list_total|storage_list_returned_objects_total)"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[2].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[3].action | string | `"drop"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[3].regex | string | `"apiserver_request_(slo_(duration_seconds_bucket|duration_seconds_sum)|duration_seconds_sum)"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[3].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[4].action | string | `"drop"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[4].regex | string | `"apiextensions_openapi_v2_regeneration_count|apiextensions_openapi_v3_regeneration_count"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.metricRelabelings[4].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.relabelings[0].replacement | string | `"kubernetes"` | | +| kube-prometheus-stack.kubeApiServer.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kubeControllerManager.enabled | bool | `true` | | +| kube-prometheus-stack.kubeControllerManager.service.port | int | `10257` | | +| kube-prometheus-stack.kubeControllerManager.service.selector.component | string | `"kube-controller-manager"` | | +| kube-prometheus-stack.kubeControllerManager.service.targetPort | int | `10257` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.https | bool | `true` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.insecureSkipVerify | bool | `true` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.metricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.metricRelabelings[0].regex | string | `"rest_client_(rate_limiter_duration_seconds_bucket|request_size_bytes_bucket|response_size_bytes_bucket)"` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.metricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.relabelings[0].replacement | string | `"kube-controller-manager"` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.relabelings[1].sourceLabels[0] | string | `"__meta_kubernetes_pod_node_name"` | | +| kube-prometheus-stack.kubeControllerManager.serviceMonitor.relabelings[1].targetLabel | string | `"node"` | | +| kube-prometheus-stack.kubeEtcd.enabled | bool | `true` | | +| kube-prometheus-stack.kubeEtcd.serviceMonitor.relabelings[0].replacement | string | `"etcd"` | | +| kube-prometheus-stack.kubeEtcd.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kubeEtcd.serviceMonitor.relabelings[1].sourceLabels[0] | string | `"__meta_kubernetes_pod_node_name"` | | +| kube-prometheus-stack.kubeEtcd.serviceMonitor.relabelings[1].targetLabel | string | `"node"` | | +| kube-prometheus-stack.kubeProxy.enabled | bool | `true` | | +| kube-prometheus-stack.kubeProxy.serviceMonitor.relabelings[0].replacement | string | `"kube-proxy"` | | +| kube-prometheus-stack.kubeProxy.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kubeScheduler.enabled | bool | `true` | | +| kube-prometheus-stack.kubeScheduler.service.port | int | `10259` | | +| kube-prometheus-stack.kubeScheduler.service.selector.component | string | `"kube-scheduler"` | | +| kube-prometheus-stack.kubeScheduler.service.targetPort | int | `10259` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.https | bool | `true` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.insecureSkipVerify | bool | `true` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.metricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.metricRelabelings[0].regex | string | `"rest_client_(rate_limiter_duration_seconds_bucket|request_size_bytes_bucket|response_size_bytes_bucket)"` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.metricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.relabelings[0].replacement | string | `"kube-scheduler"` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.relabelings[1].sourceLabels[0] | string | `"__meta_kubernetes_pod_node_name"` | | +| kube-prometheus-stack.kubeScheduler.serviceMonitor.relabelings[1].targetLabel | string | `"node"` | | +| kube-prometheus-stack.kubeStateMetrics.enabled | bool | `true` | | +| kube-prometheus-stack.kubelet.enabled | bool | `true` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[0].regex | string | `"container_cpu_(cfs_throttled_seconds_total|load_average_10s|system_seconds_total|user_seconds_total)"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[1].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[1].regex | string | `"container_fs_(io_current|io_time_seconds_total|io_time_weighted_seconds_total|reads_merged_total|sector_reads_total|sector_writes_total|writes_merged_total)"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[1].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[2].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[2].regex | string | `"container_memory_(mapped_file|swap)"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[2].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[3].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[3].regex | string | `"container_(file_descriptors|tasks_state|threads_max)"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[3].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[4].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[4].regex | string | `"container_spec.*"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[4].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[5].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[5].regex | string | `".+;"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[5].sourceLabels[0] | string | `"id"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[5].sourceLabels[1] | string | `"pod"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[6].action | string | `"labeldrop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[6].regex | string | `"id|name"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[7].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[7].regex | string | `"container_(blkio_device_usage_total|network_transmit_errors_total|network_receive_errors_total|memory_failures_total|memory_max_usage_bytes|memory_failcnt)"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorMetricRelabelings[7].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorRelabelings[0].action | string | `"replace"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorRelabelings[0].sourceLabels[0] | string | `"__metrics_path__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorRelabelings[0].targetLabel | string | `"metrics_path"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorRelabelings[1].replacement | string | `"cadvisor"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.cAdvisorRelabelings[1].targetLabel | string | `"app"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.metricRelabelings[0].action | string | `"drop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.metricRelabelings[0].regex | string | `"rest_client_(rate_limiter_duration_seconds_bucket|request_size_bytes_bucket|response_size_bytes_bucket)"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.metricRelabelings[0].sourceLabels[0] | string | `"__name__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.metricRelabelings[1].action | string | `"labeldrop"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.metricRelabelings[1].regex | string | `"uid"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.relabelings[0].action | string | `"replace"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.relabelings[0].sourceLabels[0] | string | `"__metrics_path__"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.relabelings[0].targetLabel | string | `"metrics_path"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.relabelings[1].replacement | string | `"kubelet"` | | +| kube-prometheus-stack.kubelet.serviceMonitor.relabelings[1].targetLabel | string | `"app"` | | +| kube-prometheus-stack.nodeExporter.enabled | bool | `false` | | +| kube-prometheus-stack.prometheus-node-exporter.image.repository | string | `"giantswarm/node-exporter"` | | +| kube-prometheus-stack.prometheus-node-exporter.rbac.pspEnabled | bool | `true` | | +| kube-prometheus-stack.prometheus.ingress.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.prometheus.ingress.pathType | string | `"ImplementationSpecific"` | | +| kube-prometheus-stack.prometheus.ingressPerReplica.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.prometheus.ingressPerReplica.pathType | string | `"ImplementationSpecific"` | | +| kube-prometheus-stack.prometheus.prometheusSpec.image.repository | string | `"giantswarm/prometheus"` | | +| kube-prometheus-stack.prometheus.thanosIngress.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.prometheus.thanosIngress.pathType | string | `"ImplementationSpecific"` | | +| kube-prometheus-stack.prometheusOperator.admissionWebhooks.patch.image.repository | string | `"giantswarm/ingress-nginx-kube-webhook-certgen"` | | +| kube-prometheus-stack.prometheusOperator.alertmanagerDefaultBaseImage | string | `"giantswarm/alertmanager"` | | +| kube-prometheus-stack.prometheusOperator.enabled | bool | `true` | | +| kube-prometheus-stack.prometheusOperator.image.repository | string | `"giantswarm/prometheus-operator"` | | +| kube-prometheus-stack.prometheusOperator.labels."giantswarm.io/monitoring_basic_sli" | string | `"true"` | | +| kube-prometheus-stack.prometheusOperator.networkPolicy.enabled | bool | `true` | | +| kube-prometheus-stack.prometheusOperator.podAnnotations."cluster-autoscaler.kubernetes.io/safe-to-evict" | string | `"true"` | | +| kube-prometheus-stack.prometheusOperator.prometheusConfigReloader.image.repository | string | `"giantswarm/prometheus-config-reloader"` | | +| kube-prometheus-stack.prometheusOperator.prometheusDefaultBaseImage | string | `"giantswarm/prometheus"` | | +| kube-prometheus-stack.prometheusOperator.secretFieldSelector | string | `"type!=helm.sh/release.v1"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[0].sourceLabels[0] | string | `"__meta_kubernetes_pod_label_app_kubernetes_io_name"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[0].targetLabel | string | `"app"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[1].sourceLabels[0] | string | `"__meta_kubernetes_pod_label_app_kubernetes_io_instance"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[1].targetLabel | string | `"instance"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[2].sourceLabels[0] | string | `"__meta_kubernetes_pod_node_name"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[2].targetLabel | string | `"node"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[3].sourceLabels[0] | string | `"__meta_kubernetes_pod_label_application_giantswarm_io_team"` | | +| kube-prometheus-stack.prometheusOperator.serviceMonitor.relabelings[3].targetLabel | string | `"team"` | | +| kube-prometheus-stack.prometheusOperator.thanosImage.repository | string | `"giantswarm/thanos"` | | +| kube-prometheus-stack.prometheusOperator.verticalPodAutoscaler.enabled | bool | `true` | | +| kube-prometheus-stack.thanosRuler.enabled | bool | `false` | | +| kube-prometheus-stack.thanosRuler.ingress.ingressClassName | string | `"nginx"` | | +| kube-prometheus-stack.thanosRuler.ingress.pathType | string | `"ImplementationSpecific"` | | +| kube-prometheus-stack.thanosRuler.thanosRulerSpec.image.repository | string | `"giantswarm/thanos"` | | +| kyvernoPolicyExceptions.enabled | bool | `true` | | +| kyvernoPolicyExceptions.namespace | string | `"giantswarm"` | | + +---------------------------------------------- +Autogenerated from chart metadata using [helm-docs v1.10.0](https://github.com/norwoodj/helm-docs/releases/v1.10.0) diff --git a/helm/prometheus-operator-app/templates/_helpers.tpl b/helm/kube-prometheus-stack/templates/_helpers.tpl similarity index 100% rename from helm/prometheus-operator-app/templates/_helpers.tpl rename to helm/kube-prometheus-stack/templates/_helpers.tpl diff --git a/helm/prometheus-operator-app/templates/prometheus-node-exporter/kyverno-policy-exception.yaml b/helm/kube-prometheus-stack/templates/prometheus-node-exporter/kyverno-policy-exception.yaml similarity index 96% rename from helm/prometheus-operator-app/templates/prometheus-node-exporter/kyverno-policy-exception.yaml rename to helm/kube-prometheus-stack/templates/prometheus-node-exporter/kyverno-policy-exception.yaml index f549dcab..068c9fff 100644 --- a/helm/prometheus-operator-app/templates/prometheus-node-exporter/kyverno-policy-exception.yaml +++ b/helm/kube-prometheus-stack/templates/prometheus-node-exporter/kyverno-policy-exception.yaml @@ -1,4 +1,4 @@ -{{- if and .Values.kyvernoPolicyExceptions.enabled (index .Values "prometheus-operator-app" "nodeExporter" "enabled") }} +{{- if and .Values.kyvernoPolicyExceptions.enabled (index .Values "kube-prometheus-stack" "nodeExporter" "enabled") }} {{- if .Capabilities.APIVersions.Has "kyverno.io/v2alpha1/PolicyException" -}} apiVersion: kyverno.io/v2alpha1 kind: PolicyException diff --git a/helm/prometheus-operator-app/values.schema.json b/helm/kube-prometheus-stack/values.schema.json similarity index 99% rename from helm/prometheus-operator-app/values.schema.json rename to helm/kube-prometheus-stack/values.schema.json index f32511b8..5c6d2882 100644 --- a/helm/prometheus-operator-app/values.schema.json +++ b/helm/kube-prometheus-stack/values.schema.json @@ -29,18 +29,7 @@ } } }, - "kyvernoPolicyExceptions": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "namespace": { - "type": "string" - } - } - }, - "prometheus-operator-app": { + "kube-prometheus-stack": { "type": "object", "properties": { "alertmanager": { @@ -966,6 +955,17 @@ } } } + }, + "kyvernoPolicyExceptions": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "namespace": { + "type": "string" + } + } } } } diff --git a/helm/prometheus-operator-app/values.yaml b/helm/kube-prometheus-stack/values.yaml similarity index 99% rename from helm/prometheus-operator-app/values.yaml rename to helm/kube-prometheus-stack/values.yaml index 94c56ef7..c54e804f 100644 --- a/helm/prometheus-operator-app/values.yaml +++ b/helm/kube-prometheus-stack/values.yaml @@ -10,7 +10,7 @@ kyvernoPolicyExceptions: enabled: true namespace: giantswarm -prometheus-operator-app: +kube-prometheus-stack: alertmanager: alertmanagerSpec: image: diff --git a/helm/prometheus-operator-app/README.md b/helm/prometheus-operator-app/README.md deleted file mode 100644 index e0312f60..00000000 --- a/helm/prometheus-operator-app/README.md +++ /dev/null @@ -1,65 +0,0 @@ -# prometheus-operator-app - -![Version: 3.0.0](https://img.shields.io/badge/Version-3.0.0-informational?style=flat-square) ![AppVersion: v0.62.0](https://img.shields.io/badge/AppVersion-v0.62.0-informational?style=flat-square) - -Giant Swarm's Prometheus Operator Deployment - -**Homepage:** - -## Maintainers - -| Name | Email | Url | -| ---- | ------ | --- | -| giantswarm/team-atlas | | | - -## Source Code - -* - -## Requirements - -| Repository | Name | Version | -|------------|------|---------| -| https://prometheus-community.github.io/helm-charts | prometheus-operator-app(kube-prometheus-stack) | 44.2.0 | - -## Values - -| Key | Type | Default | Description | -|-----|------|---------|-------------| -| prometheus-operator-app.alertmanager.alertmanagerSpec.image.repository | string | `"giantswarm/alertmanager"` | | -| prometheus-operator-app.alertmanager.ingress.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.alertmanager.ingress.pathType | string | `"ImplementationSpecific"` | | -| prometheus-operator-app.alertmanager.ingressPerReplica.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.alertmanager.ingressPerReplica.pathType | string | `"ImplementationSpecific"` | | -| prometheus-operator-app.coreDns.service.selector.k8s-app | string | `"coredns"` | | -| prometheus-operator-app.global.imageRegistry | string | `"docker.io"` | | -| prometheus-operator-app.global.rbac.create | bool | `true` | | -| prometheus-operator-app.global.rbac.pspEnabled | bool | `true` | | -| prometheus-operator-app.grafana.ingress.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.grafana.rbac.pspEnabled | bool | `true` | | -| prometheus-operator-app.grafana.rbac.pspUseAppArmor | bool | `false` | | -| prometheus-operator-app.kubeStateMetrics.enabled | bool | `false` | | -| prometheus-operator-app.nodeExporter.enabled | bool | `false` | | -| prometheus-operator-app.prometheus.ingress.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.prometheus.ingress.pathType | string | `"ImplementationSpecific"` | | -| prometheus-operator-app.prometheus.ingressPerReplica.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.prometheus.ingressPerReplica.pathType | string | `"ImplementationSpecific"` | | -| prometheus-operator-app.prometheus.prometheusSpec.image.repository | string | `"giantswarm/prometheus"` | | -| prometheus-operator-app.prometheus.thanosIngress.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.prometheus.thanosIngress.pathType | string | `"ImplementationSpecific"` | | -| prometheus-operator-app.prometheusOperator.admissionWebhooks.patch.image.repository | string | `"giantswarm/ingress-nginx-kube-webhook-certgen"` | | -| prometheus-operator-app.prometheusOperator.alertmanagerDefaultBaseImage | string | `"giantswarm/alertmanager"` | | -| prometheus-operator-app.prometheusOperator.image.repository | string | `"giantswarm/prometheus-operator"` | | -| prometheus-operator-app.prometheusOperator.labels."giantswarm.io/monitoring_basic_sli" | string | `"true"` | | -| prometheus-operator-app.prometheusOperator.networkPolicy.enabled | bool | `true` | | -| prometheus-operator-app.prometheusOperator.prometheusConfigReloader.image.repository | string | `"giantswarm/prometheus-config-reloader"` | | -| prometheus-operator-app.prometheusOperator.prometheusDefaultBaseImage | string | `"giantswarm/prometheus"` | | -| prometheus-operator-app.prometheusOperator.secretFieldSelector | string | `"type!=helm.sh/release.v1"` | | -| prometheus-operator-app.prometheusOperator.thanosImage.repository | string | `"giantswarm/thanos"` | | -| prometheus-operator-app.prometheusOperator.verticalPodAutoscaler.enabled | bool | `true` | | -| prometheus-operator-app.thanosRuler.ingress.ingressClassName | string | `"nginx"` | | -| prometheus-operator-app.thanosRuler.ingress.pathType | string | `"ImplementationSpecific"` | | -| prometheus-operator-app.thanosRuler.thanosRulerSpec.image.repository | string | `"giantswarm/thanos"` | | - ----------------------------------------------- -Autogenerated from chart metadata using [helm-docs v1.11.0](https://github.com/norwoodj/helm-docs/releases/v1.11.0) diff --git a/script/update-docs.sh b/script/update-docs.sh index edc7085a..1db5d7f1 100755 --- a/script/update-docs.sh +++ b/script/update-docs.sh @@ -1,11 +1,11 @@ #!/bin/bash # -# This script generate the README.md in helm/prometheus-operator-app helm chart +# This script generate the README.md in helm/kube-prometheus-stack helm chart tag=$(git describe --tags --abbrev=0) -sed -i 's/\[\[ .Version \]\]/'"$tag"'/' ./helm/prometheus-operator-app/Chart.yaml +sed -i 's/\[\[ .Version \]\]/'"$tag"'/' ./helm/kube-prometheus-stack/Chart.yaml docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:latest -git checkout ./helm/prometheus-operator-app/Chart.yaml +git checkout ./helm/kube-prometheus-stack/Chart.yaml