Alloy¶
Overview¶
This package wraps Grafana’s k8s-monitoring chart and adds Big Bang image,
networking, monitoring, and upgrade integration. The Alloy operator manages the
configured collectors; telemetry is forwarded to separately deployed backends.
For general product behavior, use the Grafana Alloy documentation.
For the chart bundled by this package, use the
k8s-monitoring 4.3.2 documentation
and upstream values.
Match these references to the dependency in Chart.yaml
when using another package version.
Configuration ownership¶
The package’s values contain Big Bang overrides, not the
complete upstream configuration. Pass upstream chart configuration through the
upstream parent; consult the versioned upstream values rather than duplicating
its nested keys. The generated README documents package values.
The package alone does not enable the logging, metrics, or tracing collectors.
The Big Bang umbrella enables features, selects destinations, and deploys release
alloy into namespace alloy. Its integration entry points are:
| Umbrella setting | Big Bang behavior |
|---|---|
alloyLogs.enabled |
Enables alloy-logs as a DaemonSet to read pod logs and forward them to Loki and additional Loki destinations. |
alloyClusterEvents.enabled |
Enables alloy-singleton to collect Kubernetes events and forward them to Loki and additional Loki destinations. |
alloyMetrics.enabled |
Enables alloy-metrics to scrape Prometheus Operator objects and remote-write to selected metrics destinations. |
cortexTenant.enabled |
Routes those metrics through Cortex Tenant instead of directly to Prometheus or Mimir. |
additionalDestinations |
Adds operator-configured destinations; reachability and credentials must also be configured. |
These settings are under packages.alloy with
packageConfiguration.version: v1, or under the legacy alloy key in Big Bang
3.x configurations that have not opted in. Package chart overrides belong under
that entry’s values mapping. Enabling Tempo also configures alloy-receiver
with OTLP gRPC and Zipkin receivers and a Tempo destination.
The umbrella’s values mapping and release dependencies are authoritative for this wiring. These links show the development branch; select the Big Bang release used by your environment. Dependencies on enabled Loki, monitoring, policy, and Istio releases control reconciliation order; they do not provision external destinations or prove that telemetry is delivered.
Destinations and network controls¶
The umbrella selects Loki’s write service for its configured deployment strategy
(monolith, scalable, or distributed) and supplies matching network-policy
egress. Prometheus and Mimir are selected only when metrics collection and the
corresponding backend are enabled. Backend storage, retention, and authentication
are owned by those packages or by the operator of an external service.
The package renders NetworkPolicies and Istio resources through bb-common.
See the Istio integration guide for Alloy-specific destination
reachability, scrape identities, and sidecar-versus-ambient considerations.
The package defines alloy-metrics egress to the Cortex Tenant Service on
port 8080 but keeps that rule disabled by default. Enable
networkPolicies.egress.from.alloy-metrics.to.k8s.cortex-tenant/cortex-tenant:8080
when writing through Cortex Tenant. The umbrella selects the destination and
can add a tenant label; the proxy and Mimir packages must also permit the
corresponding ingress and egress.
Big Bang modifications and operations¶
- Collector, operator, config-reloader, toolbox, and legacy upgrade-hook images are explicitly pinned to Iron Bank images in the package values and chart image inventory.
- Alloy usage reporting is disabled by the package override. This setting does not prevent forwarding telemetry to destinations configured by the operator.
- The debug UI is not exposed externally by default. Do not treat it as an authenticated, publicly available application.
- The log collector uses host mounts for
/var/logand/var/lib/docker/containers, and the umbrella sets itsfsGroupto0. Account for node filesystem access when reviewing workload security policy. - The package is not a long-term telemetry store. Collector-local state and persistence depend on the selected upstream collector configuration; backend storage must be planned separately. Do not assume that collectors never use local storage or that pod restarts preserve buffered telemetry.
- Collector availability is role-specific: logs use a DaemonSet and cluster events use the singleton preset. Review upstream collection and clustering guidance before scaling collectors to avoid duplicate collection.
The package renders the serviceMonitors supplied by the umbrella so Prometheus
can scrape enabled collectors. Scraping collectors’ own metrics is distinct from
enabling alloyMetrics to collect and forward other workloads’ metrics.
Use the maintainer-authored maintenance guide for
upgrade and integration checks.
Legacy cleanup hook¶
For upgrades from chart versions before 2.0.16-bb.1, the guarded
autoRollingUpgrade post-upgrade hook can delete namespaced resources in
monitoring labeled helm.toolkit.fluxcd.io/name=alloy, excluding EndpointSlices.
The guard requires an upgrade,
the enabled toggle, and qualifying history on HelmRelease bigbang/alloy.
Review the cleanup job
before testing a qualifying legacy upgrade. Do not run the cleanup manually as
routine troubleshooting. A fresh install does not exercise this path.