Search code examples
kubernetesdigital-oceanlets-encryptkubectl

No matches for kind ClusterIssuer on a Digital Ocean Kubernetes Cluster


I have been following this guide to create an nginx-ingress which works fine.

Next I want to create a ClusterIssuer object called letsencrypt-staging, and use the Let's Encrypt staging server but get this error.

kubectl create -f staging_issuer.yaml

error: unable to recognize "staging_issuer.yaml": no matches for kind "ClusterIssuer" in version "certmanager.k8s.io/v1alpha1"

I have searched for solutions but can't find anything that works for me or that I can understand. What I found is mostly bug reports.

Here is my yaml file I used to create the ClusterIssuer.

apiVersion: certmanager.k8s.io/v1alpha1
kind: ClusterIssuer
metadata:
 name: letsencrypt-staging
spec:
 acme:
   # The ACME server URL
   server: https://acme-staging-v02.api.letsencrypt.org/directory
   # Email address used for ACME registration
   email: your_email_address_here
   # Name of a secret used to store the ACME account private key
   privateKeySecretRef:
     name: letsencrypt-staging
   # Enable the HTTP-01 challenge provider
   http01: {}

Solution

  • Try following this link, the cert-manager LetsEncrypt has notified that it will be blocking all traffic for versions < 0.8.0, Hence you can use Jetstack's installation steps, and then you can follow

    this link to get TLS certificates creation, It has worked for me.

    Let me know, if you face issues