CRDs with Traefik for ingress

I'm deploying an application to a kubernetes (specifically k3s) environment, k3s deploys traefik for ingress if i ask it to. My goal is to enable mutual authentication on an ingress.

From the documentation I understand that traefik supports mutual authentication by configuring annotations on the ingress that refers to a TLSOption, and specifying the CA as a secret in this TLSOption's spec.

When I went to create the TLSOption kubectl apply -f mytlsoption it failed because it didn't recognize the TLSOption.

Can somebody explain how to achieve mutual tls on a k3s ingress using Traefik for ingress? Or why the CRDs aren't recognized? Whenever I see CRDs I think there must be an operator or something somewhere that declares the CRDs and manages them so it feels like I haven't deployed something?

Hey @terabyte

How did you install Traefik? Can you please check Kubernetes api-resources whether tlsoptions object is available?

Here is the example configuration that should works:

Was a mistake on my part, for some reason the version of traefik being deployed was old and didn't have the kubernetescrd deployed. Using the latest k3s it deploys a good version of traefik which responds properly to the TLSOption CRDs and others.