From 35d77a3bedee6268680dbda60db18c4ba5ed21c5 Mon Sep 17 00:00:00 2001 From: Andrii Chubatiuk Date: Wed, 7 Aug 2024 17:48:08 +0300 Subject: [PATCH] docs: updated guides structure, removed deprecated sort option (#6767) ### Describe Your Changes * `sort` param is unused by the current website engine, and was present only for compatibility with previous website engine. It is time to remove it as it makes no effect * re-structure guides content into folders to simplify assets management ### Checklist The following checks are **mandatory**: - [ ] My change adheres [VictoriaMetrics contributing guidelines](https://docs.victoriametrics.com/contributing/). --- docs/Articles.md | 1 - docs/BestPractices.md | 1 - docs/CHANGELOG.md | 1 - docs/CHANGELOG_2020.md | 1 - docs/CHANGELOG_2021.md | 1 - docs/CHANGELOG_2022.md | 1 - docs/CHANGELOG_2023.md | 1 - docs/CONTRIBUTING.md | 1 - docs/CaseStudies.md | 1 - docs/Cluster-VictoriaMetrics.md | 3 +- docs/ExtendedPromQL.md | 1 - docs/FAQ.md | 1 - docs/LTS-releases.md | 1 - docs/MetricsQL.md | 1 - docs/PerTenantStatistic.md | 1 - docs/Quick-Start.md | 1 - docs/Release-Guide.md | 1 - docs/Single-server-VictoriaMetrics.md | 3 +- docs/Troubleshooting.md | 1 - docs/VictoriaLogs/CHANGELOG.md | 1 - docs/VictoriaLogs/FAQ.md | 1 - docs/VictoriaLogs/LogsQL.md | 1 - docs/VictoriaLogs/QuickStart.md | 1 - docs/VictoriaLogs/Roadmap.md | 1 - docs/VictoriaLogs/data-ingestion/_index.md | 1 - docs/VictoriaLogs/keyConcepts.md | 1 - docs/VictoriaLogs/logsql-examples.md | 1 - docs/VictoriaLogs/querying/_index.md | 1 - docs/anomaly-detection/CHANGELOG.md | 1 - docs/anomaly-detection/FAQ.md | 1 - docs/anomaly-detection/Overview.md | 1 - docs/anomaly-detection/Presets.md | 1 - docs/anomaly-detection/QuickStart.md | 1 - docs/anomaly-detection/_index.md | 1 - docs/anomaly-detection/components/models.md | 2 -- .../components/monitoring.md | 1 - docs/anomaly-detection/components/reader.md | 1 - .../anomaly-detection/components/scheduler.md | 1 - docs/anomaly-detection/components/writer.md | 1 - .../guides/guide-vmanomaly-vmalert/_index.md | 1 - docs/data-ingestion/Alloy.md | 1 - docs/data-ingestion/Prometheus.md | 1 - docs/data-ingestion/Proxmox.md | 1 - docs/data-ingestion/Telegraf.md | 1 - docs/data-ingestion/Vector.md | 1 - docs/data-ingestion/_index.md | 1 - docs/data-ingestion/vmagent.md | 1 - docs/enterprise.md | 1 - docs/goals.md | 1 - .../guide-vmcluster-vmagent-values.yaml | 0 .../{ => examples}/guide-vmsingle-values.yaml | 0 .../README.md} | 20 ++++---------- .../_index.md | 9 ++++++ .../app.go-collector.example} | 0 .../app.go.example} | 0 .../collector.webp} | Bin .../direct.webp} | Bin .../vmui-dice-roll.webp | Bin .../vmui.webp} | Bin .../README.md} | 16 ++--------- .../_index.md | 11 ++++++++ .../vmcluster-grafana1.webp} | Bin .../vmcluster-grafana2.webp} | Bin .../vmcluster.webp} | Bin .../README.md} | 10 ------- .../guide-delete-or-replace-metrics/_index.md | 11 ++++++++ .../README.md} | 12 +------- .../_index.md | 11 ++++++++ .../setup.webp} | Bin .../README.md} | 26 ++++++------------ .../_index.md | 11 ++++++++ .../explore-count-up-graph.webp} | Bin .../explore-count-up-graph2.webp} | Bin .../explore-count-up.webp} | Bin .../explore.webp} | Bin .../README.md} | 22 ++++----------- .../k8s-monitoring-via-vm-cluster/_index.md | 11 ++++++++ .../dashboard.webp} | Bin .../dashes-agent.webp} | Bin .../grafana-dash.webp} | Bin .../scheme.webp} | Bin ...onitoring-via-vm-cluster_grafana-dash.webp | Bin 45954 -> 0 bytes .../README.md} | 22 ++++----------- .../k8s-monitoring-via-vm-single/_index.md | 11 ++++++++ .../grafana-dashboards.webp} | Bin .../grafana-k8s-dashboard.webp} | Bin .../grafana.webp} | Bin .../k8s-scheme.webp} | Bin .../README.md} | 16 ++--------- docs/guides/migrate-from-influx/_index.md | 11 ++++++++ .../data-sample-in-vm.webp} | Bin .../sample-in-influx.webp} | Bin .../vmui.webp} | Bin .../README.md} | 12 +------- .../_index.md | 11 ++++++++ .../setup.webp} | Bin .../README.md} | 10 ------- .../understand-your-setup-size/_index.md | 11 ++++++++ docs/keyConcepts.md | 1 - docs/relabeling.md | 1 - docs/scrape_config_examples.md | 1 - docs/sd_configs.md | 1 - docs/stream-aggregation.md | 1 - docs/url-examples.md | 1 - docs/victoriametrics-cloud/_index.md | 1 - ...alerting-vmalert-victoria-metrics-cloud.md | 1 - .../alertmanager-setup-for-deployment.md | 1 - .../how-to-monitor-k8s.md | 1 - docs/victoriametrics-cloud/overview.md | 1 - docs/victoriametrics-cloud/quickstart.md | 1 - .../setup-notifications.md | 1 - docs/victoriametrics-cloud/user-managment.md | 1 - docs/vmagent.md | 1 - docs/vmalert-tool.md | 1 - docs/vmalert.md | 1 - docs/vmauth.md | 1 - docs/vmbackup.md | 1 - docs/vmbackupmanager.md | 1 - docs/vmctl.md | 1 - docs/vmgateway.md | 1 - docs/vmrestore.md | 1 - 121 files changed, 144 insertions(+), 207 deletions(-) rename docs/guides/{ => examples}/guide-vmcluster-vmagent-values.yaml (100%) rename docs/guides/{ => examples}/guide-vmsingle-values.yaml (100%) rename docs/guides/{getting-started-with-opentelemetry.md => getting-started-with-opentelemetry/README.md} (94%) create mode 100644 docs/guides/getting-started-with-opentelemetry/_index.md rename docs/guides/{getting-started-with-opentelemetry-app.go-collector.example => getting-started-with-opentelemetry/app.go-collector.example} (100%) rename docs/guides/{getting-started-with-opentelemetry-app.go.example => getting-started-with-opentelemetry/app.go.example} (100%) rename docs/guides/{getting-started-with-opentelemetry-collector.webp => getting-started-with-opentelemetry/collector.webp} (100%) rename docs/guides/{getting-started-with-opentelemetry-direct.webp => getting-started-with-opentelemetry/direct.webp} (100%) rename docs/guides/{ => getting-started-with-opentelemetry}/vmui-dice-roll.webp (100%) rename docs/guides/{getting-started-with-opentelemetry-vmui.webp => getting-started-with-opentelemetry/vmui.webp} (100%) rename docs/guides/{getting-started-with-vm-operator.md => getting-started-with-vm-operator/README.md} (96%) create mode 100644 docs/guides/getting-started-with-vm-operator/_index.md rename docs/guides/{getting-started-with-vm-operator_vmcluster-grafana1.webp => getting-started-with-vm-operator/vmcluster-grafana1.webp} (100%) rename docs/guides/{getting-started-with-vm-operator_vmcluster-grafana2.webp => getting-started-with-vm-operator/vmcluster-grafana2.webp} (100%) rename docs/guides/{getting-started-with-vm-operator_vmcluster.webp => getting-started-with-vm-operator/vmcluster.webp} (100%) rename docs/guides/{guide-delete-or-replace-metrics.md => guide-delete-or-replace-metrics/README.md} (97%) create mode 100644 docs/guides/guide-delete-or-replace-metrics/_index.md rename docs/guides/{guide-vmcluster-multiple-retention-setup.md => guide-vmcluster-multiple-retention-setup/README.md} (92%) create mode 100644 docs/guides/guide-vmcluster-multiple-retention-setup/_index.md rename docs/guides/{guide-vmcluster-multiple-retention-setup.webp => guide-vmcluster-multiple-retention-setup/setup.webp} (100%) rename docs/guides/{k8s-ha-monitoring-via-vm-cluster.md => k8s-ha-monitoring-via-vm-cluster/README.md} (93%) create mode 100644 docs/guides/k8s-ha-monitoring-via-vm-cluster/_index.md rename docs/guides/{k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph.webp => k8s-ha-monitoring-via-vm-cluster/explore-count-up-graph.webp} (100%) rename docs/guides/{k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph2.webp => k8s-ha-monitoring-via-vm-cluster/explore-count-up-graph2.webp} (100%) rename docs/guides/{k8s-ha-monitoring-via-vm-cluster_explore-count-up.webp => k8s-ha-monitoring-via-vm-cluster/explore-count-up.webp} (100%) rename docs/guides/{k8s-ha-monitoring-via-vm-cluster_explore.webp => k8s-ha-monitoring-via-vm-cluster/explore.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-cluster.md => k8s-monitoring-via-vm-cluster/README.md} (97%) create mode 100644 docs/guides/k8s-monitoring-via-vm-cluster/_index.md rename docs/guides/{k8s-monitoring-via-vm-cluster_dashboard.webp => k8s-monitoring-via-vm-cluster/dashboard.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-cluster_dashes-agent.webp => k8s-monitoring-via-vm-cluster/dashes-agent.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-cluster_vmagent-grafana-dash.webp => k8s-monitoring-via-vm-cluster/grafana-dash.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-cluster_scheme.webp => k8s-monitoring-via-vm-cluster/scheme.webp} (100%) delete mode 100644 docs/guides/k8s-monitoring-via-vm-cluster_grafana-dash.webp rename docs/guides/{k8s-monitoring-via-vm-single.md => k8s-monitoring-via-vm-single/README.md} (93%) create mode 100644 docs/guides/k8s-monitoring-via-vm-single/_index.md rename docs/guides/{k8s-monitoring-via-vm-single_grafana-dashboards.webp => k8s-monitoring-via-vm-single/grafana-dashboards.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-single_grafana-k8s-dashboard.webp => k8s-monitoring-via-vm-single/grafana-k8s-dashboard.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-single_grafana.webp => k8s-monitoring-via-vm-single/grafana.webp} (100%) rename docs/guides/{k8s-monitoring-via-vm-single_k8s-scheme.webp => k8s-monitoring-via-vm-single/k8s-scheme.webp} (100%) rename docs/guides/{migrate-from-influx.md => migrate-from-influx/README.md} (97%) create mode 100644 docs/guides/migrate-from-influx/_index.md rename docs/guides/{migrate-from-influx_data-sample-in-vm.webp => migrate-from-influx/data-sample-in-vm.webp} (100%) rename docs/guides/{migrate-from-influx_data-sample-in-influx.webp => migrate-from-influx/sample-in-influx.webp} (100%) rename docs/guides/{migrate-from-influx_vmui.webp => migrate-from-influx/vmui.webp} (100%) rename docs/guides/{multi-regional-setup-dedicated-regions.md => multi-regional-setup-dedicated-regions/README.md} (94%) create mode 100644 docs/guides/multi-regional-setup-dedicated-regions/_index.md rename docs/guides/{multi-regional-setup-dedicated-regions.webp => multi-regional-setup-dedicated-regions/setup.webp} (100%) rename docs/guides/{understand-your-setup-size.md => understand-your-setup-size/README.md} (98%) create mode 100644 docs/guides/understand-your-setup-size/_index.md diff --git a/docs/Articles.md b/docs/Articles.md index 187535c71..c26e27faa 100644 --- a/docs/Articles.md +++ b/docs/Articles.md @@ -1,5 +1,4 @@ --- -sort: 29 weight: 29 title: Articles menu: diff --git a/docs/BestPractices.md b/docs/BestPractices.md index b28d5d3c9..e073733ed 100644 --- a/docs/BestPractices.md +++ b/docs/BestPractices.md @@ -1,5 +1,4 @@ --- -sort: 32 weight: 32 title: Best practices menu: diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index e16800ac1..833250b5d 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,5 +1,4 @@ --- -sort: 100 weight: 100 title: CHANGELOG menu: diff --git a/docs/CHANGELOG_2020.md b/docs/CHANGELOG_2020.md index 7c78e9ef1..c739ef638 100644 --- a/docs/CHANGELOG_2020.md +++ b/docs/CHANGELOG_2020.md @@ -1,5 +1,4 @@ --- -sort: 6 weight: 6 title: Year 2020 menu: diff --git a/docs/CHANGELOG_2021.md b/docs/CHANGELOG_2021.md index 2e188d7b5..9dff75379 100644 --- a/docs/CHANGELOG_2021.md +++ b/docs/CHANGELOG_2021.md @@ -1,5 +1,4 @@ --- -sort: 5 weight: 5 title: Year 2021 menu: diff --git a/docs/CHANGELOG_2022.md b/docs/CHANGELOG_2022.md index 0dded827c..e04dac981 100644 --- a/docs/CHANGELOG_2022.md +++ b/docs/CHANGELOG_2022.md @@ -1,5 +1,4 @@ --- -sort: 4 weight: 4 title: Year 2022 menu: diff --git a/docs/CHANGELOG_2023.md b/docs/CHANGELOG_2023.md index 878678add..ddd85c182 100644 --- a/docs/CHANGELOG_2023.md +++ b/docs/CHANGELOG_2023.md @@ -1,5 +1,4 @@ --- -sort: 3 weight: 3 title: Year 2023 menu: diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 1c05fe705..f57f06e69 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -1,5 +1,4 @@ --- -sort: 400 weight: 400 title: Contributing menu: diff --git a/docs/CaseStudies.md b/docs/CaseStudies.md index 8624e57c8..6129bdaaa 100644 --- a/docs/CaseStudies.md +++ b/docs/CaseStudies.md @@ -1,5 +1,4 @@ --- -sort: 21 weight: 21 title: Case studies and talks menu: diff --git a/docs/Cluster-VictoriaMetrics.md b/docs/Cluster-VictoriaMetrics.md index 0c00617f5..7e6b8515c 100644 --- a/docs/Cluster-VictoriaMetrics.md +++ b/docs/Cluster-VictoriaMetrics.md @@ -1,5 +1,4 @@ --- -sort: 2 weight: 2 menu: docs: @@ -1896,4 +1895,4 @@ Below is the output for `/path/to/vmstorage -help`: TCP address to accept connections from vminsert services (default ":8400") -vmselectAddr string TCP address to accept connections from vmselect services (default ":8401") -``` \ No newline at end of file +``` diff --git a/docs/ExtendedPromQL.md b/docs/ExtendedPromQL.md index 2c81204df..cee394ad1 100644 --- a/docs/ExtendedPromQL.md +++ b/docs/ExtendedPromQL.md @@ -1,5 +1,4 @@ --- -sort: -1 # hide page from menu weight: 100 --- diff --git a/docs/FAQ.md b/docs/FAQ.md index 58444d5e6..df6bd1a9f 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -1,5 +1,4 @@ --- -sort: 24 weight: 24 title: FAQ menu: diff --git a/docs/LTS-releases.md b/docs/LTS-releases.md index 628be4395..e04aa1297 100644 --- a/docs/LTS-releases.md +++ b/docs/LTS-releases.md @@ -1,5 +1,4 @@ --- -sort: 300 weight: 300 title: Long-term support releases menu: diff --git a/docs/MetricsQL.md b/docs/MetricsQL.md index 64b343f53..c562b7216 100644 --- a/docs/MetricsQL.md +++ b/docs/MetricsQL.md @@ -1,5 +1,4 @@ --- -sort: 23 weight: 23 title: MetricsQL menu: diff --git a/docs/PerTenantStatistic.md b/docs/PerTenantStatistic.md index 0433f9217..9bcb91fa8 100644 --- a/docs/PerTenantStatistic.md +++ b/docs/PerTenantStatistic.md @@ -1,5 +1,4 @@ --- -sort: 31 weight: 31 title: Cluster Per Tenant Statistic menu: diff --git a/docs/Quick-Start.md b/docs/Quick-Start.md index 2985ce32a..bc95860f0 100644 --- a/docs/Quick-Start.md +++ b/docs/Quick-Start.md @@ -1,5 +1,4 @@ --- -sort: 22 weight: 22 title: Quick start menu: diff --git a/docs/Release-Guide.md b/docs/Release-Guide.md index efc637d29..98dd32e28 100644 --- a/docs/Release-Guide.md +++ b/docs/Release-Guide.md @@ -1,5 +1,4 @@ --- -sort: 30 weight: 30 title: Release process guidance menu: diff --git a/docs/Single-server-VictoriaMetrics.md b/docs/Single-server-VictoriaMetrics.md index 802982930..4ab008c8a 100644 --- a/docs/Single-server-VictoriaMetrics.md +++ b/docs/Single-server-VictoriaMetrics.md @@ -1,5 +1,4 @@ --- -sort: 1 weight: 1 menu: docs: @@ -10,4 +9,4 @@ title: Single version aliases: - /Single-server-VictoriaMetrics.html --- -{{% content "README.md" %}} \ No newline at end of file +{{% content "README.md" %}} diff --git a/docs/Troubleshooting.md b/docs/Troubleshooting.md index ece608d74..9c71b30c2 100644 --- a/docs/Troubleshooting.md +++ b/docs/Troubleshooting.md @@ -1,5 +1,4 @@ --- -sort: 35 weight: 35 title: Troubleshooting menu: diff --git a/docs/VictoriaLogs/CHANGELOG.md b/docs/VictoriaLogs/CHANGELOG.md index 77f69001d..8f577e98b 100644 --- a/docs/VictoriaLogs/CHANGELOG.md +++ b/docs/VictoriaLogs/CHANGELOG.md @@ -1,5 +1,4 @@ --- -sort: 7 weight: 7 title: CHANGELOG menu: diff --git a/docs/VictoriaLogs/FAQ.md b/docs/VictoriaLogs/FAQ.md index 160403cff..05625cad6 100644 --- a/docs/VictoriaLogs/FAQ.md +++ b/docs/VictoriaLogs/FAQ.md @@ -1,5 +1,4 @@ --- -sort: 6 weight: 6 title: FAQ menu: diff --git a/docs/VictoriaLogs/LogsQL.md b/docs/VictoriaLogs/LogsQL.md index 1cf4d3bdb..974ba9c24 100644 --- a/docs/VictoriaLogs/LogsQL.md +++ b/docs/VictoriaLogs/LogsQL.md @@ -1,5 +1,4 @@ --- -sort: 5 weight: 5 title: LogsQL menu: diff --git a/docs/VictoriaLogs/QuickStart.md b/docs/VictoriaLogs/QuickStart.md index 31e521dad..fa4cbc9d5 100644 --- a/docs/VictoriaLogs/QuickStart.md +++ b/docs/VictoriaLogs/QuickStart.md @@ -1,5 +1,4 @@ --- -sort: 1 weight: 1 title: Quick Start menu: diff --git a/docs/VictoriaLogs/Roadmap.md b/docs/VictoriaLogs/Roadmap.md index dbe7fb6e5..3c50b8ea1 100644 --- a/docs/VictoriaLogs/Roadmap.md +++ b/docs/VictoriaLogs/Roadmap.md @@ -1,5 +1,4 @@ --- -sort: 8 weight: 8 title: Roadmap disableToc: true diff --git a/docs/VictoriaLogs/data-ingestion/_index.md b/docs/VictoriaLogs/data-ingestion/_index.md index aab116b60..d63bce1b8 100644 --- a/docs/VictoriaLogs/data-ingestion/_index.md +++ b/docs/VictoriaLogs/data-ingestion/_index.md @@ -1,5 +1,4 @@ --- -sort: 3 title: Data ingestion weight: 3 menu: diff --git a/docs/VictoriaLogs/keyConcepts.md b/docs/VictoriaLogs/keyConcepts.md index d164a9069..bdd2dc30f 100644 --- a/docs/VictoriaLogs/keyConcepts.md +++ b/docs/VictoriaLogs/keyConcepts.md @@ -1,5 +1,4 @@ --- -sort: 2 weight: 2 title: Key concepts menu: diff --git a/docs/VictoriaLogs/logsql-examples.md b/docs/VictoriaLogs/logsql-examples.md index 878b4a0e2..82782a795 100644 --- a/docs/VictoriaLogs/logsql-examples.md +++ b/docs/VictoriaLogs/logsql-examples.md @@ -1,5 +1,4 @@ --- -sort: 100 weight: 100 title: LogsQL examples menu: diff --git a/docs/VictoriaLogs/querying/_index.md b/docs/VictoriaLogs/querying/_index.md index d7078b078..ad969fb7b 100644 --- a/docs/VictoriaLogs/querying/_index.md +++ b/docs/VictoriaLogs/querying/_index.md @@ -1,5 +1,4 @@ --- -sort: 4 title: Querying weight: 4 menu: diff --git a/docs/anomaly-detection/CHANGELOG.md b/docs/anomaly-detection/CHANGELOG.md index 85869ed55..726c4ff79 100644 --- a/docs/anomaly-detection/CHANGELOG.md +++ b/docs/anomaly-detection/CHANGELOG.md @@ -1,5 +1,4 @@ --- -sort: 3 weight: 5 title: CHANGELOG menu: diff --git a/docs/anomaly-detection/FAQ.md b/docs/anomaly-detection/FAQ.md index 12c42bc2e..e88ce499c 100644 --- a/docs/anomaly-detection/FAQ.md +++ b/docs/anomaly-detection/FAQ.md @@ -1,5 +1,4 @@ --- -sort: 2 weight: 4 title: FAQ menu: diff --git a/docs/anomaly-detection/Overview.md b/docs/anomaly-detection/Overview.md index 5e2ded6ce..8bee13cb4 100644 --- a/docs/anomaly-detection/Overview.md +++ b/docs/anomaly-detection/Overview.md @@ -1,7 +1,6 @@ --- title: Overview weight: 1 -sort: 1 menu: docs: identifier: "vmanomaly-overview" diff --git a/docs/anomaly-detection/Presets.md b/docs/anomaly-detection/Presets.md index ecf7c53bd..07c389bc8 100644 --- a/docs/anomaly-detection/Presets.md +++ b/docs/anomaly-detection/Presets.md @@ -1,5 +1,4 @@ --- -sort: 3 weight: 1 title: Presets menu: diff --git a/docs/anomaly-detection/QuickStart.md b/docs/anomaly-detection/QuickStart.md index ca6149c3e..7b8b2ff8c 100644 --- a/docs/anomaly-detection/QuickStart.md +++ b/docs/anomaly-detection/QuickStart.md @@ -1,5 +1,4 @@ --- -sort: 1 weight: 1 title: VictoriaMetrics Anomaly Detection Quick Start menu: diff --git a/docs/anomaly-detection/_index.md b/docs/anomaly-detection/_index.md index c208303f0..6adb047e0 100644 --- a/docs/anomaly-detection/_index.md +++ b/docs/anomaly-detection/_index.md @@ -1,5 +1,4 @@ --- -# sort: 14 title: VictoriaMetrics Anomaly Detection weight: 0 aliases: diff --git a/docs/anomaly-detection/components/models.md b/docs/anomaly-detection/components/models.md index f62a9dcef..1c25872de 100644 --- a/docs/anomaly-detection/components/models.md +++ b/docs/anomaly-detection/components/models.md @@ -1,13 +1,11 @@ --- title: Models weight: 1 -sort: 1 menu: docs: identifier: "vmanomaly-models" parent: "vmanomaly-components" weight: 1 - # sort: 1 aliases: - /anomaly-detection/components/models.html - /anomaly-detection/components/models/custom_model.html diff --git a/docs/anomaly-detection/components/monitoring.md b/docs/anomaly-detection/components/monitoring.md index d7c4a879f..845ca31d5 100644 --- a/docs/anomaly-detection/components/monitoring.md +++ b/docs/anomaly-detection/components/monitoring.md @@ -1,5 +1,4 @@ --- -sort: 5 title: Monitoring weight: 5 menu: diff --git a/docs/anomaly-detection/components/reader.md b/docs/anomaly-detection/components/reader.md index bbc02cfc1..883d08778 100644 --- a/docs/anomaly-detection/components/reader.md +++ b/docs/anomaly-detection/components/reader.md @@ -1,5 +1,4 @@ --- -sort: 2 title: Reader weight: 2 menu: diff --git a/docs/anomaly-detection/components/scheduler.md b/docs/anomaly-detection/components/scheduler.md index 2a006cae6..12cd7b68c 100644 --- a/docs/anomaly-detection/components/scheduler.md +++ b/docs/anomaly-detection/components/scheduler.md @@ -1,5 +1,4 @@ --- -sort: 3 title: Scheduler weight: 3 menu: diff --git a/docs/anomaly-detection/components/writer.md b/docs/anomaly-detection/components/writer.md index 6c3b9a31c..75e4595ae 100644 --- a/docs/anomaly-detection/components/writer.md +++ b/docs/anomaly-detection/components/writer.md @@ -1,5 +1,4 @@ --- -sort: 4 title: Writer weight: 4 menu: diff --git a/docs/anomaly-detection/guides/guide-vmanomaly-vmalert/_index.md b/docs/anomaly-detection/guides/guide-vmanomaly-vmalert/_index.md index 3725875ab..8c260af07 100644 --- a/docs/anomaly-detection/guides/guide-vmanomaly-vmalert/_index.md +++ b/docs/anomaly-detection/guides/guide-vmanomaly-vmalert/_index.md @@ -1,6 +1,5 @@ --- weight: 1 -sort: 1 title: Anomaly Detection and Alerting Setup menu: docs: diff --git a/docs/data-ingestion/Alloy.md b/docs/data-ingestion/Alloy.md index 02c33019f..03cbcbe17 100644 --- a/docs/data-ingestion/Alloy.md +++ b/docs/data-ingestion/Alloy.md @@ -1,7 +1,6 @@ --- title: Grafana Alloy weight: 3 -sort: 3 menu: docs: identifier: "alloy" diff --git a/docs/data-ingestion/Prometheus.md b/docs/data-ingestion/Prometheus.md index a0cc1f9bb..11773306f 100644 --- a/docs/data-ingestion/Prometheus.md +++ b/docs/data-ingestion/Prometheus.md @@ -1,7 +1,6 @@ --- title: Prometheus weight: 1 -sort: 1 menu: docs: identifier: "prometheus" diff --git a/docs/data-ingestion/Proxmox.md b/docs/data-ingestion/Proxmox.md index 44bff2dff..0c4867eb6 100644 --- a/docs/data-ingestion/Proxmox.md +++ b/docs/data-ingestion/Proxmox.md @@ -1,7 +1,6 @@ --- title: Proxmox weight: 6 -sort: 6 menu: docs: identifier: "proxmox" diff --git a/docs/data-ingestion/Telegraf.md b/docs/data-ingestion/Telegraf.md index a716d0dc2..039f626ac 100644 --- a/docs/data-ingestion/Telegraf.md +++ b/docs/data-ingestion/Telegraf.md @@ -1,7 +1,6 @@ --- title: Telegraf weight: 5 -sort: 5 menu: docs: identifier: "telegraf" diff --git a/docs/data-ingestion/Vector.md b/docs/data-ingestion/Vector.md index e2c283d69..14b7a73aa 100644 --- a/docs/data-ingestion/Vector.md +++ b/docs/data-ingestion/Vector.md @@ -1,7 +1,6 @@ --- title: Vector weight: 4 -sort: 4 menu: docs: identifier: "Vector" diff --git a/docs/data-ingestion/_index.md b/docs/data-ingestion/_index.md index 337d726c0..8111d287d 100644 --- a/docs/data-ingestion/_index.md +++ b/docs/data-ingestion/_index.md @@ -1,5 +1,4 @@ --- -# sort: 14 title: Data Ingestion weight: 0 menu: diff --git a/docs/data-ingestion/vmagent.md b/docs/data-ingestion/vmagent.md index 840cb220a..a2de629ed 100644 --- a/docs/data-ingestion/vmagent.md +++ b/docs/data-ingestion/vmagent.md @@ -1,7 +1,6 @@ --- title: vmagent weight: 2 -sort: 2 menu: docs: identifier: data-ingestion-vmagent diff --git a/docs/enterprise.md b/docs/enterprise.md index df90d623e..bb8a25f6d 100644 --- a/docs/enterprise.md +++ b/docs/enterprise.md @@ -1,5 +1,4 @@ --- -sort: 99 weight: 99 title: Enterprise menu: diff --git a/docs/goals.md b/docs/goals.md index 6ee9b6683..09fd850a2 100644 --- a/docs/goals.md +++ b/docs/goals.md @@ -1,5 +1,4 @@ --- -sort: 500 weight: 500 title: Development goals menu: diff --git a/docs/guides/guide-vmcluster-vmagent-values.yaml b/docs/guides/examples/guide-vmcluster-vmagent-values.yaml similarity index 100% rename from docs/guides/guide-vmcluster-vmagent-values.yaml rename to docs/guides/examples/guide-vmcluster-vmagent-values.yaml diff --git a/docs/guides/guide-vmsingle-values.yaml b/docs/guides/examples/guide-vmsingle-values.yaml similarity index 100% rename from docs/guides/guide-vmsingle-values.yaml rename to docs/guides/examples/guide-vmsingle-values.yaml diff --git a/docs/guides/getting-started-with-opentelemetry.md b/docs/guides/getting-started-with-opentelemetry/README.md similarity index 94% rename from docs/guides/getting-started-with-opentelemetry.md rename to docs/guides/getting-started-with-opentelemetry/README.md index eb77aefef..563d82bc0 100644 --- a/docs/guides/getting-started-with-opentelemetry.md +++ b/docs/guides/getting-started-with-opentelemetry/README.md @@ -1,11 +1,3 @@ ---- -weight: 5 -title: How to use OpenTelemetry metrics with VictoriaMetrics -menu: - docs: - parent: "guides" - weight: 5 ---- VictoriaMetrics supports metrics ingestion with [OpenTelemetry metrics format](https://opentelemetry.io/docs/specs/otel/metrics/). This guide covers data ingestion via [opentelemetry-collector](https://opentelemetry.io/docs/collector/) and direct metrics push from application. @@ -44,7 +36,7 @@ Read Data: ## Using opentelemetry-collector with VictoriaMetrics -![OTEL Collector](getting-started-with-opentelemetry-collector.webp) +![OTEL Collector](collector.webp) ### Deploy opentelemetry-collector and configure metrics forwarding @@ -108,7 +100,7 @@ Metrics could be sent to VictoriaMetrics via OpenTelemetry instrumentation libra In our example, we'll create a WEB server in [Golang](https://go.dev/) and instrument it with metrics. ### Building the Go application instrumented with metrics -Copy the go file from [here](/guides/getting-started-with-opentelemetry-app.go-collector.example). This will give you a basic implementation of a dice roll WEB server with the urls for opentelemetry-collector pointing to localhost:4318. +Copy the go file from [here](/guides/app.go-collector.example). This will give you a basic implementation of a dice roll WEB server with the urls for opentelemetry-collector pointing to localhost:4318. In the same directory run the following command to create the `go.mod` file: ```sh go mod init vm/otel @@ -170,12 +162,12 @@ Metrics could be ingested into VictoriaMetrics directly with HTTP requests. You instrumentation [clients](https://opentelemetry.io/docs/languages/). In our example, we'll create a WEB server in [Golang](https://go.dev/) and instrument it with metrics. -![OTEL direct](getting-started-with-opentelemetry-direct.webp) +![OTEL direct](direct.webp) ### Building the Go application instrumented with metrics -See the full source code of the example [here](/guides/getting-started-with-opentelemetry-app.go.example). +See the full source code of the example [here](/guides/app.go.example). The list of OpenTelemetry dependencies for `go.mod` is the following: @@ -322,7 +314,7 @@ func newMetricsController(ctx context.Context) (*controller.Controller, error) { This controller will collect and push collected metrics to VictoriaMetrics address with interval of `10s`. -See the full source code of the example [here](/guides/getting-started-with-opentelemetry-app.go.example). +See the full source code of the example [here](/guides/app.go.example). ### Test metrics ingestion @@ -349,7 +341,7 @@ curl http://localhost:8081/api/slow Open [vmui](https://docs.victoriametrics.com/#vmui) and query `http_requests_total` or `http_active_requests` with [metricsql](https://docs.victoriametrics.com/metricsql/). -![OTEL VMUI](getting-started-with-opentelemetry-vmui.webp) +![OTEL VMUI](vmui.webp) ## Limitations diff --git a/docs/guides/getting-started-with-opentelemetry/_index.md b/docs/guides/getting-started-with-opentelemetry/_index.md new file mode 100644 index 000000000..aac03c3e0 --- /dev/null +++ b/docs/guides/getting-started-with-opentelemetry/_index.md @@ -0,0 +1,9 @@ +--- +weight: 5 +title: How to use OpenTelemetry metrics with VictoriaMetrics +menu: + docs: + parent: "guides" + weight: 5 +--- +{{% content "README.md" %}} diff --git a/docs/guides/getting-started-with-opentelemetry-app.go-collector.example b/docs/guides/getting-started-with-opentelemetry/app.go-collector.example similarity index 100% rename from docs/guides/getting-started-with-opentelemetry-app.go-collector.example rename to docs/guides/getting-started-with-opentelemetry/app.go-collector.example diff --git a/docs/guides/getting-started-with-opentelemetry-app.go.example b/docs/guides/getting-started-with-opentelemetry/app.go.example similarity index 100% rename from docs/guides/getting-started-with-opentelemetry-app.go.example rename to docs/guides/getting-started-with-opentelemetry/app.go.example diff --git a/docs/guides/getting-started-with-opentelemetry-collector.webp b/docs/guides/getting-started-with-opentelemetry/collector.webp similarity index 100% rename from docs/guides/getting-started-with-opentelemetry-collector.webp rename to docs/guides/getting-started-with-opentelemetry/collector.webp diff --git a/docs/guides/getting-started-with-opentelemetry-direct.webp b/docs/guides/getting-started-with-opentelemetry/direct.webp similarity index 100% rename from docs/guides/getting-started-with-opentelemetry-direct.webp rename to docs/guides/getting-started-with-opentelemetry/direct.webp diff --git a/docs/guides/vmui-dice-roll.webp b/docs/guides/getting-started-with-opentelemetry/vmui-dice-roll.webp similarity index 100% rename from docs/guides/vmui-dice-roll.webp rename to docs/guides/getting-started-with-opentelemetry/vmui-dice-roll.webp diff --git a/docs/guides/getting-started-with-opentelemetry-vmui.webp b/docs/guides/getting-started-with-opentelemetry/vmui.webp similarity index 100% rename from docs/guides/getting-started-with-opentelemetry-vmui.webp rename to docs/guides/getting-started-with-opentelemetry/vmui.webp diff --git a/docs/guides/getting-started-with-vm-operator.md b/docs/guides/getting-started-with-vm-operator/README.md similarity index 96% rename from docs/guides/getting-started-with-vm-operator.md rename to docs/guides/getting-started-with-vm-operator/README.md index fcd0a7d65..aad280457 100644 --- a/docs/guides/getting-started-with-vm-operator.md +++ b/docs/guides/getting-started-with-vm-operator/README.md @@ -1,13 +1,3 @@ ---- -weight: 4 -title: Getting started with VM Operator -menu: - docs: - parent: "guides" - weight: 4 -aliases: -- /guides/getting-started-with-vm-operator.html ---- **The guide covers:** * The setup of a [VM Operator](https://github.com/VictoriaMetrics/helm-charts/tree/master/charts/victoria-metrics-operator) via Helm in [Kubernetes](https://kubernetes.io/) with Helm charts. @@ -213,7 +203,7 @@ Forwarding from [::1]:8429 -> 8429 To check that `VMAgent` collects metrics from the k8s cluster open in the browser `http://127.0.0.1:8429/targets`. You will see something like this: -![VMCluster](getting-started-with-vm-operator_vmcluster.webp) +![VMCluster](vmcluster.webp) `VMAgent` connects to [kubernetes service discovery](https://kubernetes.io/docs/concepts/services-networking/service/) and gets targets which needs to be scraped. This service discovery is controlled by [VictoriaMetrics Operator](https://github.com/VictoriaMetrics/operator) @@ -287,11 +277,11 @@ EOF To check that [VictoriaMetrics](https://victoriametrics.com) collecting metrics from the k8s cluster open in your browser `http://127.0.0.1:3000/dashboards` and choose the `VictoriaMetrics - cluster` dashboard. Use `admin` for login and the `password` that you previously got from kubectl. -![Dashboards 1](getting-started-with-vm-operator_vmcluster-grafana1.webp) +![Dashboards 1](vmcluster-grafana1.webp) The expected output is: -![Dashboards 2](getting-started-with-vm-operator_vmcluster-grafana2.webp) +![Dashboards 2](vmcluster-grafana2.webp) ## 6. Summary diff --git a/docs/guides/getting-started-with-vm-operator/_index.md b/docs/guides/getting-started-with-vm-operator/_index.md new file mode 100644 index 000000000..f1f9e33c5 --- /dev/null +++ b/docs/guides/getting-started-with-vm-operator/_index.md @@ -0,0 +1,11 @@ +--- +weight: 4 +title: Getting started with VM Operator +menu: + docs: + parent: "guides" + weight: 4 +aliases: +- /guides/getting-started-with-vm-operator.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/getting-started-with-vm-operator_vmcluster-grafana1.webp b/docs/guides/getting-started-with-vm-operator/vmcluster-grafana1.webp similarity index 100% rename from docs/guides/getting-started-with-vm-operator_vmcluster-grafana1.webp rename to docs/guides/getting-started-with-vm-operator/vmcluster-grafana1.webp diff --git a/docs/guides/getting-started-with-vm-operator_vmcluster-grafana2.webp b/docs/guides/getting-started-with-vm-operator/vmcluster-grafana2.webp similarity index 100% rename from docs/guides/getting-started-with-vm-operator_vmcluster-grafana2.webp rename to docs/guides/getting-started-with-vm-operator/vmcluster-grafana2.webp diff --git a/docs/guides/getting-started-with-vm-operator_vmcluster.webp b/docs/guides/getting-started-with-vm-operator/vmcluster.webp similarity index 100% rename from docs/guides/getting-started-with-vm-operator_vmcluster.webp rename to docs/guides/getting-started-with-vm-operator/vmcluster.webp diff --git a/docs/guides/guide-delete-or-replace-metrics.md b/docs/guides/guide-delete-or-replace-metrics/README.md similarity index 97% rename from docs/guides/guide-delete-or-replace-metrics.md rename to docs/guides/guide-delete-or-replace-metrics/README.md index 90bf0e4da..584df51c2 100644 --- a/docs/guides/guide-delete-or-replace-metrics.md +++ b/docs/guides/guide-delete-or-replace-metrics/README.md @@ -1,13 +1,3 @@ ---- -weight: 7 -title: How to delete or replace metrics in VictoriaMetrics -menu: - docs: - parent: "guides" - weight: 7 -aliases: -- /guides/guide-delete-or-replace-metrics.html ---- Data deletion is an operation people expect a database to have. [VictoriaMetrics](https://victoriametrics.com) supports [delete operation](https://docs.victoriametrics.com/single-server-victoriametrics/#how-to-delete-time-series) but to a limited extent. Due to implementation details, VictoriaMetrics remains an [append-only database](https://en.wikipedia.org/wiki/Append-only), which perfectly fits the case for storing time series data. But the drawback of such architecture is that it is extremely expensive to mutate the data. Hence, `delete` or `update` operations support is very limited. In this guide, we'll walk through the possible workarounds for deleting or changing already written data in VictoriaMetrics. diff --git a/docs/guides/guide-delete-or-replace-metrics/_index.md b/docs/guides/guide-delete-or-replace-metrics/_index.md new file mode 100644 index 000000000..c69b230ee --- /dev/null +++ b/docs/guides/guide-delete-or-replace-metrics/_index.md @@ -0,0 +1,11 @@ +--- +weight: 7 +title: How to delete or replace metrics in VictoriaMetrics +menu: + docs: + parent: "guides" + weight: 7 +aliases: +- /guides/guide-delete-or-replace-metrics.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/guide-vmcluster-multiple-retention-setup.md b/docs/guides/guide-vmcluster-multiple-retention-setup/README.md similarity index 92% rename from docs/guides/guide-vmcluster-multiple-retention-setup.md rename to docs/guides/guide-vmcluster-multiple-retention-setup/README.md index 74cabbdfe..3790d1cfe 100644 --- a/docs/guides/guide-vmcluster-multiple-retention-setup.md +++ b/docs/guides/guide-vmcluster-multiple-retention-setup/README.md @@ -1,13 +1,3 @@ ---- -weight: 10 -title: Multi Retention Setup within VictoriaMetrics Cluster -menu: - docs: - parent: "guides" - weight: 10 -aliases: -- /guides/guide-vmcluster-multiple-retention-setup.html ---- **Objective** Setup Victoria Metrics Cluster with support of multiple retention periods within one installation. @@ -32,7 +22,7 @@ The [-retentionPeriod](https://docs.victoriametrics.com/#retention) sets how lon The diagram below shows a proposed solution -![Setup](guide-vmcluster-multiple-retention-setup.webp) +![Setup](setup.webp) **Implementation Details** diff --git a/docs/guides/guide-vmcluster-multiple-retention-setup/_index.md b/docs/guides/guide-vmcluster-multiple-retention-setup/_index.md new file mode 100644 index 000000000..139088bf5 --- /dev/null +++ b/docs/guides/guide-vmcluster-multiple-retention-setup/_index.md @@ -0,0 +1,11 @@ +--- +weight: 10 +title: Multi Retention Setup within VictoriaMetrics Cluster +menu: + docs: + parent: "guides" + weight: 10 +aliases: +- /guides/guide-vmcluster-multiple-retention-setup.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/guide-vmcluster-multiple-retention-setup.webp b/docs/guides/guide-vmcluster-multiple-retention-setup/setup.webp similarity index 100% rename from docs/guides/guide-vmcluster-multiple-retention-setup.webp rename to docs/guides/guide-vmcluster-multiple-retention-setup/setup.webp diff --git a/docs/guides/k8s-ha-monitoring-via-vm-cluster.md b/docs/guides/k8s-ha-monitoring-via-vm-cluster/README.md similarity index 93% rename from docs/guides/k8s-ha-monitoring-via-vm-cluster.md rename to docs/guides/k8s-ha-monitoring-via-vm-cluster/README.md index e5f792a5a..efc8c4fb8 100644 --- a/docs/guides/k8s-ha-monitoring-via-vm-cluster.md +++ b/docs/guides/k8s-ha-monitoring-via-vm-cluster/README.md @@ -1,13 +1,3 @@ ---- -weight: 9 -title: HA monitoring setup in Kubernetes via VictoriaMetrics Cluster -menu: - docs: - parent: "guides" - weight: 9 -aliases: -- /guides/k8s-ha-monitoring-via-vm-cluster.html ---- **The guide covers:** * High availability monitoring via [VictoriaMetrics cluster](https://docs.victoriametrics.com/cluster-victoriametrics/) in [Kubernetes](https://kubernetes.io/) with Helm charts @@ -25,7 +15,7 @@ aliases: ## 1. VictoriaMetrics Helm repository -Please see the relevant [VictoriaMetrics Helm repository](https://docs.victoriametrics.com/guides/k8s-monitoring-via-vm-cluster.html#1-victoriametrics-helm-repository) section in previous guides. +Please see the relevant [VictoriaMetrics Helm repository](https://docs.victoriametrics.com/guides/k8s-monitoring-via-vm-cluster#1-victoriametrics-helm-repository) section in previous guides. ## 2. Install VictoriaMetrics Cluster from the Helm chart @@ -148,7 +138,7 @@ vmcluster-victoria-metrics-cluster-vmstorage-2 1/1 Running To scrape metrics from Kubernetes with a VictoriaMetrics Cluster we will need to install [vmagent](https://docs.victoriametrics.com/vmagent/) with some additional configurations. To do so, please run the following command: ```yaml -helm install vmagent vm/victoria-metrics-agent -f https://docs.victoriametrics.com/guides/guide-vmcluster-vmagent-values.yaml +helm install vmagent vm/victoria-metrics-agent -f https://docs.victoriametrics.com/guides/examples/guide-vmcluster-vmagent-values.yaml ``` Here is full file content `guide-vmcluster-vmagent-values.yaml` @@ -356,18 +346,18 @@ The expected output is: The expected result of the query `count(up{kubernetes_pod_name=~".*vmselect.*"})` should be equal to `3` - the number of replicas we set via `replicaCount` parameter. -To test via Grafana, we need to install it first. [Install and connect Grafana to VictoriaMetrics](https://docs.victoriametrics.com/guides/k8s-monitoring-via-vm-cluster.html#4-install-and-connect-grafana-to-victoriametrics-with-helm), login into Grafana and open the metrics explore page at `http://127.0.0.1:3000/explore`. +To test via Grafana, we need to install it first. [Install and connect Grafana to VictoriaMetrics](https://docs.victoriametrics.com/guides/k8s-monitoring-via-vm-cluster#4-install-and-connect-grafana-to-victoriametrics-with-helm), login into Grafana and open the metrics explore page at `http://127.0.0.1:3000/explore`. -![Explore](k8s-ha-monitoring-via-vm-cluster_explore.webp) +![Explore](explore.webp) Choose `victoriametrics` from the list of datasources and enter `count(up{kubernetes_pod_name=~".*vmselect.*"})` to the **Metric browser** field as shown on the screenshot, then press **Run query** button: -![Explore count up](k8s-ha-monitoring-via-vm-cluster_explore-count-up.webp) +![Explore count up](explore-count-up.webp) The expected output is: -![Explore count up graph](k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph.webp) +![Explore count up graph](explore-count-up-graph.webp) ## 5. High Availability @@ -395,13 +385,13 @@ Return to Grafana Explore and press the **Run query** button again. The expected output is: -![Explore count up graph](k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph.webp) +![Explore count up graph](explore-count-up-graph.webp) As you can see, after we scaled down the `vmstorage` replicas number from three to two pods, metrics are still available and correct. The response is not partial as it was before scaling. Also we see that query `count(up{kubernetes_pod_name=~".*vmselect.*"})` returns the same value as before. To confirm that the number of `vmstorage` pods is equivalent to two, execute the following request in Grafana Explore: -![Explore count up graph 2](k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph2.webp) +![Explore count up graph 2](explore-count-up-graph2.webp) ## 6. Final thoughts diff --git a/docs/guides/k8s-ha-monitoring-via-vm-cluster/_index.md b/docs/guides/k8s-ha-monitoring-via-vm-cluster/_index.md new file mode 100644 index 000000000..060baf935 --- /dev/null +++ b/docs/guides/k8s-ha-monitoring-via-vm-cluster/_index.md @@ -0,0 +1,11 @@ +--- +weight: 9 +title: HA monitoring setup in Kubernetes via VictoriaMetrics Cluster +menu: + docs: + parent: "guides" + weight: 9 +aliases: +- /guides/k8s-ha-monitoring-via-vm-cluster.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph.webp b/docs/guides/k8s-ha-monitoring-via-vm-cluster/explore-count-up-graph.webp similarity index 100% rename from docs/guides/k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph.webp rename to docs/guides/k8s-ha-monitoring-via-vm-cluster/explore-count-up-graph.webp diff --git a/docs/guides/k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph2.webp b/docs/guides/k8s-ha-monitoring-via-vm-cluster/explore-count-up-graph2.webp similarity index 100% rename from docs/guides/k8s-ha-monitoring-via-vm-cluster_explore-count-up-graph2.webp rename to docs/guides/k8s-ha-monitoring-via-vm-cluster/explore-count-up-graph2.webp diff --git a/docs/guides/k8s-ha-monitoring-via-vm-cluster_explore-count-up.webp b/docs/guides/k8s-ha-monitoring-via-vm-cluster/explore-count-up.webp similarity index 100% rename from docs/guides/k8s-ha-monitoring-via-vm-cluster_explore-count-up.webp rename to docs/guides/k8s-ha-monitoring-via-vm-cluster/explore-count-up.webp diff --git a/docs/guides/k8s-ha-monitoring-via-vm-cluster_explore.webp b/docs/guides/k8s-ha-monitoring-via-vm-cluster/explore.webp similarity index 100% rename from docs/guides/k8s-ha-monitoring-via-vm-cluster_explore.webp rename to docs/guides/k8s-ha-monitoring-via-vm-cluster/explore.webp diff --git a/docs/guides/k8s-monitoring-via-vm-cluster.md b/docs/guides/k8s-monitoring-via-vm-cluster/README.md similarity index 97% rename from docs/guides/k8s-monitoring-via-vm-cluster.md rename to docs/guides/k8s-monitoring-via-vm-cluster/README.md index e05fd3e44..083d0010d 100644 --- a/docs/guides/k8s-monitoring-via-vm-cluster.md +++ b/docs/guides/k8s-monitoring-via-vm-cluster/README.md @@ -1,13 +1,3 @@ ---- -weight: 3 -title: Kubernetes monitoring with VictoriaMetrics Cluster -menu: - docs: - parent: "guides" - weight: 3 -aliases: -- /guides/k8s-monitoring-via-vm-cluster.html ---- **This guide covers:** * The setup of a [VictoriaMetrics cluster](https://docs.victoriametrics.com/cluster-victoriametrics/) in [Kubernetes](https://kubernetes.io/) via Helm charts @@ -23,7 +13,7 @@ We will use: * [Helm 3 ](https://helm.sh/docs/intro/install) * [kubectl 1.21](https://kubernetes.io/docs/tasks/tools/install-kubectl) -![VMCluster on K8s](k8s-monitoring-via-vm-cluster_scheme.webp) +![VMCluster on K8s](scheme.webp) ## 1. VictoriaMetrics Helm repository @@ -170,7 +160,7 @@ To scrape metrics from Kubernetes with a [VictoriaMetrics cluster](https://docs. ```shell -helm install vmagent vm/victoria-metrics-agent -f https://docs.victoriametrics.com/guides/guide-vmcluster-vmagent-values.yaml +helm install vmagent vm/victoria-metrics-agent -f https://docs.victoriametrics.com/guides/examples/guide-vmcluster-vmagent-values.yaml ``` Here is full file content `guide-vmcluster-vmagent-values.yaml` @@ -503,19 +493,19 @@ kubectl --namespace default port-forward $POD_NAME 3000 To check that [VictoriaMetrics](https://victoriametrics.com) collects metrics from k8s cluster open in browser [http://127.0.0.1:3000/dashboards](http://127.0.0.1:3000/dashboards) and choose the `Kubernetes Cluster Monitoring (via Prometheus)` dashboard. Use `admin` for login and `password` that you previously got from kubectl. -![Dashboards](k8s-monitoring-via-vm-cluster_dashes-agent.webp) +![Dashboards](dashes-agent.webp) You will see something like this: -![VMCluster metrics](k8s-monitoring-via-vm-cluster_dashboard.webp) +![VMCluster metrics](dashboard.webp) The VictoriaMetrics dashboard is also available to use: -![VMCluster dashboard](k8s-monitoring-via-vm-cluster_grafana-dash.webp) +![VMCluster dashboard](grafana-dash.webp) vmagent has its own dashboard: -![VMAgent dashboard](k8s-monitoring-via-vm-cluster_vmagent-grafana-dash.webp) +![VMAgent dashboard](vmagent-grafana-dash.webp) ## 6. Final thoughts diff --git a/docs/guides/k8s-monitoring-via-vm-cluster/_index.md b/docs/guides/k8s-monitoring-via-vm-cluster/_index.md new file mode 100644 index 000000000..35f981254 --- /dev/null +++ b/docs/guides/k8s-monitoring-via-vm-cluster/_index.md @@ -0,0 +1,11 @@ +--- +weight: 3 +title: Kubernetes monitoring with VictoriaMetrics Cluster +menu: + docs: + parent: "guides" + weight: 3 +aliases: +- /guides/k8s-monitoring-via-vm-cluster.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/k8s-monitoring-via-vm-cluster_dashboard.webp b/docs/guides/k8s-monitoring-via-vm-cluster/dashboard.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-cluster_dashboard.webp rename to docs/guides/k8s-monitoring-via-vm-cluster/dashboard.webp diff --git a/docs/guides/k8s-monitoring-via-vm-cluster_dashes-agent.webp b/docs/guides/k8s-monitoring-via-vm-cluster/dashes-agent.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-cluster_dashes-agent.webp rename to docs/guides/k8s-monitoring-via-vm-cluster/dashes-agent.webp diff --git a/docs/guides/k8s-monitoring-via-vm-cluster_vmagent-grafana-dash.webp b/docs/guides/k8s-monitoring-via-vm-cluster/grafana-dash.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-cluster_vmagent-grafana-dash.webp rename to docs/guides/k8s-monitoring-via-vm-cluster/grafana-dash.webp diff --git a/docs/guides/k8s-monitoring-via-vm-cluster_scheme.webp b/docs/guides/k8s-monitoring-via-vm-cluster/scheme.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-cluster_scheme.webp rename to docs/guides/k8s-monitoring-via-vm-cluster/scheme.webp diff --git a/docs/guides/k8s-monitoring-via-vm-cluster_grafana-dash.webp b/docs/guides/k8s-monitoring-via-vm-cluster_grafana-dash.webp deleted file mode 100644 index f1f75d42a725509d8e210b51409942c45607fade..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 45954 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
3`_BUG=dy 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 U$6iQn0;qrh00000000000EOmECIA2c diff --git a/docs/guides/k8s-monitoring-via-vm-single.md b/docs/guides/k8s-monitoring-via-vm-single/README.md similarity index 93% rename from docs/guides/k8s-monitoring-via-vm-single.md rename to docs/guides/k8s-monitoring-via-vm-single/README.md index 0cdfa1d70..91343e6f7 100644 --- a/docs/guides/k8s-monitoring-via-vm-single.md +++ b/docs/guides/k8s-monitoring-via-vm-single/README.md @@ -1,13 +1,3 @@ ---- -weight: 2 -title: Kubernetes monitoring via VictoriaMetrics Single -menu: - docs: - parent: "guides" - weight: 2 -aliases: -- /guides/k8s-monitoring-via-vm-single.html ---- **This guide covers:** * The setup of a [VictoriaMetrics Single](https://docs.victoriametrics.com/single-server-victoriametrics/) in [Kubernetes](https://kubernetes.io/) via Helm charts @@ -23,7 +13,7 @@ We will use: * [Helm 3 ](https://helm.sh/docs/intro/install) * [kubectl 1.21](https://kubernetes.io/docs/tasks/tools/install-kubectl) -![VictoriaMetrics Single on Kubernetes cluster](k8s-monitoring-via-vm-single_k8s-scheme.webp) +![VictoriaMetrics Single on Kubernetes cluster](k8s-scheme.webp) ## 1. VictoriaMetrics Helm repository @@ -68,7 +58,7 @@ vm/victoria-metrics-single 0.7.5 1.62.0 Victoria Metrics Single Run this command in your terminal: ```text -helm install vmsingle vm/victoria-metrics-single -f https://docs.victoriametrics.com/guides/guide-vmsingle-values.yaml +helm install vmsingle vm/victoria-metrics-single -f https://docs.victoriametrics.com/guides/examples/guide-vmsingle-values.yaml ``` Here is full file content `guide-vmsingle-values.yaml` @@ -161,7 +151,7 @@ server: * By running `helm install vmsingle vm/victoria-metrics-single` we install [VictoriaMetrics Single](https://docs.victoriametrics.com/single-server-victoriametrics/) to default [namespace](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) inside your cluster * By adding `scrape: enable: true` we add and enable autodiscovery scraping from kubernetes cluster to [VictoriaMetrics Single](https://docs.victoriametrics.com/single-server-victoriametrics/) -* On line 166 from [https://docs.victoriametrics.com/guides/guide-vmsingle-values.yaml](https://docs.victoriametrics.com/guides/guide-vmsingle-values.yaml) we added `metric_relabel_configs` section that will help us to show Kubernetes metrics on Grafana dashboard. +* On line 166 from [https://docs.victoriametrics.com/guides/examples/guide-vmsingle-values.yaml](https://docs.victoriametrics.com/guides/examples/guide-vmsingle-values.yaml) we added `metric_relabel_configs` section that will help us to show Kubernetes metrics on Grafana dashboard. As a result of the command you will see the following output: @@ -305,15 +295,15 @@ Now Grafana should be accessible on the `http://127.0.0.1:3000` address. To check that VictoriaMetrics has collects metrics from the k8s cluster open in browser `http://127.0.0.1:3000/dashboards` and choose `Kubernetes Cluster Monitoring (via Prometheus)` dashboard. Use `admin` for login and `password` that you previously obtained from kubectl. -![single dashboards](k8s-monitoring-via-vm-single_grafana-dashboards.webp) +![single dashboards](grafana-dashboards.webp) You will see something like this: -![k8s dashboards](k8s-monitoring-via-vm-single_grafana-k8s-dashboard.webp) +![k8s dashboards](grafana-k8s-dashboard.webp) VictoriaMetrics dashboard also available to use: -![single](k8s-monitoring-via-vm-single_grafana.webp) +![single](grafana.webp) ## 5. Final thoughts diff --git a/docs/guides/k8s-monitoring-via-vm-single/_index.md b/docs/guides/k8s-monitoring-via-vm-single/_index.md new file mode 100644 index 000000000..be113bf01 --- /dev/null +++ b/docs/guides/k8s-monitoring-via-vm-single/_index.md @@ -0,0 +1,11 @@ +--- +weight: 2 +title: Kubernetes monitoring via VictoriaMetrics Single +menu: + docs: + parent: "guides" + weight: 2 +aliases: +- /guides/k8s-monitoring-via-vm-single.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/k8s-monitoring-via-vm-single_grafana-dashboards.webp b/docs/guides/k8s-monitoring-via-vm-single/grafana-dashboards.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-single_grafana-dashboards.webp rename to docs/guides/k8s-monitoring-via-vm-single/grafana-dashboards.webp diff --git a/docs/guides/k8s-monitoring-via-vm-single_grafana-k8s-dashboard.webp b/docs/guides/k8s-monitoring-via-vm-single/grafana-k8s-dashboard.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-single_grafana-k8s-dashboard.webp rename to docs/guides/k8s-monitoring-via-vm-single/grafana-k8s-dashboard.webp diff --git a/docs/guides/k8s-monitoring-via-vm-single_grafana.webp b/docs/guides/k8s-monitoring-via-vm-single/grafana.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-single_grafana.webp rename to docs/guides/k8s-monitoring-via-vm-single/grafana.webp diff --git a/docs/guides/k8s-monitoring-via-vm-single_k8s-scheme.webp b/docs/guides/k8s-monitoring-via-vm-single/k8s-scheme.webp similarity index 100% rename from docs/guides/k8s-monitoring-via-vm-single_k8s-scheme.webp rename to docs/guides/k8s-monitoring-via-vm-single/k8s-scheme.webp diff --git a/docs/guides/migrate-from-influx.md b/docs/guides/migrate-from-influx/README.md similarity index 97% rename from docs/guides/migrate-from-influx.md rename to docs/guides/migrate-from-influx/README.md index 998051edd..27626685b 100644 --- a/docs/guides/migrate-from-influx.md +++ b/docs/guides/migrate-from-influx/README.md @@ -1,13 +1,3 @@ ---- -title: Migrate from InfluxDB to VictoriaMetrics -weight: 8 -menu: - docs: - parent: "guides" - weight: 8 -aliases: -- /guides/migrate-from-influx.html ---- InfluxDB is a well-known time series database built for [IoT](https://en.wikipedia.org/wiki/Internet_of_things) monitoring, Application Performance Monitoring (APM) and analytics. It has its query language, unique data model, and rich tooling for collecting and processing metrics. @@ -140,7 +130,7 @@ for serving read queries. This API is used in various integrations such as by [VMUI](https://docs.victoriametrics.com/single-server-victoriametrics/#vmui) - a graphical User Interface for querying and visualizing metrics: -![Migrate from Influx](migrate-from-influx_vmui.webp) +![Migrate from Influx](vmui.webp) See more about [how to query data in VictoriaMetrics](https://docs.victoriametrics.com/keyconcepts/#query-data). @@ -169,7 +159,7 @@ The data sample consists data points for a measurement `foo` and a field `bar` with additional tag `instance=localhost`. If we would like plot this data as a time series in Grafana it might have the following look: -![Data sample in Influx](migrate-from-influx_data-sample-in-influx.webp) +![Data sample in Influx](data-sample-in-influx.webp) The query used for this panel is written in [InfluxQL](https://docs.influxdata.com/influxdb/v1.8/query_language/): @@ -204,7 +194,7 @@ InfluxQL query might be translated to MetricsQL let's break it into components f In result, executing the `foo_bar{instance="localhost"}` MetricsQL expression with `step=1m` for the same set of data in Grafana will have the following form: -![Data sample in VM](migrate-from-influx_data-sample-in-vm.webp) +![Data sample in VM](data-sample-in-vm.webp) Visualizations from both databases are a bit different - VictoriaMetrics shows some extra points filling the gaps in the graph. This behavior is described in more diff --git a/docs/guides/migrate-from-influx/_index.md b/docs/guides/migrate-from-influx/_index.md new file mode 100644 index 000000000..49c737c56 --- /dev/null +++ b/docs/guides/migrate-from-influx/_index.md @@ -0,0 +1,11 @@ +--- +title: Migrate from InfluxDB to VictoriaMetrics +weight: 8 +menu: + docs: + parent: "guides" + weight: 8 +aliases: +- /guides/migrate-from-influx.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/migrate-from-influx_data-sample-in-vm.webp b/docs/guides/migrate-from-influx/data-sample-in-vm.webp similarity index 100% rename from docs/guides/migrate-from-influx_data-sample-in-vm.webp rename to docs/guides/migrate-from-influx/data-sample-in-vm.webp diff --git a/docs/guides/migrate-from-influx_data-sample-in-influx.webp b/docs/guides/migrate-from-influx/sample-in-influx.webp similarity index 100% rename from docs/guides/migrate-from-influx_data-sample-in-influx.webp rename to docs/guides/migrate-from-influx/sample-in-influx.webp diff --git a/docs/guides/migrate-from-influx_vmui.webp b/docs/guides/migrate-from-influx/vmui.webp similarity index 100% rename from docs/guides/migrate-from-influx_vmui.webp rename to docs/guides/migrate-from-influx/vmui.webp diff --git a/docs/guides/multi-regional-setup-dedicated-regions.md b/docs/guides/multi-regional-setup-dedicated-regions/README.md similarity index 94% rename from docs/guides/multi-regional-setup-dedicated-regions.md rename to docs/guides/multi-regional-setup-dedicated-regions/README.md index f3919c48d..6c3e5391e 100644 --- a/docs/guides/multi-regional-setup-dedicated-regions.md +++ b/docs/guides/multi-regional-setup-dedicated-regions/README.md @@ -1,20 +1,10 @@ ---- -weight: 11 -title: 'VictoriaMetrics Multi-Regional Setup: Dedicated Monitoring' -menu: - docs: - parent: guides - weight: 11 -aliases: -- /guides/multi-regional-setup-dedicated-regions.html ---- ### Scenario Let's cover the case. You have multiple regions with workloads and want to collect metrics. The monitoring setup is in the dedicated regions as shown below: -![Multi-regional setup with VictoriaMetrics: Dedicated regions for monitoring](multi-regional-setup-dedicated-regions.webp) +![Multi-regional setup with VictoriaMetrics: Dedicated regions for monitoring](setup.webp) Every workload region (Earth, Mars, Venus) has a vmagent that sends data to multiple regions with a monitoring setup. The monitoring setup (Ground Control 1,2) contains VictoriaMetrics Time Series Database(TSDB) cluster or single. diff --git a/docs/guides/multi-regional-setup-dedicated-regions/_index.md b/docs/guides/multi-regional-setup-dedicated-regions/_index.md new file mode 100644 index 000000000..4121f836a --- /dev/null +++ b/docs/guides/multi-regional-setup-dedicated-regions/_index.md @@ -0,0 +1,11 @@ +--- +weight: 11 +title: 'VictoriaMetrics Multi-Regional Setup: Dedicated Monitoring' +menu: + docs: + parent: guides + weight: 11 +aliases: +- /guides/multi-regional-setup-dedicated-regions.html +--- +{{% content "README.md" %}} diff --git a/docs/guides/multi-regional-setup-dedicated-regions.webp b/docs/guides/multi-regional-setup-dedicated-regions/setup.webp similarity index 100% rename from docs/guides/multi-regional-setup-dedicated-regions.webp rename to docs/guides/multi-regional-setup-dedicated-regions/setup.webp diff --git a/docs/guides/understand-your-setup-size.md b/docs/guides/understand-your-setup-size/README.md similarity index 98% rename from docs/guides/understand-your-setup-size.md rename to docs/guides/understand-your-setup-size/README.md index 3986e5c58..39e343212 100644 --- a/docs/guides/understand-your-setup-size.md +++ b/docs/guides/understand-your-setup-size/README.md @@ -1,13 +1,3 @@ ---- -weight: 9 -title: Understand Your Setup Size -menu: - docs: - parent: "guides" - weight: 9 -aliases: -- /guides/understand-your-setup-size.html ---- The docs provide a simple and high-level overview of Ingestion Rate, Active Time Series, and Query per Second. These terms are a part of capacity planning ([Single-Node](https://docs.victoriametrics.com/single-server-victoriametrics/#capacity-planning), [Cluster](https://docs.victoriametrics.com/cluster-victoriametrics/#capacity-planning)) and [VictoriaMetrics Cloud](https://docs.victoriametrics.com/victoriametrics-cloud/) pricing. ## Terminology diff --git a/docs/guides/understand-your-setup-size/_index.md b/docs/guides/understand-your-setup-size/_index.md new file mode 100644 index 000000000..f7004f505 --- /dev/null +++ b/docs/guides/understand-your-setup-size/_index.md @@ -0,0 +1,11 @@ +--- +weight: 9 +title: Understand Your Setup Size +menu: + docs: + parent: "guides" + weight: 9 +aliases: +- /guides/understand-your-setup-size.html +--- +{{% content "README.md" %}} diff --git a/docs/keyConcepts.md b/docs/keyConcepts.md index 3554b5bea..2ccc83018 100644 --- a/docs/keyConcepts.md +++ b/docs/keyConcepts.md @@ -1,5 +1,4 @@ --- -sort: 34 weight: 34 title: Key concepts menu: diff --git a/docs/relabeling.md b/docs/relabeling.md index 0c95ab192..2c631f63e 100644 --- a/docs/relabeling.md +++ b/docs/relabeling.md @@ -1,5 +1,4 @@ --- -sort: 37 weight: 37 title: Relabeling cookbook menu: diff --git a/docs/scrape_config_examples.md b/docs/scrape_config_examples.md index d11037985..d70dce3c5 100644 --- a/docs/scrape_config_examples.md +++ b/docs/scrape_config_examples.md @@ -1,5 +1,4 @@ --- -sort: 200 weight: 200 title: Scrape config examples menu: diff --git a/docs/sd_configs.md b/docs/sd_configs.md index 5772fb985..7f93526f7 100644 --- a/docs/sd_configs.md +++ b/docs/sd_configs.md @@ -1,5 +1,4 @@ --- -sort: 36 weight: 36 title: Prometheus service discovery menu: diff --git a/docs/stream-aggregation.md b/docs/stream-aggregation.md index 4530358f5..5107fd4fd 100644 --- a/docs/stream-aggregation.md +++ b/docs/stream-aggregation.md @@ -1,5 +1,4 @@ --- -sort: 98 weight: 98 title: Streaming aggregation menu: diff --git a/docs/url-examples.md b/docs/url-examples.md index aed654e6f..ad09bb7c4 100644 --- a/docs/url-examples.md +++ b/docs/url-examples.md @@ -1,5 +1,4 @@ --- -sort: 33 weight: 33 title: API examples menu: diff --git a/docs/victoriametrics-cloud/_index.md b/docs/victoriametrics-cloud/_index.md index 247ae64bf..6cb7e3412 100644 --- a/docs/victoriametrics-cloud/_index.md +++ b/docs/victoriametrics-cloud/_index.md @@ -1,5 +1,4 @@ --- -sort: 28 title: VictoriaMetrics Cloud weight: 01 disableToc: true diff --git a/docs/victoriametrics-cloud/alerting-vmalert-victoria-metrics-cloud.md b/docs/victoriametrics-cloud/alerting-vmalert-victoria-metrics-cloud.md index 842d7fb47..cea29b6cf 100644 --- a/docs/victoriametrics-cloud/alerting-vmalert-victoria-metrics-cloud.md +++ b/docs/victoriametrics-cloud/alerting-vmalert-victoria-metrics-cloud.md @@ -1,5 +1,4 @@ --- -sort: 5 weight: 5 title: Alerting with vmalert and VictoriaMetrics Cloud menu: diff --git a/docs/victoriametrics-cloud/alertmanager-setup-for-deployment.md b/docs/victoriametrics-cloud/alertmanager-setup-for-deployment.md index 818348932..7dfb0e1d9 100644 --- a/docs/victoriametrics-cloud/alertmanager-setup-for-deployment.md +++ b/docs/victoriametrics-cloud/alertmanager-setup-for-deployment.md @@ -1,5 +1,4 @@ --- -sort: 4 weight: 4 title: Setup Alertmanager & VMAlert for VictoriaMetrics Cloud menu: diff --git a/docs/victoriametrics-cloud/how-to-monitor-k8s.md b/docs/victoriametrics-cloud/how-to-monitor-k8s.md index d76de2aaf..18a9c704d 100644 --- a/docs/victoriametrics-cloud/how-to-monitor-k8s.md +++ b/docs/victoriametrics-cloud/how-to-monitor-k8s.md @@ -1,5 +1,4 @@ --- -sort: 3 weight: 3 title: Kubernetes Monitoring with VictoriaMetrics Cloud menu: diff --git a/docs/victoriametrics-cloud/overview.md b/docs/victoriametrics-cloud/overview.md index cc0c806ea..f0c849422 100644 --- a/docs/victoriametrics-cloud/overview.md +++ b/docs/victoriametrics-cloud/overview.md @@ -1,5 +1,4 @@ --- -sort: 1 weight: 1 title: Overview of VictoriaMetrics Cloud menu: diff --git a/docs/victoriametrics-cloud/quickstart.md b/docs/victoriametrics-cloud/quickstart.md index cf6abda70..6cc0a3be6 100644 --- a/docs/victoriametrics-cloud/quickstart.md +++ b/docs/victoriametrics-cloud/quickstart.md @@ -1,5 +1,4 @@ --- -sort: 2 weight: 2 title: Quick Start menu: diff --git a/docs/victoriametrics-cloud/setup-notifications.md b/docs/victoriametrics-cloud/setup-notifications.md index 41d8875ab..a57db074e 100644 --- a/docs/victoriametrics-cloud/setup-notifications.md +++ b/docs/victoriametrics-cloud/setup-notifications.md @@ -1,5 +1,4 @@ --- -sort: 7 weight: 7 title: Notifications in VictoriaMetrics Cloud menu: diff --git a/docs/victoriametrics-cloud/user-managment.md b/docs/victoriametrics-cloud/user-managment.md index 13c0d2669..25811ad5c 100644 --- a/docs/victoriametrics-cloud/user-managment.md +++ b/docs/victoriametrics-cloud/user-managment.md @@ -1,5 +1,4 @@ --- -sort: 6 weight: 6 title: User Management in VictoriaMetrics Cloud menu: diff --git a/docs/vmagent.md b/docs/vmagent.md index 01f308925..30b1b452c 100644 --- a/docs/vmagent.md +++ b/docs/vmagent.md @@ -1,5 +1,4 @@ --- -sort: 3 weight: 3 menu: docs: diff --git a/docs/vmalert-tool.md b/docs/vmalert-tool.md index ff8f6821f..92235cc1d 100644 --- a/docs/vmalert-tool.md +++ b/docs/vmalert-tool.md @@ -1,5 +1,4 @@ --- -sort: 12 weight: 12 menu: docs: diff --git a/docs/vmalert.md b/docs/vmalert.md index 8c05f53a5..11ded4093 100644 --- a/docs/vmalert.md +++ b/docs/vmalert.md @@ -1,5 +1,4 @@ --- -sort: 4 weight: 4 menu: docs: diff --git a/docs/vmauth.md b/docs/vmauth.md index 9247e4881..5a798c229 100644 --- a/docs/vmauth.md +++ b/docs/vmauth.md @@ -1,5 +1,4 @@ --- -sort: 5 weight: 5 menu: docs: diff --git a/docs/vmbackup.md b/docs/vmbackup.md index 99c588675..c4344bf06 100644 --- a/docs/vmbackup.md +++ b/docs/vmbackup.md @@ -1,5 +1,4 @@ --- -sort: 6 weight: 6 menu: docs: diff --git a/docs/vmbackupmanager.md b/docs/vmbackupmanager.md index ac969d965..f2f0a69d6 100644 --- a/docs/vmbackupmanager.md +++ b/docs/vmbackupmanager.md @@ -1,5 +1,4 @@ --- -sort: 10 weight: 10 menu: docs: diff --git a/docs/vmctl.md b/docs/vmctl.md index 11b652828..ff0955721 100644 --- a/docs/vmctl.md +++ b/docs/vmctl.md @@ -1,5 +1,4 @@ --- -sort: 8 weight: 8 menu: docs: diff --git a/docs/vmgateway.md b/docs/vmgateway.md index 04656656b..064c26221 100644 --- a/docs/vmgateway.md +++ b/docs/vmgateway.md @@ -1,5 +1,4 @@ --- -sort: 9 weight: 9 menu: docs: diff --git a/docs/vmrestore.md b/docs/vmrestore.md index 8ffcc114f..afb57d05a 100644 --- a/docs/vmrestore.md +++ b/docs/vmrestore.md @@ -1,5 +1,4 @@ --- -sort: 7 weight: 7 menu: docs: