> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tensormesh.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Glossary / Vocabulary

> Plain-language definitions of the terms used throughout the Tensormesh Operator docs.

Short definitions of the terms you'll meet in these docs, grouped by area.

## Tensormesh / LMCache

| Term                               | Meaning                                                                                                                                                                                                                                  |
| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **LMCache**                        | A multi-process KV (key-value) cache for LLM inference. When requests share a prefix (system prompt, RAG context, prior turn), LMCache lets later requests reuse the earlier request's attention KV tensors instead of recomputing them. |
| **Tensormesh Operator (TMO)**      | The Kubernetes controller this chart installs. It watches `LMCacheEngine` resources and reconciles them into a DaemonSet of cache servers.                                                                                               |
| **Engine**                         | A running LMCache cache server pod (one per GPU node, via a DaemonSet). Created by the operator from an `LMCacheEngine` CR.                                                                                                              |
| **`LMCacheEngine`**                | The custom resource you write to declare an engine. Group/version `lmcache.lmcache.ai/v1alpha1`.                                                                                                                                         |
| **MP mode / `LMCacheMPConnector`** | "Multi-process" mode — vLLM connects to the engine on the same node over shared-memory IPC (`hostIPC`). The connector ships KV blocks between vLLM and the engine.                                                                       |
| **L1 / L2**                        | Cache tiers. **L1** is local node memory (sized by `engine.spec.l1.sizeGB`). **L2** is an optional shared backend (Redis, S3, filesystem).                                                                                               |
| **KV cache hit**                   | A later request reused stored KV blocks for a shared prefix — the win LMCache delivers. Visible as `prefix hits` in engine logs and faster TTFT.                                                                                         |

## Kubernetes

| Term                                  | Meaning                                                                                                                                                                                     |
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **CRD** (CustomResourceDefinition)    | Extends the Kubernetes API with a new resource *kind*. Cluster-scoped. Here: `lmcacheengines.lmcache.lmcache.ai`.                                                                           |
| **CR** (Custom Resource)              | An *instance* of a CRD-defined kind, e.g. an `LMCacheEngine`.                                                                                                                               |
| **Operator / controller**             | A program that watches CRs and reconciles them into lower-level objects (Deployments, DaemonSets, …).                                                                                       |
| **DaemonSet**                         | Runs one pod per matching node — the shape used for the engine (one per GPU node).                                                                                                          |
| **Deployment**                        | Maintains N identical pods with rolling updates — the shape used for the operator.                                                                                                          |
| **Finalizer**                         | A marker on a resource that blocks its deletion until a controller runs cleanup. The `LMCacheEngine`'s `lmcache.ai/cleanup` finalizer can block a namespace delete if the operator is gone. |
| **Namespaced vs cluster-scoped**      | Namespaced resources are removed when their namespace is deleted; **cluster-scoped** ones (CRD, ClusterRole, ClusterRoleBinding) survive and must be cleaned up explicitly.                 |
| **SCC** (Security Context Constraint) | OpenShift's per-pod security policy. Engine pods need the `privileged` SCC because they use `hostIPC`.                                                                                      |
| **ServiceMonitor**                    | A Prometheus Operator CR telling Prometheus what to scrape.                                                                                                                                 |

## Helm

| Term                      | Meaning                                                                                                                                          |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Chart**                 | A versioned, packaged bundle of Kubernetes templates + default values.                                                                           |
| **Release**               | A named installation of a chart in a namespace. Helm stores its history (as Secrets) to enable upgrade/rollback.                                 |
| **Values / values file**  | User configuration that overrides chart defaults — supplied via `-f my-values.yaml` (preferred) or `--set`.                                      |
| **appVersion vs version** | `version` is the *chart's* version; `appVersion` is the version of the *app* it deploys. The operator image tag defaults to `appVersion`.        |
| **OCI artifact**          | A chart stored in a container registry (here GHCR) using OCI media types — pulled with `oci://…` instead of a classic HTTP repo.                 |
| **Hook**                  | A Job/pod Helm runs at a lifecycle point (pre-install, pre-delete, test). The chart's pre-delete hook removes the engine CR before the operator. |

## Observability

| Term                              | Meaning                                                                                                                                                     |
| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **OTLP**                          | OpenTelemetry Protocol — how the engine ships metrics/traces to the Collector (gRPC on `:4317`).                                                            |
| **OTel Collector**                | Receives OTLP from the engine and exports onward (Prometheus, Tempo, external backends). Managed by the OpenTelemetry Operator from a CR the chart creates. |
| **Prometheus exporter (`:8889`)** | The Collector port that re-exposes LMCache *application* metrics (`lmcache_*`) for scraping.                                                                |
| **Collector internals (`:8888`)** | The Collector's *own* metrics (`otelcol_*`) — used to confirm data is flowing.                                                                              |
| **Tempo**                         | A trace storage backend. The chart can deploy a `TempoMonolithic`; you view traces in your own Grafana via a Tempo data source.                             |
| **`remoteWrite`**                 | Pushing metrics to an external Prometheus-compatible endpoint (Grafana Cloud, Mimir, Thanos) instead of (or alongside) in-cluster scraping.                 |
