@@ -27,6 +27,9 @@ You can configure Kepler by passing flags when starting the service. The followi
2727| ` --debug.pprof ` | Enable pprof debugging endpoints | ` false ` | ` true ` , ` false ` |
2828| ` --exporter.stdout ` | Enable stdout exporter | ` false ` | ` true ` , ` false ` |
2929| ` --exporter.prometheus ` | Enable Prometheus exporter | ` true ` | ` true ` , ` false ` |
30+ | ` --kube.enable ` | Monitor kubernetes | ` false ` | ` true ` , ` false ` |
31+ | ` --kube.config ` | Path to a kubeconfig file | ` "" ` | Any valid file path |
32+ | ` --kube.node-name ` | Name of kubernetes node on which kepler is running | ` "" ` | Any valid node name |
3033
3134### 💡 Examples
3235
@@ -42,6 +45,9 @@ kepler --config.file=/path/to/config.yaml
4245
4346# Enable stdout exporter and disable Prometheus exporter
4447kepler --exporter.stdout=true --exporter.prometheus=false
48+
49+ # Enable Kubernetes monitoring with specific kubeconfig and node name
50+ kepler --kube.enable=true --kube.config=/path/to/kubeconfig --kube.node-name=my-node
4551```
4652
4753## 🗂️ Configuration File
@@ -82,6 +88,11 @@ debug: # debug related config
8288web :
8389 configFile : " " # Path to TLS server config file
8490
91+ kube : # kubernetes related config
92+ enabled : false # Enable kubernetes monitoring (default: false)
93+ config : " " # Path to kubeconfig file (optional if running in-cluster)
94+ nodeName : " " # Name of the kubernetes node (required when enabled)
95+
8596# WARN: DO NOT ENABLE THIS IN PRODUCTION - for development/testing only
8697dev :
8798 fake-cpu-meter :
@@ -196,6 +207,28 @@ tls_server_config:
196207 key_file: /path/to/key.pem # Path to the key file
197208` ` `
198209
210+ # ## 🐳 Kubernetes Configuration
211+
212+ ` ` ` yaml
213+ kube:
214+ enabled: false # Enable kubernetes monitoring
215+ config: "" # Path to kubeconfig file
216+ nodeName: "" # Name of the kubernetes node
217+ ` ` `
218+
219+ - **enabled**: Enable or disable Kubernetes monitoring (default: false)
220+ - When enabled, Kepler will monitor Kubernetes resources and expose pod level information
221+
222+ - **config**: Path to a kubeconfig file (optional)
223+ - Required when running Kepler outside of a Kubernetes cluster
224+ - When running inside a cluster, Kepler can use the in-cluster configuration
225+ - Must be a valid and readable kubeconfig file
226+
227+ - **nodeName**: Name of the Kubernetes node on which Kepler is running (required when enabled)
228+ - This helps Kepler identify which node it's monitoring
229+ - Must match the actual node name in the Kubernetes cluster
230+ - Required when `enabled` is set to `true`
231+
199232# ## 🧑🔬 Development Configuration
200233
201234` ` ` yaml
0 commit comments