mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-12-14 16:12:15 +01:00
docs: update formatiing for k8s monitoring with Managed VictoriaMetrics (#3768)
* jekyll formatting madness
This commit is contained in:
parent
80bf0bcf8c
commit
eaa3716507
@ -7,122 +7,121 @@ For node resource utilization we will be collecting metrics from `node-exporter`
|
||||
|
||||
For workloads monitoring in kubernetes cluster we will have [VictoriaMetrics Operator](https://docs.victoriametrics.com/operator/VictoriaMetrics-Operator.html). It enables us to define scrape jobs using kubernetes CRDs [VMServiceScrape](https://docs.victoriametrics.com/operator/design.html#vmservicescrape), [VMPodScrape](https://docs.victoriametrics.com/operator/design.html#vmpodscrape). To add alerts or recording rules for workloads we can use [VMRule](https://docs.victoriametrics.com/operator/design.html#vmrule) CRD
|
||||
|
||||
## Installation
|
||||
## Overview
|
||||
|
||||
In this guide we will be using [victoria-metrics-k8s-stack](https://github.com/VictoriaMetrics/helm-charts/tree/master/charts/victoria-metrics-k8s-stack) helm chart
|
||||
|
||||
This chart will install `VMOperator`, `VMAgent`, `NodeExporter`, `kube-state-metrics`, `grafana` and some service scrape configurations to start monitoring kuberentes cluster components
|
||||
|
||||
### Prerequisites
|
||||
## Prerequisites
|
||||
- Active Managed VictoriaMetrics instance. You can learn how to signup for Managed VictoriaMetrics [here](https://docs.victoriametrics.com/managed-victoriametrics/quickstart.html#how-to-register).
|
||||
- Access to your kubernetes cluster
|
||||
- Helm binary. You can find installation [here]https://helm.sh/docs/intro/install/()
|
||||
- Helm binary. You can find installation [here](https://helm.sh/docs/intro/install/)
|
||||
|
||||
### Installation steps
|
||||
## Installation steps
|
||||
Install the Helm chart in a custom namespace
|
||||
|
||||
|
||||
1. Create a unique Kubernetes namespace, for example monitoring
|
||||
```
|
||||
kubectl create namespace monitoring
|
||||
```
|
||||
|
||||
1. Create a unique Kubernetes namespace, for example `monitoring`
|
||||
<div class="with-copy" markdown="1">
|
||||
```bash
|
||||
kubectl create namespace monitoring
|
||||
```
|
||||
</div>
|
||||
2. Create kubernetes-secrets with token to access your dbaas deployment
|
||||
|
||||
```
|
||||
kubectl --namespace monitoring create secret generic dbaas-write-access-token --from-literal=bearerToken=your-token
|
||||
|
||||
kubectl --namespace monitoring create secret generic dbaas-read-access-token --from-literal=bearerToken=your-token
|
||||
```
|
||||
|
||||
> You can find your access token on the "Access" tab of your deployment
|
||||
|
||||
<p>
|
||||
<img src="how-to-monitor-k8s_access-token.png" width="800">
|
||||
</p>
|
||||
<div class="with-copy" markdown="1">
|
||||
```bash
|
||||
kubectl --namespace monitoring create secret generic dbaas-write-access-token --from-literal=bearerToken=your-token
|
||||
kubectl --namespace monitoring create secret generic dbaas-read-access-token --from-literal=bearerToken=your-token
|
||||
```
|
||||
</div>
|
||||
You can find your access token on the "Access" tab of your deployment
|
||||
<img src="how-to-monitor-k8s_access-token.png" width="800">
|
||||
|
||||
3. Set up a Helm repository using the following commands:
|
||||
```
|
||||
helm repo add grafana https://grafana.github.io/helm-charts
|
||||
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
|
||||
helm repo add vm https://victoriametrics.github.io/helm-charts
|
||||
helm repo update
|
||||
```
|
||||
|
||||
<div class="with-copy" markdown="1">
|
||||
```bash
|
||||
helm repo add grafana https://grafana.github.io/helm-charts
|
||||
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
|
||||
helm repo add vm https://victoriametrics.github.io/helm-charts
|
||||
helm repo update
|
||||
```
|
||||
</div>
|
||||
4. Create a YAML file of Helm values called dbaas.yaml with following content
|
||||
```yaml
|
||||
externalVM:
|
||||
read:
|
||||
url:
|
||||
bearerTokenSecret:
|
||||
name: dbaas-write-access-token
|
||||
key: bearerToken
|
||||
write:
|
||||
url:
|
||||
bearerTokenSecret:
|
||||
name: dbaas-read-access-token
|
||||
key: bearerToken
|
||||
<div class="with-copy" markdown="1">
|
||||
```yaml
|
||||
externalVM:
|
||||
read:
|
||||
url: <reading url, you can find it in examples on Access page>
|
||||
bearerTokenSecret:
|
||||
name: dbaas-write-access-token
|
||||
key: bearerToken
|
||||
write:
|
||||
url: <reading url, you can find it in examples on Access page>
|
||||
bearerTokenSecret:
|
||||
name: dbaas-read-access-token
|
||||
key: bearerToken
|
||||
|
||||
vmsingle:
|
||||
enabled: false
|
||||
vmsingle:
|
||||
enabled: false
|
||||
|
||||
vmcluster:
|
||||
enabled: false
|
||||
vmcluster:
|
||||
enabled: false
|
||||
|
||||
vmalert:
|
||||
enabled: true
|
||||
spec:
|
||||
evaluationInterval: 15s
|
||||
vmalert:
|
||||
enabled: true
|
||||
spec:
|
||||
evaluationInterval: 15s
|
||||
|
||||
vmagent:
|
||||
enabled: true
|
||||
vmagent:
|
||||
enabled: true
|
||||
|
||||
spec:
|
||||
scrapeInterval: 30s
|
||||
externalLabels:
|
||||
cluster: cluster-name
|
||||
|
||||
# dependencies
|
||||
# Grafana dependency chart configuration. For possible values refer to https://github.com/grafana/helm-charts/tree/main/charts/grafana#configuration
|
||||
grafana:
|
||||
enabled: true
|
||||
```
|
||||
spec:
|
||||
scrapeInterval: 30s
|
||||
externalLabels:
|
||||
cluster: <your cluster name>
|
||||
|
||||
# dependencies
|
||||
# Grafana dependency chart configuration. For possible values refer to https://github.com/grafana/helm-charts/tree/main/charts/grafana#configuration
|
||||
grafana:
|
||||
enabled: true
|
||||
```
|
||||
</div>
|
||||
5. Install VictoriaMetrics-k8s-stack helm chart
|
||||
<div class="with-copy" markdown="1">
|
||||
```bash
|
||||
helm --namespace monitoring install vm vm/victoria-metrics-k8s-stack -f dbaas.yaml -n monitoring
|
||||
```
|
||||
</div>
|
||||
|
||||
```
|
||||
helm --namespace monitoring install vm vm/victoria-metrics-k8s-stack -f dbaas.yaml -n monitoring
|
||||
```
|
||||
## Connect grafana
|
||||
|
||||
### Connect to grafana and create your datasource
|
||||
Connect to grafana and create your datasource
|
||||
|
||||
> If you are using external grafana, you can skip steps 1-3 and you will need to import dashboards that can be found here manually
|
||||
|
||||
|
||||
1. Get grafana password
|
||||
```
|
||||
kubectl --namespace monitoring get secret vm-grafana -o jsonpath="{.data.admin-password}" | base64 -d
|
||||
```
|
||||
<div class="with-copy" markdown="1">
|
||||
```bash
|
||||
kubectl --namespace monitoring get secret vm-grafana -o jsonpath="{.data.admin-password}" | base64 -d
|
||||
```
|
||||
</div>
|
||||
2. Connect to grafana
|
||||
```
|
||||
kubectl --namespace monitoring port-forward service/vm-grafana 3000:80
|
||||
```
|
||||
3. Open grafana in your browser http://localhost:3000/datasources
|
||||
<div class="with-copy" markdown="1">
|
||||
```bash
|
||||
kubectl --namespace monitoring port-forward service/vm-grafana 3000:80
|
||||
```
|
||||
</div>
|
||||
3. Open grafana in your browser [http://localhost:3000/datasources](http://localhost:3000/datasources)
|
||||
|
||||
Use admin as username and password from previous step
|
||||
|
||||
4. Click on add datasource
|
||||
|
||||
Choose VictoriaMetrics or Prometheus as datasource type. Make sure you made this datasource as default for dashboards to work.
|
||||
> You can find token and URL in your deployment, on Access tab
|
||||
|
||||
<img src="how-to-monitor-k8s_datasource.png" width="800">
|
||||
|
||||
<p>
|
||||
<img src="how-to-monitor-k8s_datasource.png" width="800">
|
||||
</p>
|
||||
## Test it
|
||||
|
||||
|
||||
> You can find token and URL in your deployment, on access tab
|
||||
|
||||
### Test it
|
||||
|
||||
You should be able to see data that was sent to your dbaas using VMAgent dashboard http://localhost:3000/d/G7Z9GzMGz/victoriametrics-vmagent/
|
||||
You also will be able to see bunch of kuberentes dashboards in your grafana
|
||||
- You should be able to see data that was sent to your dbaas using VMAgent dashboard [http://localhost:3000/d/G7Z9GzMGz/victoriametrics-vmagent/](http://localhost:3000/d/G7Z9GzMGz/victoriametrics-vmagent/)
|
||||
- You also will be able to see bunch of kuberentes dashboards in your grafana
|
||||
|
Loading…
Reference in New Issue
Block a user