5주차 내용은 뭔가 최근에 실무에서 적용해본 경험이 있어서 금방할 수 있었다. 하지만 helm은 쉬워보이지만 chart를 볼 때마다 어렵게 느껴진다
exporter의 존재는 알고있었지만 추가하거나 활용하는 법을 잘 몰랐다.
addons: certManager, awsLoadBalancer, externalDns, metricsServer, kubeproxy
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
#values.yaml 내용
alertmanager:
ingress:
enabled: true
ingressClassName: alb
annotations:
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}, {"HTTP":80}]'
alb.ingress.kubernetes.io/certificate-arn: $CERT_ARN
alb.ingress.kubernetes.io/success-codes: 200-399
alb.ingress.kubernetes.io/group.name: "monitoring"
hosts:
- alertmanager.$KOPS_CLUSTER_NAME
paths:
- /*
grafana:
defaultDashboardsTimezone: Asia/Seoul
adminPassword: prom-operator
ingress:
enabled: true
ingressClassName: alb
annotations:
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}, {"HTTP":80}]'
alb.ingress.kubernetes.io/certificate-arn: $CERT_ARN
alb.ingress.kubernetes.io/success-codes: 200-399
alb.ingress.kubernetes.io/group.name: "monitoring"
hosts:
- grafana.$KOPS_CLUSTER_NAME
paths:
- /*
prometheus:
ingress:
enabled: true
ingressClassName: alb
annotations:
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}, {"HTTP":80}]'
alb.ingress.kubernetes.io/certificate-arn: $CERT_ARN
alb.ingress.kubernetes.io/success-codes: 200-399
alb.ingress.kubernetes.io/group.name: "monitoring"
hosts:
- prometheus.$KOPS_CLUSTER_NAME
paths:
- /*
prometheusSpec:
serviceMonitorSelectorNilUsesHelmValues: false
retention: 5d
retentionSize: "10GiB"
EOT
helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack --version 45.0.0 -f monitor-values.yaml --namespace monitoring
이전에 실무경험을 할 때 retention 옵션때문에 엄청 애를 먹은 경험이 있다.
retention 옵션은 기본적으로 24시간으로 잡혀있어서 이를 수정해줘야하며 수정 안할 시 24시간의 기록만 prometheus에 저장이 된다.
import로 추가한 한글버전
cat <<EOT > ~/nginx-values.yaml
metrics:
enabled: true
service:
port: 9113
serviceMonitor:
enabled: true
namespace: monitoring
interval: 10s
EOT
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install nginx bitnami/nginx --version 13.2.23 -f nginx-values.yaml
실무에서 경험한 걸 발표자료로 정리하여 발표도 했다!
https://drive.google.com/file/d/17u2JXvPnaqBacmPmYAuNxz0BSYSalmjK/view?usp=share_link