shoebill-test/charts/metrics-server-metrics-server/README.md
Nikolai Rodionov 012aaadacc chore(release): Add a new release: metrics-server
A new release is added to the cluster:
		  Name: metrics-server 
		  Namespace: kube-system
		  Version: 3.11.0
		  Chart: metrics-server/metrics-server
2024-09-09 09:41:17 +02:00

26 KiB

Kubernetes Metrics Server

Metrics Server is a scalable, efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines.

Installing the Chart

Before you can install the chart you will need to add the metrics-server repo to Helm.

helm repo add metrics-server https://kubernetes-sigs.github.io/metrics-server/

After you've installed the repo you can install the chart.

helm upgrade --install metrics-server metrics-server/metrics-server

Configuration

The following table lists the configurable parameters of the Metrics Server chart and their default values.

Parameter Description Default
image.repository Image repository. registry.k8s.io/metrics-server/metrics-server
image.tag Image tag, will override the default tag derived from the chart app version. ""
image.pullPolicy Image pull policy. IfNotPresent
imagePullSecrets Image pull secrets. []
nameOverride Override the name of the chart. nil
fullnameOverride Override the fullname of the chart. nil
serviceAccount.create If true, create a new service account. true
serviceAccount.annotations Annotations to add to the service account. {}
serviceAccount.name Service account to be used. If not set and serviceAccount.create is true, a name is generated using the full name template. nil
serviceAccount.secrets The list of secrets mountable by this service account. See https://kubernetes.io/docs/reference/labels-annotations-taints/#enforce-mountable-secrets []
rbac.create If true, create the RBAC resources. true
rbac.pspEnabled If true, create a pod security policy resource. false
apiService.create If true, create the v1beta1.metrics.k8s.io API service. You typically want this enabled! If you disable API service creation you have to manage it outside of this chart for e.g horizontal pod autoscaling to work with this release. true
apiService.annotations Annotations to add to the API service {}
apiService.insecureSkipTLSVerify Specifies whether to skip TLS verification (NOTE: this setting is not a proxy for the --kubelet-insecure-tls metrics-server flag) true
apiService.caBundle The PEM encoded CA bundle for TLS verification ""
commonLabels Labels to add to each object of the chart. {}
podLabels Labels to add to the pod. {}
podAnnotations Annotations to add to the pod. {}
podSecurityContext Security context for the pod. {}
securityContext Security context for the metrics-server container. See values.yaml
priorityClassName Priority class name to use. system-cluster-critical
containerPort port for the metrics-server container. 10250
hostNetwork.enabled If true, start metric-server in hostNetwork mode. You would require this enabled if you use alternate overlay networking for pods and API server unable to communicate with metrics-server. As an example, this is required if you use Weave network on EKS. false
replicas Number of replicas to run. 1
revisionHistoryLimit Number of revisions to keep. nil
updateStrategy Customise the default update strategy. {}
podDisruptionBudget.enabled If true, create PodDisruptionBudget resource. {}
podDisruptionBudget.minAvailable Set the PodDisruptionBudget minimum available pods. nil
podDisruptionBudget.maxUnavailable Set the PodDisruptionBudget maximum unavailable pods. nil
defaultArgs Default arguments to pass to the metrics-server command. See values.yaml
args Additional arguments to pass to the metrics-server command. []
livenessProbe Liveness probe. See values.yaml
readinessProbe Readiness probe. See values.yaml
service.type Service type. ClusterIP
service.port Service port. 443
service.annotations Annotations to add to the service. {}
service.labels Labels to add to the service. {}
addonResizer.enabled If true, run the addon-resizer as a sidecar to automatically scale resource requests with cluster size. false
addonResizer.securityContext Security context for the _metrics_server_container. _See values.yaml
addonResizer.image.repository addon-resizer image repository registry.k8s.io/autoscaling/addon-resizer
addonResizer.image.tag addon-resizer image tag 1.8.19
addonResizer.resources Resource requests and limits for the nanny container. { requests: { cpu: 40m, memory: 25Mi }, limits: { cpu: 40m, memory: 25Mi } }
addonResizer.nanny.cpu The base CPU requirement. 0m
addonResizer.nanny.extraCPU The amount of CPU to add per node. 1m
addonResizer.nanny.memory The base memory requirement. 0Mi
addonResizer.nanny.extraMemory The amount of memory to add per node. 2Mi
addonResizer.nanny.minClusterSize Specifies the smallest number of nodes resources will be scaled to. 100
addonResizer.nanny.pollPeriod The time, in milliseconds, to poll the dependent container. 300000
addonResizer.nanny.threshold A number between 0-100. The dependent's resources are rewritten when they deviate from expected by more than threshold. 5
metrics.enabled If true, allow unauthenticated access to /metrics. false
serviceMonitor.enabled If true, create a Prometheus service monitor. This needs metrics.enabled to be true. false
serviceMonitor.additionalLabels Additional labels to be set on the ServiceMonitor. {}
serviceMonitor.metricRelabelings Prometheus metric relabeling. []
serviceMonitor.relabelings Prometheus relabeling. []
serviceMonitor.interval Prometheus scrape frequency. 1m
serviceMonitor.scrapeTimeout Prometheus scrape timeout. 10s
resources Resource requests and limits for the metrics-server container. See https://github.com/kubernetes-sigs/metrics-server#scaling { requests: { cpu: 100m, memory: 200Mi }}
extraVolumeMounts Additional volume mounts for the metrics-server container. []
extraVolumes Additional volumes for the pod. []
nodeSelector Node labels for pod assignment. {}
tolerations Tolerations for pod assignment. []
affinity Affinity for pod assignment. {}
topologySpreadConstraints Pod Topology Spread Constraints. []
deploymentAnnotations Annotations to add to the deployment. {}
schedulerName scheduler to set to the deployment. ""
dnsConfig Set the dns configuration options for the deployment. {}
tmpVolume Volume to be mounted in Pods for temporary files. {"emptyDir":{}}