mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2025-02-19 15:30:17 +00:00
Vmanomaly QuickStart (#5800)
* first edit
* typo 1
* typo 2
* fixes 3
* fixes 4
* fixes 5
* fixes, cross links
* v1.10 config
* models why, self-monitoring fix
* config next steps
* fixes
* minor fix
(cherry picked from commit b2baf7d472
)
This commit is contained in:
parent
c065287757
commit
a68518c0e0
4 changed files with 128 additions and 8 deletions
|
@ -136,7 +136,9 @@ optionally preserving labels).
|
||||||
## Usage
|
## Usage
|
||||||
> Starting from [v1.5.0](/anomaly-detection/CHANGELOG.html#v150), vmanomaly requires a license key to run. You can obtain a trial license key [here](https://victoriametrics.com/products/enterprise/trial/).
|
> Starting from [v1.5.0](/anomaly-detection/CHANGELOG.html#v150), vmanomaly requires a license key to run. You can obtain a trial license key [here](https://victoriametrics.com/products/enterprise/trial/).
|
||||||
|
|
||||||
> See [Getting started guide](anomaly-detection/guides/guide-vmanomaly-vmalert.html).
|
> See [Quickstart](/anomaly-detection/QuickStart.html).
|
||||||
|
|
||||||
|
> See [Integration guide: vmanomaly and vmalert](anomaly-detection/guides/guide-vmanomaly-vmalert.html).
|
||||||
|
|
||||||
### Config file
|
### Config file
|
||||||
There are 4 required sections in config file:
|
There are 4 required sections in config file:
|
||||||
|
@ -218,7 +220,7 @@ This will expose metrics at `http://0.0.0.0:8080/metrics` page.
|
||||||
To use *vmanomaly* you need to pull docker image:
|
To use *vmanomaly* you need to pull docker image:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
docker pull victoriametrics/vmanomaly:v1.10.0
|
docker pull victoriametrics/vmanomaly:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
> Note: please check what is latest release in [CHANGELOG](/anomaly-detection/CHANGELOG.html)
|
> Note: please check what is latest release in [CHANGELOG](/anomaly-detection/CHANGELOG.html)
|
||||||
|
@ -228,16 +230,18 @@ docker pull victoriametrics/vmanomaly:v1.10.0
|
||||||
You can put a tag on it for your convinience:
|
You can put a tag on it for your convinience:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
docker image tag victoriametrics/vmanomaly:v1.10.0 vmanomaly
|
docker image tag victoriametrics/vmanomaly:latest vmanomaly
|
||||||
```
|
```
|
||||||
Here is an example of how to run *vmanomaly* docker container with [license file](#licensing):
|
Here is an example of how to run *vmanomaly* docker container with [license file](#licensing):
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
export YOUR_LICENSE_FILE_PATH=path/to/license/file
|
||||||
|
export YOUR_CONFIG_FILE_PATH=path/to/config/file
|
||||||
docker run -it --net [YOUR_NETWORK] \
|
docker run -it --net [YOUR_NETWORK] \
|
||||||
-v [YOUR_LICENSE_FILE_PATH]:/license.txt \
|
-v YOUR_LICENSE_FILE_PATH:/license \
|
||||||
-v [YOUR_CONFIG_FILE_PATH]:/config.yml \
|
-v YOUR_CONFIG_FILE_PATH:/config.yml \
|
||||||
vmanomaly /config.yml \
|
vmanomaly /config.yml \
|
||||||
--license-file=/license.txt
|
--license-file=/license
|
||||||
```
|
```
|
||||||
|
|
||||||
### Licensing
|
### Licensing
|
||||||
|
|
115
docs/anomaly-detection/QuickStart.md
Normal file
115
docs/anomaly-detection/QuickStart.md
Normal file
|
@ -0,0 +1,115 @@
|
||||||
|
---
|
||||||
|
sort: 1
|
||||||
|
weight: 1
|
||||||
|
title: VictoriaMetrics Anomaly Detection Quick Start
|
||||||
|
menu:
|
||||||
|
docs:
|
||||||
|
parent: "anomaly-detection"
|
||||||
|
weight: 1
|
||||||
|
title: Quick Start
|
||||||
|
aliases:
|
||||||
|
- /anomaly-detection/QuickStart.html
|
||||||
|
---
|
||||||
|
|
||||||
|
# VictoriaMetrics Anomaly Detection Quick Start
|
||||||
|
|
||||||
|
For service introduction visit [README](https://docs.victoriametrics.com/anomaly-detection/) page
|
||||||
|
and [Overview](https://docs.victoriametrics.com/anomaly-detection/overview.html) of how `vmanomaly` works.
|
||||||
|
|
||||||
|
## How to install and run `vmanomaly`
|
||||||
|
|
||||||
|
> To run `vmanomaly` you need to have VictoriaMetrics Enterprise license. You can get a trial license key [**here**](https://victoriametrics.com/products/enterprise/trial/index.html).
|
||||||
|
|
||||||
|
The following options are available:
|
||||||
|
|
||||||
|
- [To run Docker image](#docker-image)
|
||||||
|
- [To run in Kubernetes with Helm charts](#helm-charts)
|
||||||
|
|
||||||
|
|
||||||
|
### Docker
|
||||||
|
> To run `vmanomaly` you need to have a VictoriaMetrics Enterprise [licence](https://victoriametrics.com/products/enterprise/) or request a trial [here](https://victoriametrics.com/products/enterprise/trial/index.html).
|
||||||
|
|
||||||
|
Below are the steps to get `vmanomaly` up and running inside a Docker container:
|
||||||
|
|
||||||
|
1. Pull Docker image:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker pull victoriametrics/vmanomaly:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
2. (Optional step) tag the `vmanomaly` Docker image:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker image tag victoriametrics/vmanomaly:latest vmanomaly
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Start the `vmanomaly` Docker container with a *license file*, use the command below.
|
||||||
|
**Make sure to replace `YOUR_LICENSE_FILE_PATH`, and `YOUR_CONFIG_FILE_PATH` with your specific details**:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
export YOUR_LICENSE_FILE_PATH=path/to/license/file
|
||||||
|
export YOUR_CONFIG_FILE_PATH=path/to/config/file
|
||||||
|
docker run -it -v $YOUR_LICENSE_FILE_PATH:/license \
|
||||||
|
-v $YOUR_CONFIG_FILE_PATH:/config.yml \
|
||||||
|
vmanomaly /config.yml \
|
||||||
|
--license-file=/license
|
||||||
|
```
|
||||||
|
|
||||||
|
See also:
|
||||||
|
|
||||||
|
- You can verify licence online and offline. See the details [here](https://docs.victoriametrics.com/anomaly-detection/overview/#licensing).
|
||||||
|
- [How to configure `vmanomaly`](#how-to-configure-vmanomaly)
|
||||||
|
|
||||||
|
### Kubernetes with Helm charts
|
||||||
|
|
||||||
|
You can run `vmanomaly` in Kubernetes environment
|
||||||
|
with [these Helm charts](https://github.com/VictoriaMetrics/helm-charts/blob/master/charts/victoria-metrics-anomaly/README.md).
|
||||||
|
|
||||||
|
|
||||||
|
## How to configure vmanomaly
|
||||||
|
To run `vmanomaly` you need to set up configuration file in `yaml` format.
|
||||||
|
|
||||||
|
Here is an example of config file that will run [Facebook Prophet](https://facebook.github.io/prophet/) model, that will be retrained every 2 hours on 14 days of previous data. It will generate inference (including `anomaly_score` metric) every 1 minute.
|
||||||
|
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
scheduler:
|
||||||
|
infer_every: "1m"
|
||||||
|
fit_every: "2h"
|
||||||
|
fit_window: "14d"
|
||||||
|
|
||||||
|
models:
|
||||||
|
prophet_model:
|
||||||
|
class: "model.prophet.ProphetModel"
|
||||||
|
args:
|
||||||
|
interval_width: 0.98
|
||||||
|
|
||||||
|
reader:
|
||||||
|
datasource_url: "http://victoriametrics:8428/" # [YOUR_DATASOURCE_URL]
|
||||||
|
sampling_period: "1m"
|
||||||
|
queries:
|
||||||
|
# define your queries with MetricsQL - https://docs.victoriametrics.com/metricsql/
|
||||||
|
cache: "sum(rate(vm_cache_entries))"
|
||||||
|
|
||||||
|
writer:
|
||||||
|
datasource_url: "http://victoriametrics:8428/" # [YOUR_DATASOURCE_URL]
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Next steps:
|
||||||
|
- Define how often to run and make inferences in the [scheduler](https://docs.victoriametrics.com/anomaly-detection/components/scheduler/) section of a config file.
|
||||||
|
- Setup the datasource to read data from in the [reader](https://docs.victoriametrics.com/anomaly-detection/components/reader/) section.
|
||||||
|
- Specify where and how to store anomaly detection metrics in the [writer](https://docs.victoriametrics.com/anomaly-detection/components/writer/) section.
|
||||||
|
- Configure built-in models parameters according to your needs in the [models](https://docs.victoriametrics.com/anomaly-detection/components/models/) section.
|
||||||
|
- Integrate your [custom models]((https://docs.victoriametrics.com/anomaly-detection/components/models/#custom-model-guide)) with `vmanomaly`.
|
||||||
|
- Define queries for input data use [MetricsQL](https://docs.victoriametrics.com/metricsql/).
|
||||||
|
|
||||||
|
|
||||||
|
## Check also
|
||||||
|
|
||||||
|
Here are other materials that you might find useful:
|
||||||
|
|
||||||
|
- [Guide: Anomaly Detection and Alerting Setup](https://docs.victoriametrics.com/anomaly-detection/guides/guide-vmanomaly-vmalert/)
|
||||||
|
- [FAQ](https://docs.victoriametrics.com/anomaly-detection/faq/)
|
||||||
|
- [Changelog](https://docs.victoriametrics.com/anomaly-detection/changelog/)
|
||||||
|
- [Anomaly Detection Blog](https://victoriametrics.com/blog/tags/anomaly-detection/)
|
|
@ -14,6 +14,7 @@ In the dynamic and complex world of system monitoring, VictoriaMetrics Anomaly D
|
||||||
## Practical Guides and Installation
|
## Practical Guides and Installation
|
||||||
Begin your VictoriaMetrics Anomaly Detection journey with ease using our guides and installation instructions:
|
Begin your VictoriaMetrics Anomaly Detection journey with ease using our guides and installation instructions:
|
||||||
|
|
||||||
|
- **Quickstart**: Check out how to get `vmanomaly` up and running [here](/anomaly-detection/QuickStart.html).
|
||||||
- **Overview**: Find out how `vmanomaly` service operates [here](/anomaly-detection/Overview.html)
|
- **Overview**: Find out how `vmanomaly` service operates [here](/anomaly-detection/Overview.html)
|
||||||
- **Integration**: Integrate anomaly detection into your observability ecosystem. Get started [**here**](/anomaly-detection/guides/guide-vmanomaly-vmalert.html).
|
- **Integration**: Integrate anomaly detection into your observability ecosystem. Get started [**here**](/anomaly-detection/guides/guide-vmanomaly-vmalert.html).
|
||||||
|
|
||||||
|
|
|
@ -446,9 +446,9 @@ The default metrics produced by vmanomaly include:
|
||||||
**Important**: Be aware that if `NaN` (Not a Number) or `Inf` (Infinity) values are present in the input data during `infer` model calls, the model will produce `NaN` as the `anomaly_score` for these particular instances.
|
**Important**: Be aware that if `NaN` (Not a Number) or `Inf` (Infinity) values are present in the input data during `infer` model calls, the model will produce `NaN` as the `anomaly_score` for these particular instances.
|
||||||
|
|
||||||
|
|
||||||
## Healthcheck metrics
|
## `vmanomaly` monitoring metrics
|
||||||
|
|
||||||
Each model exposes [several healthchecks metrics](/anomaly-detection/components/monitoring.html#models-behaviour-metrics) to its `health_path` endpoint:
|
Each model exposes [several monitoring metrics](/anomaly-detection/components/monitoring.html#models-behaviour-metrics) to its `health_path` endpoint:
|
||||||
|
|
||||||
|
|
||||||
## Custom Model Guide
|
## Custom Model Guide
|
||||||
|
|
Loading…
Reference in a new issue