When it’s offered
Where a chart would be, No Prometheus found means Lumovi looked and found no source. Under it, Lumovi says “Or let Lumovi install a small one: you review everything it makes first.”, with the button Install a metrics stack…. There’s no button when:- The cluster is read-only. It says “Lumovi can install a small one, once the cluster isn’t read-only.”
- You’re not one of Lumovi’s admins, on a server. See Who may install it.
- A policy turns it off. Then it isn’t mentioned at all. See Turning it off.
Installing it
1
Open the dialog
Choose Install a metrics stack…. The dialog says what will run, how much history it keeps, how to remove it, and which chart and images it uses. The values it’s installed with shows the chart’s values. They can’t be changed here.If the cluster doesn’t let you create something the stack needs, the dialog names what’s missing, and Review is disabled.
2
Review
Review asks the API server to check the install without making anything (
helm install --dry-run=server). Lumovi then shows every object it would make, as manifest: the namespace first, then the chart’s 11 objects. Back returns to the summary.3
Install
Install is offered only after the review. Lumovi makes the namespace, then installs the release.The cluster pulls the two images and starts Prometheus. Meanwhile, the charts say “The metrics stack is starting…”. They fill in a minute or two after Prometheus is up.
What it installs
Where the chart and images come from
The chart is built into Lumovi, so Lumovi downloads nothing to install it. It’s the archive the chart’s repository publishes, unchanged, with this SHA-256:What it can read
The stack has two cluster roles, both read-only:
Neither can read Secrets, ConfigMaps or Services, and neither can change anything.
Prometheus collects from two places, and keeps only these series:
- Each node’s kubelet (cAdvisor), for the containers of pods only, not the node as a whole or its system services:
container_cpu_usage_seconds_total,container_cpu_cfs_periods_total,container_cpu_cfs_throttled_periods_total,container_memory_working_set_bytes,container_network_receive_bytes_totalandcontainer_network_transmit_bytes_total. - kube-state-metrics:
kube_pod_info,kube_pod_container_status_restarts_totalandkube_pod_container_status_last_terminated_reason.
Who can read what it collects
Lumovi asks Prometheus through the API server, with your own credentials. To see charts, an account needsget on services/proxy in lumovi-metrics, and list on services across the cluster to find it. See Permissions.
Two things are worth knowing before you install it:
- Anyone with that permission can query every namespace’s usage. Prometheus doesn’t know about namespaces’ RBAC. The series carry the names of pods, containers, images and nodes, and pods’ IP addresses.
- Workloads inside the cluster can query it too. Prometheus has no sign-in, and the stack has no NetworkPolicy, so a pod in any namespace can reach its service. Nothing is exposed outside the cluster. The install dialog says so too. If that matters in your cluster, add a NetworkPolicy to
lumovi-metrics, or run a Prometheus of your own.
History and storage
- 7 days of history, in at most 3 GB. When it’s full, the oldest goes first.
- It’s kept in an
emptyDirlimited to 4 GiB, on the disk of the node Prometheus runs on. There’s no volume claim. - History starts over when the pod is replaced or moves to another node: after a node drain, an eviction, or the pod running out of memory.
- Samples are taken every 30 seconds.
Who may install it
Installing and removing run as you, so the cluster’s RBAC decides. Your account must be allowed to create (to remove: delete):- namespaces, cluster roles and cluster role bindings;
- Deployments, Services, service accounts, ConfigMaps and Secrets in
lumovi-metrics.
- Desktop app
- In your cluster
Anyone whose account the cluster allows, unless your organization’s policy turns it off.
helm.install and each removal as helm.uninstall, with who did it, the chart, its version, repository and SHA-256, and whether it worked or was refused. Reviews aren’t recorded, since they make nothing.
Removing it
Open Metrics source from the chip on any chart, or from the command palette. Under Lumovi’s metrics stack, choose Remove…, typelumovi-metrics to confirm, and choose Remove.
Lumovi uninstalls the release, deletes the namespace, and waits until it’s gone. Nothing of it stays in the cluster: not the cluster roles, and not the history. If Helm’s record of the release is gone, Lumovi deletes the release’s two cluster roles and their bindings itself. The charts go back to having no history.
Lumovi removes only what it installed. It tells by the namespace’s label:
- A namespace named
lumovi-metricswithout the label isn’t Lumovi’s. Lumovi installs nothing there, and doesn’t offer to remove it. Delete or rename it to install the stack. - Remove… isn’t offered for a Prometheus you installed yourself.
Turning it off
- Desktop app
- In your cluster
In your organization’s policy:Lumovi then doesn’t offer the stack, and refuses to install or remove one.
policy.json
helm and kubectl as above.
Using your own Prometheus instead
Lumovi’s stack is the small option. Your own Prometheus or VictoriaMetrics is the better one when:- the cluster is large, or you want more than a week of history;
- history should survive a pod restart, on a persistent volume;
- you want alerts, dashboards, or metrics beyond what Lumovi charts.
Usage history
What Lumovi charts, and where it finds it.
Right-sizing
What each workload should request, from a week of history.