install
production env
POC or E2E environment
when POC or E2E case, it could disable the controller to collect reports, so no need to install strogeClass.
the following method leads the agent just print report to console
helm repo add kdoctor https://kdoctor-io.github.io/kdoctor
helm install kdoctor kdoctor/kdoctor \
-n kube-system --wait --debug \
--set feature.enableIPv4=true --set feature.enableIPv6=true \
--set feature.aggregateReport.enabled=false
the following method leads controller collects all report to disc of local host. BTW, when the kdoctor controller is schedules to other nodes, the historical reports will be not migrated
helm repo add kdoctor https://kdoctor-io.github.io/kdoctor
helm install kdoctor kdoctor/kdoctor \
-n kube-system --wait --debug \
--set feature.enableIPv4=true --set feature.enableIPv6=true \
--set feature.aggregateReport.enabled=true \
--set feature.aggregateReport.controller.reportHostPath="/var/run/kdoctor/controller"
production environment
the following method leads the kdoctor controller collect report to stroage, so firstly, it should install storageClass
helm repo add kdoctor https://kdoctor-io.github.io/kdoctor
helm install kdoctor kdoctor/kdoctor \
-n kube-system --wait --debug \
--set feature.enableIPv4=true --set feature.enableIPv6=true \
--set feature.aggregateReport.enabled=true \
--set feature.aggregateReport.controller.pvc.enabled=true \
--set feature.aggregateReport.controller.pvc.storageClass=local \
--set feature.aggregateReport.controller.pvc.storageRequests="100Mi" \
--set feature.aggregateReport.controller.pvc.storageLimits="500Mi"
multus environment
if it is required to test all interface of agent pod, it should annotate the agent with multus annotation
helm repo add kdoctor https://kdoctor-io.github.io/kdoctor
# replace following with actual multus configuration
MULTUS_DEFAULT_CNI=kube-system/k8s-pod-network
MULTUS_ADDITIONAL_CNI=kube-system/macvlan
helm install kdoctor kdoctor/kdoctor \
-n kube-system --wait --debug \
--set feature.enableIPv4=true --set feature.enableIPv6=true \
--set feature.aggregateReport.enabled=false \
--set kdoctorAgent.podAnnotations.v1\.multus-cni\.io/default-network=${MULTUS_DEFAULT_CNI} \
--set kdoctorAgent.podAnnotations.k8s\.v1\.cni\.cncf\.io/networks=${MULTUS_ADDITIONAL_CNI}