This patch does the following: 1. Use "cadvisor.selectorLabels" to select services in the ServiceMonitor 2. Make spacing consistent across templates Signed-off-by: Oleh Neichev <oleg.neichev@gmail.com> |
||
|---|---|---|
| .. | ||
| templates | ||
| .helmignore | ||
| Chart.yaml | ||
| README.md | ||
| values.yaml | ||
README.md
cAdvisor
A chart for a cAdvisor deployment
Learn more: https://github.com/google/cadvisor
TL;DR;
$ helm install ckotzbauer/cadvisor
Introduction
This chart creates a daemonset on a Kubernetes cluster using the Helm package manager.
Prerequisites
- Kubernetes 1.10+
Installing the Chart
To install the chart with the release name my-release:
$ helm install --name my-release ckotzbauer/cadvisor
The command deploys cAdvisor on the Kubernetes cluster using the default configuration. The configuration section lists the parameters that can be configured during installation.
Upgrading from v1.x to v2.x
metrics.relabelingswas renamed tometrics.metricsRelabelingsto match the ServiceMonitor CRD naming
Uninstalling the Chart
To uninstall/delete the my-release deployment:
$ helm delete my-release
The command removes all the Kubernetes components associated with the chart and deletes the release.
Configuration
The following table lists the configurable parameters of the cAdvisor chart and their default values.
| Parameter | Description | Default |
|---|---|---|
image.repository |
container image repository | gcr.io/cadvisor/cadvisor |
image.tag |
container image tag | v0.52.1 |
image.pullPolicy |
container image pull policy | IfNotPresent |
image.pullSecrets |
container image pull secrets | [] |
nodeSelector |
node labels for pod assignment | {} |
tolerations |
node tolerations for pod assignment | [] |
affinity |
node affinity for pod assignment | {} |
container.port |
the container and service port to use | 8080 |
container.additionalArgs |
additional container arguments | see values.yaml |
container.hostPaths |
hostPaths to mount in the container | see values.yaml |
resources |
pod resource requests & limits | {} |
serviceAccount.create |
create a own serviceAccount for the pod | true |
serviceAccount.name |
name of the serviceAccount to create | "" |
daemonsetAnnotations |
annotations for the daemonset | {} |
podAnnotations |
annotations for the daemonset pods | {} |
podLabels |
labels for the daemonset pods | {} |
priorityClassName |
priority classes name for the pod | {} |
podSecurityPolicy.create |
create a own PodSecurityPolicy for the pod | false |
podSecurityPolicy.privileged |
create the PodSecurityPolicy as privileged | false |
podSecurityContext.create |
create the podSecurityContext in container spec | false |
podSecurityContext.privileged |
set podSecurityContext privileged to true | false |
metrics.enabled |
create ServiceMonitor CR for Prometheus operator | false |
metrics.relabelings |
add pre-scraping relabeling to ServiceMonitor | [] |
metrics.interval |
scraping interval for the ServiceMonitor | 30s |
metrics.scrapeTimeout |
scraping timeout for the ServiceMonitor | 30s |
metrics.metricsRelabelings |
add pre-ingestion relabeling to ServiceMonitor | [] |
Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,
$ helm install --name my-release \
--set key_1=value_1,key_2=value_2 \
ckotzbauer/cadvisor
Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,
# example for staging
$ helm install --name my-release -f values.yaml ckotzbauer/cadvisor
Tip: You can use the default values.yaml
Centos, Fedora and RHEL
You may need to run the container with additional configuration. Please see this article.