콘텐츠로 이동

KubeCost

구성

사전 조건

  • K8S 환경 설치
  • KubeCost 설치
  • DataKit 설치
  • Prometheus Operator 설치

CRD 구성

KubeCost는 이미 메트릭을 노출하고 있으므로, DataKit이 메트릭을 발견해 보고하도록 하면 됩니다.

  • kubecost-serverMonitor.yaml 추가
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: kubecost-metrics
  labels:
    app.kubernetes.io/name: cost-analyzer
  namespace: kubecost
spec:
  selector:
    matchLabels:
      app.kubernetes.io/name: cost-analyzer
  endpoints:
  - port: metrics
  • 실행

kubectl apply -f kubecost-serverMonitor.yaml

DataKit 구성

이미 활성화되어 있다면 건너뛰세요.

  • DataKit Service Monitor 자동 발견 활성화

env : ENV_INPUT_CONTAINER_ENABLE_AUTO_DISCOVERY_OF_PROMETHEUS_SERVICE_MONITORS 추가

apiVersion: apps/v1
kind: DaemonSet
metadata:
  labels:
    app: daemonset-datakit
  name: datakit
  namespace: datakit
spec:
  ...
  template:
    ...
    spec:
      ...
      containers:
      - env:
        ...
        - name: ENV_INPUT_CONTAINER_ENABLE_AUTO_DISCOVERY_OF_PROMETHEUS_SERVICE_MONITORS
          value: "true"
        ...
  • DataKit 재시작

DataKit 재시작

메트릭

kubecost-cost-analyzer

Metric 설명
container_cpu_allocation container cpu 할당
container_gpu_allocation container gpu 할당
container_memory_allocation_bytes container 메모리 할당
pv_hourly_cost PersistentVolume 시간당 비용
node_total_hourly_cost 노드 시간당 총 비용
node_cpu_hourly_cost 노드 cpu 시간당 비용
node_ram_hourly_cost 노드 ram 시간당 비용
node_gpu_hourly_cost 노드 gpu 시간당 비용

문서 평가

이 페이지가 도움이 되었나요?