Metrics server
Reuse host metrics server​
Create a vcluster.yaml with:
integrations:
metricsServer:
enabled: true
nodes: true
pods: true
Then create a vCluster with:
vcluster create host-metrics-vcluster -f vcluster.yaml
Then the metrics api should be available within the vCluster. This will obviously require a metrics server to be installed on the control plane cluster.
If your metrics server is not using the default kube-system/metrics-server service, you can also configure a custom one via:
integrations:
metricsServer:
enabled: true
apiService:
service:
name: my-custom-metrics-server
namespace: my-custom-namespace
port: 443
If you are using network policies, you need to add the metrics server pod to the allowed rules that the control plane can communicate with:
policies:
networkPolicy:
controlPlane:
egress:
- to:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: 'kube-system'
podSelector:
matchLabels:
k8s-app: metrics-server
Config reference​
metricsServer object ​
MetricsServer reuses the metrics server from the host cluster within the vCluster.
metricsServer object ​enabled boolean false ​
Enabled signals the metrics server integration should be enabled.
enabled boolean false ​apiService object ​
APIService holds information about where to find the metrics-server service. Defaults to metrics-server/kube-system.
apiService object ​nodes boolean true ​
Nodes defines if metrics-server nodes api should get proxied from host to virtual cluster.
nodes boolean true ​pods boolean true ​
Pods defines if metrics-server pods api should get proxied from host to virtual cluster.
pods boolean true ​