-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
charts,salt,tools: Add Thanos querier in front of Prometheus #3573
Conversation
Hello teddyandrieux,My role is to assist you with the merge of this Status report is not available. |
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
Peer approvals must include at least 1 approval from the following list:
|
f245700
to
889fee7
Compare
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
Peer approvals must include at least 1 approval from the following list:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM except for the small upgrade detail, will test this tomorrow!
bf6a906
to
7e3e168
Compare
ConflictThere is a conflict between your branch Please resolve the conflict on the feature branch ( git fetch && \
git checkout origin/improvement/deploy-thanos-querier && \
git merge origin/development/2.11 Resolve merge conflicts and commit git push origin HEAD:improvement/deploy-thanos-querier |
7e3e168
to
a460a25
Compare
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
Peer approvals must include at least 1 approval from the following list:
|
a460a25
to
f568037
Compare
As part of kube-prometheus-stack chart, deploy Thanos sidecar as part of Prometheus Pod and the Thanos sidecar service used by Thanos querier to discover the Thanos sidecars IPs. Re-render the chart using: ``` ./charts/render.py prometheus-operator \ charts/kube-prometheus-stack.yaml \ charts/kube-prometheus-stack/ \ --namespace metalk8s-monitoring \ --service-config grafana \ metalk8s-grafana-config \ metalk8s/addons/prometheus-operator/config/grafana.yaml \ metalk8s-monitoring \ --service-config prometheus \ metalk8s-prometheus-config \ metalk8s/addons/prometheus-operator/config/prometheus.yaml \ metalk8s-monitoring \ --service-config alertmanager \ metalk8s-alertmanager-config \ metalk8s/addons/prometheus-operator/config/alertmanager.yaml \ metalk8s-monitoring \ --service-config dex \ metalk8s-dex-config \ metalk8s/addons/dex/config/dex.yaml.j2 metalk8s-auth \ --drop-prometheus-rules charts/drop-prometheus-rules.yaml \ > salt/metalk8s/addons/prometheus-operator/deployed/chart.sls ``` Import Thanos helm chart from banzaicloud: ``` helm repo add banzaicloud-stable https://kubernetes-charts.banzaicloud.com helm repo update helm fetch -d charts --untar banzaicloud-stable/thanos ``` Note that we only deploy the Thanos querier and not all other components. We also bump Thanos image since the one set in the helm chart is a bit old and do not support all Prometheus endpoint we need. Render the Thanos helm chart using ``` ./charts/render.py thanos \ charts/thanos.yaml charts/thanos/ \ --namespace metalk8s-monitoring \ > salt/metalk8s/addons/prometheus-operator/deployed/thanos-chart.sls ``` Then we replace the Prometheus datasource for Grafana in order to use this Thanos querier. We also replace the proxy ingress used by MetalK8s UI to use this Thanos querier as well. Since we now reach Thanos to retrieve Prometheus information, the order for the Prometheus rules changed a bit, so they get extracted again using ``` ./tools/rule_extractor/rule_extractor.py \ -i <control-plane-ip> -p 8443 -t rules ``` NOTE: Test not get updated a lot, just added sanity check to ensure Thanos querier Pod is running, since we already have some tests about Prometheus and for all those tests we now reach Thanos so we implicitly test Thanos querier
f568037
to
94c6937
Compare
/approve |
In the queueThe changeset has received all authorizations and has been added to the The changeset will be merged in:
The following branches will NOT be impacted:
There is no action required on your side. You will be notified here once IMPORTANT Please do not attempt to modify this pull request.
If you need this pull request to be removed from the queue, please contact a The following options are set: approve |
I have successfully merged the changeset of this pull request
The following branches have NOT changed:
Please check the status of the associated issue None. Goodbye teddyandrieux. |
As part of kube-prometheus-stack chart, deploy Thanos sidecar as part
of Prometheus Pod and the Thanos sidecar service used by Thanos querier
to discover the Thanos sidecars IPs.
Re-render the chart using:
Import Thanos helm chart from banzaicloud:
Note that we only deploy the Thanos querier and not all other
components.
We also bump Thanos image since the one set in the helm chart is a bit
old and do not support all Prometheus endpoint we need.
Render the Thanos helm chart using
Then we replace the Prometheus datasource for Grafana in order to use
this Thanos querier. We also replace the proxy ingress used by MetalK8s
UI to use this Thanos querier as well.
Since we now reach Thanos to retrieve Prometheus information, the order
for the Prometheus rules changed a bit, so they get extracted again
using
NOTE: Test not get updated a lot, just added sanity check to ensure
Thanos querier Pod is running, since we already have some tests about
Prometheus and for all those tests we now reach Thanos so we implicitly
test Thanos querier