neuvector / neuvector-helm

HELM chart to install NeuVector container cluster
Apache License 2.0
121 stars 115 forks source link

Controller and Enforcer pods fail to start in WSL2 Windows environment #279

Open emucker opened 1 year ago

emucker commented 1 year ago

I have stood up a minikube cluster on Windows 11 host with WSL2 using the following command: minikube start --profile='test-cluster' --ports=80,443 --container-runtime=containerd

See node details from kubectl get nodes -o wide

NAME           STATUS   ROLES           AGE   VERSION   INTERNAL-IP    EXTERNAL-IP   OS-IMAGE             KERNEL-VERSION                      CONTAINER-RUNTIME
test-cluster   Ready    control-plane   78s   v1.26.3   192.168.49.2   <none>        Ubuntu 20.04.5 LTS   5.15.90.1-microsoft-standard-WSL2   containerd://1.6.20

After the cluster is available, I attempted to install NeuVector 5.1.3 via Helm with the command:

helm upgrade --install neuvector neuvector/core --version 2.4.5 --set tag=5.1.3 --set registry=docker.io --create-namespace --namespace neuvector --set containerd.enabled=true

Both the controller and enforcer pods never come up and stay in CrashLoopBackOff state. See attached logs. controller-logs.txt enforcer-logs.txt

I've tried various configurations using Minikube and K3s as well as downgrading both K8s and NeuVector versions. Google has not provided any value added recommendations and/or solutions at this time. All examples merely state to update container runtime and the default configuration should work. I've reviewed both open and closed GitHub issues with no luck. Please let me know if there is any additional information I can provide to help resolve what is probably a small detail. I do not have access to AWS, GCP, or Azure cluster at this time to try cloud based installations.

Adding a getting started with Minikube or K3s tutorial to the docs (or YouTube video) would be super helpful to budding DevOps engineers as well. Thank you for your time.

emucker commented 1 year ago

Attached are logs for the same scenario, except with docker CRI for cluster and NeuVector configuration. Same results.

minikube start --profile='test-cluster' --ports=80,443
helm upgrade --install neuvector neuvector/core --version 2.4.5 --set tag=5.1.3 --set registry=docker.io --create-namespace --namespace neuvector

enforcer-logs-docker.txt controller-logs-docker.txt

becitsthere commented 1 year ago

In order to run controller and enforcer in the windows environment, source code level migration are needed.

emucker commented 1 year ago

Workaround: Tested different configurations using Virtual Box and Hyper-V. NeuVector can be deployed on Windows environment using: