I’m experienced with Kubernetes but new to K10. I’m deploying it on my cluster via the K10 Helm chart. I’m running into a problem with the Ingress settings. I’m using cert-manager to provision a TLS cert via Let’s Encrypt, which I do regularly. Something is wrong with the Ingress resource generated by the Helm chart that means the http01 solver of cert-manager does not complete successfully.
This is the relevant part of my values for the Helm chart:
global:
ingress:
create: true
urlPath: "" #url path for k10 gateway
ingress:
create: true
tls:
enabled: true
secretName: ingress-tls
class: public
host: backup.mydomain.com
urlPath: "" #url path for k10 gateway
pathType: ImplementationSpecific
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
Cert remains unprovisioned:
$ kubectl get cert
NAME READY SECRET AGE
ingress-tls False ingress-tls 25m
The generated Ingress resource:
$ kubectl get ing k10-ingress -o yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
meta.helm.sh/release-name: k10
meta.helm.sh/release-namespace: kasten-io
creationTimestamp: "2023-09-05T19:08:51Z"
generation: 9
labels:
app: k10
app.kubernetes.io/instance: k10
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: k10
helm.sh/chart: k10-6.0.6
heritage: Helm
release: k10
name: k10-ingress
namespace: kasten-io
resourceVersion: "89575587"
uid: 0af872d8-85e3-4634-b580-004b5da7c821
spec:
ingressClassName: public
rules:
- host: backup.mydomain.com
http:
paths:
- backend:
service:
name: gateway
port:
number: 8000
path: /k10/
pathType: ImplementationSpecific
tls:
- hosts:
- backup.mydomain.com
secretName: ingress-tls
status:
loadBalancer:
ingress:
- ip: 127.0.0.1
I can’t personally see anything wrong with that Ingress record but all my other Ingresses on the cluster work and can successfully provision TLS certs