kubernetes/kustomize-bases/alloy/values.yaml

154 lines
5.6 KiB
YAML

crds:
# -- Whether to install CRDs for monitoring.
create: true
## Various Alloy settings. For backwards compatibility with the grafana-agent
## chart, this field may also be called "agent". Naming this field "agent" is
## deprecated and will be removed in a future release.
alloy:
configMap:
# -- Create a new ConfigMap for the config file.
create: false
# -- Name of existing ConfigMap to use. Used when create is false.
name: alloy-config
# -- Key in ConfigMap to get config from.
key: config.alloy
clustering:
enabled: true
# -- Minimum stability level of components and behavior to enable. Must be
# one of "experimental", "public-preview", or "generally-available".
stabilityLevel: "generally-available"
# -- Enables Grafana Alloy container's http server port for debugging purposes.
enableHttpServerPort: true
# -- Enables sending Grafana Labs anonymous usage stats to help improve Grafana Alloy.
enableReporting: false
# DAC_READ_SEARCH: this is required so that Alloy can read the kube-apiserver audit logs written as `nobody` user
securityContext:
capabilities:
add:
- DAC_READ_SEARCH
mounts:
# -- Mount /var/log from the host into the container for log collection.
varlog: true
# -- Mount /var/lib/docker/containers from the host into the container for log collection.
dockercontainers: true
rbac:
# -- Whether to create RBAC resources for Alloy.
create: true
# -- The rules to create for the ClusterRole or Role objects.
rules:
# -- Rules required for the `discovery.kubernetes` component.
- apiGroups: ["", "discovery.k8s.io", "networking.k8s.io"]
resources:
["endpoints", "endpointslices", "ingresses", "pods", "services"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `loki.source.kubernetes` component.
- apiGroups: [""]
resources: ["pods", "pods/log", "namespaces"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `loki.source.podlogs` component.
- apiGroups: ["monitoring.grafana.com"]
resources: ["podlogs"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `mimir.rules.kubernetes` component.
- apiGroups: ["monitoring.coreos.com"]
resources: ["prometheusrules"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `prometheus.operator.*` components.
- apiGroups: ["monitoring.coreos.com"]
resources: ["podmonitors", "servicemonitors", "probes", "scrapeconfigs"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `loki.source.kubernetes_events` component.
- apiGroups: [""]
resources: ["events"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `remote.kubernetes.*` components.
- apiGroups: [""]
resources: ["configmaps", "secrets"]
verbs: ["get", "list", "watch"]
# -- Rules required for the `otelcol.processor.k8sattributes` component.
- apiGroups: ["apps", "extensions"]
resources: ["replicasets"]
verbs: ["get", "list", "watch"]
# -- The rules to create for the ClusterRole objects.
clusterRules:
# -- Rules required for the `discovery.kubernetes` component.
- apiGroups: [""]
resources: ["nodes", "nodes/proxy", "nodes/metrics"]
verbs: ["get", "list", "watch"]
# -- Rules required for accessing metrics endpoint.
- nonResourceURLs: ["/metrics"]
verbs: ["get"]
serviceAccount:
# -- Whether to create a service account for the Grafana Alloy deployment.
create: true
# -- Additional labels to add to the created service account.
additionalLabels: {}
# -- Annotations to add to the created service account.
annotations: {}
# -- The name of the existing service account to use when
# serviceAccount.create is false.
name: null
# Whether the Alloy pod should automatically mount the service account token.
automountServiceAccountToken: true
controller:
# -- Type of controller to use for deploying Grafana Alloy in the cluster.
# Must be one of 'daemonset', 'deployment', or 'statefulset'.
type: "daemonset"
# -- Tolerations to apply to Grafana Alloy pods.
tolerations:
- key: node-role.kubernetes.io/control-plane
operator: Exists
effect: NoSchedule
- key: node-role.kubernetes.io/master
operator: Exists
effect: NoSchedule
# Options for the extra controller used for config reloading.
configReloader:
# -- Enables automatically reloading when the Alloy config changes.
enabled: true
image:
# -- Config reloader image registry (defaults to docker.io)
registry: "quay.io"
# -- Repository to get config reloader image from.
repository: prometheus-operator/prometheus-config-reloader
# -- Tag of image to use for config reloading.
tag: v0.81.0
# -- SHA256 digest of image to use for config reloading (either in format "sha256:XYZ" or "XYZ"). When set, will override `configReloader.image.tag`
digest: ""
# -- Override the args passed to the container.
customArgs: []
# -- Resource requests and limits to apply to the config reloader container.
resources:
requests:
cpu: "10m"
memory: "50Mi"
# -- Security context to apply to the Grafana configReloader container.
securityContext: {}
service:
# -- Creates a Service for the controller's pods.
enabled: true
# -- Service type
type: ClusterIP
# -- NodePort port. Only takes effect when `service.type: NodePort`
nodePort: 31128
# -- Cluster IP, can be set to None, empty "" or an IP address
clusterIP: ""
# -- Value for internal traffic policy. 'Cluster' or 'Local'
internalTrafficPolicy: Cluster
annotations: {}