Skip to content

This a set of manifests to create a monitoring system like the prometheus-operator, but using Victoriametrics, Rancher PushProx, and kube-mixins for graphs/rules.

Notifications You must be signed in to change notification settings

ThomasADavis/k3s-vm-operator

Repository files navigation

DISCLAMER

This is provided as-is.

No guarantee it work for you.

No support will be provided.

This repository does not endorse any product contained in it. You can replace Victoriametrics at any time with Prometheus.

This is deployed by using the K3S addon mechanism. You drop manifests in to the /var/lib/rancher/k3s/server/manifest directorys, and K3S will apply/deploy for you.

This is simply a collection of yaml manifests/configuration files, to pull together components from different locations.

  • Rancher - pushproxy for etcd, and apiserver, kubelet, scheduler, controller, proxy. etcd proxy will only deploy to control-plane nodes.
  • Prometheus - node-export, servicemonitor-crd
  • Victoriametrics - vmoperator, vmagent, vmalert, vmcluster. can also manage alertmanager for you.
  • kubernetes-mixin - dashboards, alert and recording rules.
  • kube-state-metrics - helm chart, need to update to latest.

requirements

  • k3s v1.21+k3s1, running Traefik v2.4.8

The k3s cluster is assumed to be running with 3 masters, and embedded etcd.

You do not need a working helm binary, this install uses the builtin k3s helm mechanisms.

Run this install on the master node, if you have not built a true HA'd install.

The vm-cluster is deployed using the 3 master nodes. It is not deployed with any replication.

installation

Currently, with this repo, it's copy files, and wait for things to happen. It's up to you to figure how to deploy it, in a manner that you support.

This is designed to use the k3s installation mechanisim - you drop manifests into /var/lib/rancher/k3s/server/manifests, and k3s will deploy it for you.

suggestion - start with what is in the manifests directory, then the home directory.

You will need to edit the ingress hostnames to match your cluster.

known problems

  • install the servicemonitor CRD from prometheus operator after namespace creation, but before anything else.

  • deployment by hand. This is normally deployed internally by an ansible role, which is not posted here.

  • kube-state-metrics helm chart moved.

  • does not update the kubernetes-mixin. the alert and recording rule sets was generated by hand editing.

  • missing etcd dashboard

  • missing node-exporter dashboards.

  • missing grafana deployment.

About

This a set of manifests to create a monitoring system like the prometheus-operator, but using Victoriametrics, Rancher PushProx, and kube-mixins for graphs/rules.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published