Kepler DaemonSet Customization
Kepler enables a function to hybrid read environment variable from attributes directly (container.env) and from the ConfigMap. Note that, all steps will be operated by Kepler Operator if the operator is installed.
To set environments by ConfigMap:
- Create/Generate ConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: kepler-cfm
namespace: kepler-system
data:
MODEL_SERVER_ENABLE: true
COUNTER_METRICS: '*'
CGROUP_METRICS: '*'
BPF_METRICS: '*'
# KUBELET_METRICS: ''
# GPU_METRICS: ''
PERF_METRICS: '*'
MODEL_CONFIG: |
POD_COMPONENT_ESTIMATOR=true
POD_COMPONENT_INIT_URL=https://raw.githubusercontent.com/sustainable-computing-io/kepler-model-server/main/tests/test_models/DynComponentPower/CgroupOnly/ScikitMixed.zip
- Mount the confimap to DeamonSet:
spec:
containers:
- name: kepler-exporter
volumeMounts:
- name: cfm
mountPath: /etc/config
readOnly: true
volumes:
- name: cfm
configMap:
name: kepler-cfm