<p>After quite some time, I found the issue. the <code>1.28</code> branch of <code>microk8s</code> appeared to have be the culprit. When I switched to <code>1.27.4</code> it was all solved.</p>

CC BY-SA 4.0
2023-08-19T15:33:32.480Z
2023-08-19T15:33:32.480Z
Coen Hacking
<p>I using a root server at <code>v2202111160479168516.hotsrv.de</code>. I set up a microk8s install and enabled the plugins:</p>
<pre><code>    cert-manager         # (core) Cloud native certificate management
    dashboard            # (core) The Kubernetes dashboard
    dns                  # (core) CoreDNS
    ha-cluster           # (core) Configure high availability on the current node
    helm                 # (core) Helm - the package manager for Kubernetes
    helm3                # (core) Helm 3 - the package manager for Kubernetes
    host-access          # (core) Allow Pods connecting to Host services smoothly
    ingress              # (core) Ingress controller for external access
    metrics-server       # (core) K8s Metrics Server for API access to service metrics
</code></pre>
<p>Then I tried to create the ingress for my dashboard, but it doesn't seem to be working. When I try to go to the /.well-known/acme-challenge/ the response is an nginx 404. I already tried changing the endpoint of the dashboard to /dashboard, but it doesn't seem to work. As far I can see in the logs, everything else is working, I do get to the dashboard with a certificate complaint.</p>
<pre class="lang-yaml prettyprint-override"><code>---
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt
  namespace: kube-system
spec:
  acme:
    # You must replace this email address with your own.
    # Let's Encrypt will use this to contact you about expiring
    # certificates, and issues related to your account.
    email: coen.hacking@gmail.com
    server: https://acme-v02.api.letsencrypt.org/directory
    privateKeySecretRef:
      # Secret resource that will be used to store the account's private key.
      name: letsencrypt-account-key
    # Add a single challenge solver, HTTP01 using nginx
    solvers:
      - http01:
          ingress:
            class: nginx
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    className: nginx
    cert-manager.io/cluster-issuer: letsencrypt
    nginx.ingress.kubernetes.io/backend-protocol: &quot;HTTPS&quot;
  name: kubernetes-dashboard
  namespace: kube-system
spec:
  rules:
    - host: v2202111160479168516.hotsrv.de
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: kubernetes-dashboard
                port:
                  number: 443
  tls:
    - hosts:
        - v2202111160479168516.hotsrv.de
      secretName: dashboard-ingress-cert
</code></pre>
<p>I'm just getting into Kubernetes, so I'm probably missing something.
Does anybody know what the mistake in my configuration is?</p>

<kubernetes><ingress-nginx>
Kubernetes ingress fails to fetch letsencrypt
Coen Hacking
# Kubernetes ingress fails to fetch letsencrypt

(Asked by: username_0 on 2023-08-19)

I using a root server at v2202111160479168516.hotsrv.de. I set up a microk8s install and enabled the plugins:
    cert-manager         # (core) Cloud native certificate management
    dashboard            # (core) The Kubernetes dashboard
    dns                  # (core) CoreDNS
    ha-cluster           # (core) Configure high availability on the current node
    helm                 # (core) Helm - the package manager for Kubernetes
    helm3                # (core) Helm 3 - the package manager for Kubernetes
    host-access          # (core) Allow Pods connecting to Host services smoothly
    ingress              # (core) Ingress controller for external access
    metrics-server       # (core) K8s Metrics Server for API access to service metrics

Then I tried to create the ingress for my dashboard, but it doesn't seem to be working. When I try to go to the /.well-known/acme-challenge/ the response is an nginx 404. I already tried changing the endpoint of the dashboard to /dashboard, but it doesn't seem to work. As far I can see in the logs, everything else is working, I do get to the dashboard with a certificate complaint.
---
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt
  namespace: kube-system
spec:
  acme:
    # You must replace this email address with your own.
    # Let's Encrypt will use this to contact you about expiring
    # certificates, and issues related to your account.
    email: coen.hacking@gmail.com
    server: https://acme-v02.api.letsencrypt.org/directory
    privateKeySecretRef:
      # Secret resource that will be used to store the account's private key.
      name: letsencrypt-account-key
    # Add a single challenge solver, HTTP01 using nginx
    solvers:
      - http01:
          ingress:
            class: nginx
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    className: nginx
    cert-manager.io/cluster-issuer: letsencrypt
    nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
  name: kubernetes-dashboard
  namespace: kube-system
spec:
  rules:
    - host: v2202111160479168516.hotsrv.de
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: kubernetes-dashboard
                port:
                  number: 443
  tls:
    - hosts:
        - v2202111160479168516.hotsrv.de
      secretName: dashboard-ingress-cert

I'm just getting into Kubernetes, so I'm probably missing something.
Does anybody know what the mistake in my configuration is?

**Tags:** kubernetes, ingress-nginx


---

## 1 answers

### Answer by username_0 on 2023-08-19. Score: 0

After quite some time, I found the issue. the `1.28` branch of `microk8s` appeared to have be the culprit. When I switched to `1.27.4` it was all solved.


---

