Installing Cert-Manager with Helm¶
In my homelab, I'm eager to enhance the security and manage TLS certificates for my applications in Kubernetes. To achieve this, I'm installing Cert-Manager, a certificate management solution for Kubernetes. This allows me to easily create, manage, and renew SSL/TLS certificates for my services.
Prerequisites¶
Before I proceed with the installation, I need to ensure that the following prerequisites are in place:
- A functional Kubernetes cluster with K3s, including at least one master node and one or more worker nodes.
- Helm, the Kubernetes package manager, is installed on my master node.
- SSH access to my master node.
Installation Steps¶
Add Cert-Manager Helm Repository¶
To install Cert-Manager, I'll start by adding the Cert-Manager Helm chart repository to Helm:
Now, Helm is aware of the Cert-Manager Helm chart.
Install Cert-Manager¶
I'll use Helm to install Cert-Manager with the following command:
helm install cert-manager jetstack/cert-manager --namespace cert-manager --create-namespace --set installCRDs=true
This command deploys Cert-Manager into the cert-manager
namespace. It also instructs Helm to install Custom Resource Definitions (CRDs) as required by Cert-Manager.
Verify Cert-Manager Installation¶
To ensure that Cert-Manager is correctly installed and running, I'll run the following command:
This command should display the Cert-Manager pods within the cert-manager
namespace, indicating that Cert-Manager is active and ready to manage TLS certificates for my applications.
Step 4: Deploy Certificate Issuers¶
Cert-Manager uses "issuers" to determine how to issue certificates. I'll create and configure an issuer to start using Cert-Manager effectively. There are various types of issuers, including Let's Encrypt, which provides free TLS certificates.
Now that Cert-Manager is up and running in my homelab, I'm all set to start managing TLS certificates for my Kubernetes services and enhance the security of my applications.