I’m trying to work a tutorial:
.NET Microservices – Full Course
The tutorial is aimed at Windows, but I’ve been trying to follow it in Linux, as well.
The tutorial uses Docker Desktop, and specifically the Kubernetes that is installed as an optional component of Docker Desktop.
Docker Desktop isn’t available on Linux, so I’ve been using MicroK8S. And it’s been working fine, up until I tried to get ingress-nginx installed.
The instructions for installing ingress-nginx are here:
NGINX Ingress Controller Installation Guide
In Docker Desktop, on Windows, ingress-nginx is enabled with:
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.0.4/deploy/static/provider/cloud/deploy.yaml
After which I can see there have been pods and services created in the “ingress-nginx” namespace:
$ kubectl get namespace $ kubectl get pods --namespace=ingress-nginx $ kubectl get services --namespace=ingress-nginx
In MicroK8S, on Linux, ingress-nginx is enabled with:
$ microk8s enable ingress
This seems to work fine, except that it puts everything in the “ingress” namespace.
$ microk8s kubectl get namespace $ microk8s kubectl get pods --namespace=ingress $ microk8s kubectl get services --namespace=ingress
And, and I think this is the core of my problem, it doesn’t seem to create the services.
In Windows, installing ingress-nginx starts two services:
In Linux, get services returns: “No resources found in ingress namespace”.
First - am I right to expect that these services should be started, in MicroK8S, the way they are in Docker Desktop?
If so, where do I go look as to find out why they are not? I’m assuming that there are some kind of logs, available, somewhere. Where do I find them?
All I have now is the console trace from when I did the enable:
$ microk8s enable ingress Enabling Ingress ingressclass.networking.k8s.io/public created namespace/ingress created serviceaccount/nginx-ingress-microk8s-serviceaccount created clusterrole.rbac.authorization.k8s.io/nginx-ingress-microk8s-clusterrole created role.rbac.authorization.k8s.io/nginx-ingress-microk8s-role created clusterrolebinding.rbac.authorization.k8s.io/nginx-ingress-microk8s created rolebinding.rbac.authorization.k8s.io/nginx-ingress-microk8s created configmap/nginx-load-balancer-microk8s-conf created configmap/nginx-ingress-tcp-microk8s-conf created configmap/nginx-ingress-udp-microk8s-conf created daemonset.apps/nginx-ingress-microk8s-controller created Ingress is enabled