This is how to install prometheus-stack and prometheus-adapter without alert manager.
- create helm values file for prometheus-stack: server.yaml
#server.yaml
defaultRules:
create: true
rules:
alertmanager: false
etcd: false
configReloaders: true
general: true
k8s: true
kubeApiserver: true
kubeApiserverAvailability: true
kubeApiserverSlos: false
kubelet: true
kubeProxy: false
kubePrometheusGeneral: true
kubePrometheusNodeRecording: false
kubernetesApps: true
kubernetesResources: true
kubernetesStorage: true
kubernetesSystem: true
kubeScheduler: true
kubeStateMetrics: true
network: true
node: true
nodeExporterAlerting: false
nodeExporterRecording: false
prometheus: true
prometheusOperator: falsekubeProxy:
enabled: falsealertmanager:
enabled: falseprometheus:
prometheusSpec:
retention: 3d
retentionSize: 2GB
storageSpec:
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
2. create helm values file for prometheus-adapter: adapter.yaml
prometheus:
url: http://nick-prometheus-stack-kube-prometheus.monitor.svc.cluster.local
port: 9090
rules:
resource:
cpu:
containerLabel: container
containerQuery: sum(rate(container_cpu_usage_seconds_total{<<.LabelMatchers>>,
container!=""}[3m])) by (<<.GroupBy>>)
nodeQuery: sum(rate(container_cpu_usage_seconds_total{<<.LabelMatchers>>, id='/'}[3m]))
by (<<.GroupBy>>)
resources:
overrides:
namespace:
resource: namespace
node:
resource: node
pod:
resource: pod
memory:
containerLabel: container
containerQuery: sum(container_memory_working_set_bytes{<<.LabelMatchers>>, container!=""})
by (<<.GroupBy>>)
nodeQuery: sum(container_memory_working_set_bytes{<<.LabelMatchers>>,id='/'})
by (<<.GroupBy>>)
resources:
overrides:
namespace:
resource: namespace
node:
resource: node
pod:
resource: pod
window: 3m
note1: update prometheus URL to your setting
last step: helm install
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install nick-prometheus-stack -f server.yaml prometheus-community/kube-prometheus-stack --create-namespace -n monitor
helm install nick-prometheus-adapter -f adapter.yaml prometheus-community/prometheus-adapter --create-namespace -n monitor
result:
$ k top node --use-protocol-buffers
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
nick-nmt-0001 270m 18% 1886Mi 66%
nick-nmt-0002 117m 7% 1669Mi 58%