Infrastructure

The Trim estate,
as CEMS sees it.

One Proxmox host in Prague, five service machines and a three-node Kubernetes cluster. CEMS reads them through node metrics and an estate data feed, prices them from the host's asset cost, and shows every figure to the person who owns it. It never writes to any of them.

8 machines5 products15 min collection cadenceEUR reported, never converted
1Proxmox host · prg01-proxmox-001 · 16 cores, 125 GB
5service machines · gateway, operations, identity, CEMS dev and prod
3Kubernetes nodes · kubeadm 1.35, one control plane, two workers
90 dclient certificates, renewed monthly from the cell's own PKI

How the data flows

Read at the edge, computed in the cell, explained on the pane

Five hops, all of them reads. The only thing that moves back toward the estate is a question from a person.

Machines

A node exporter on every host and a DaemonSet on the Kubernetes nodes publish CPU, memory, disk and network counters.

node_exporter · hostNetwork :9100
Monitor

The Trim monitor scrapes them every 30 seconds into Prometheus, with Loki, Alertmanager and Wazuh beside it.

prometheus · 5-minute buckets
Estate data feed

A publisher turns the metrics and a hand-kept estate description into the exchange-pack datasets: people, products, components, machines, usage.

Estate Data API · GET only
CEMS cell

The collector pulls every fifteen minutes, lands the rows, runs the detectors and records the day's findings and each machine's cost share.

Postgres · ClickHouse · VictoriaMetrics
Single pane

Tools compute, agents explain, a critic checks every number against the tool results, and the person sees only their own scope.

cems.fatsmash.in · Real data

The estate

Eight machines, five products, one host

What the pane lists under Real data. Addresses, hypervisor ids and utilisation sit behind sign-in; the structure is public.

MachineProductSizeRole
fatsmash-gwNetwork access and DNS4 cores · 16 GBrouting peer, DNS, certificates for the development zone
fatsmash-appOperations and monitoring4 cores · 12 GBPrometheus, Loki, Grafana, Alertmanager, Wazuh, the estate data feed
dmz-fatsmash-authentikIdentity service2 cores · 4 GBsign-in, registration with approval, multi-factor
dmz-fatsmash-cemsCEMS SaaS platform4 cores · 8 GBdevelopment instance
dmz-fatsmash-cems-prodCEMS SaaS platform4 cores · 8 GBproduction instance, cems.fatsmash.in
k8s-node-181Kubernetes platform4 cores · 8 GBcontrol plane
k8s-node-182Kubernetes platform4 cores · 8 GBworker
k8s-node-183Kubernetes platform4 cores · 8 GBworker

Priced from the host

Every machine carries a share of the host's monthly asset cost by its cores and memory. Used and unused split by what the 95th-percentile usage occupies.

Owned by people

Each product has a service, a product and a cost owner. Three chains roll the same figures up to the group CEO, and each person sees only their scope.

Not modelled yet

Pods and namespaces on the Kubernetes cluster. The nodes appear as machines today; workload-level cost follows with the platform's Kubernetes source.

See it live

The same estate, with the numbers

Sign in, switch to Real data, and open Explore in the infrastructure view: region, data centre, host and machine, each with its cost, its excess and its findings.