Cara Install SSL Let's Encrypt Pada Ingress Kubernetes Menggunakan Traefik dan Cert-Manager
0 people liked this article

A. Pendahuluan
Let's Encrypt merupakan Certificate Authority (CA) gratis dan otomatis yang banyak digunakan untuk mendapatkan sertifikat SSL secara mudah. Namun, untuk mengelola dan memperbarui sertifikat secara otomatis dalam lingkungan Kubernetes, dibutuhkan alat pendukung seperti Traefik (sebagai Ingress Controller) dan Cert-Manager (sebagai automated certificate management).
Dalam knowledge base ini, akan dijelaskan langkah-langkah untuk menginstal SSL dari Let's Encrypt pada cluster Kubernetes yang menggunakan Traefik sebagai ingress controller, serta Cert-Manager sebagai pengelola sertifikat otomatis. Panduan ini ditujukan bagi DevOps engineer, sysadmin, maupun developer yang ingin memastikan aplikasinya berjalan aman di atas Kubernetes menggunakan HTTPS.
B. Persiapan
- NEO Kubernetes
C. Instalasi dan Konfigurasi
1. Install Cert-Manager via Helm
Tambahkan repo dan install cert-manager (dengan CRD-nya):
helm repo add jetstack <https://charts.jetstack.io>
helm repo update
# Install cert-manager dan CRD
kubectl create namespace cert-manager
helm install cert-manager jetstack/cert-manager \\
--namespace cert-manager \\
--set installCRDs=true
Tunggu semua pod jalan:
kubectl get pods -n cert-manager
2. Buat ClusterIssuer Let's Encrypt
Buat file cluster-issuer.yaml:
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-prod
spec:
acme:
email: your-email@example.com
server: <https://acme-v02.api.letsencrypt.org/directory>
privateKeySecretRef:
name: letsencrypt-prod-private-key
solvers:
- http01:
ingress:
class: traefik
Ganti your-email@example.com dengan email kamu.
Apply:
kubectl apply -f cluster-issuer.yaml
3. Update Ingress Agar Support TLS
Buat atau update ingress.yaml seperti ini:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: nodejs-ingress
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
traefik.ingress.kubernetes.io/router.entrypoints: websecure
spec:
ingressClassName: traefik
tls:
- hosts:
- sub-domain.id
secretName: sub-domain-tls
rules:
- host: sub.domain.id
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: nodejs-service
port:
number: 80
Apply ulang:
kubectl apply -f ingress.yaml
4. Verifikasi TLS
Cek cert sudah dibuat:
kubectl get certificate
kubectl describe certificate sub-domain-tls
D. Uji Coba
Coba akses:
curl -v <https://sub.domain.id>
Browser juga harus menampilkan padlock/secure (HTTPS) jika berhasil.
E. Kesimpulan
Dengan menggunakan Traefik sebagai ingress controller dan Cert-Manager untuk mengelola sertifikat, proses instalasi SSL Let's Encrypt pada Kubernetes menjadi lebih otomatis, efisien, dan aman. Implementasi ini memastikan lalu lintas data antar aplikasi dan pengguna terlindungi oleh enkripsi HTTPS, serta memudahkan proses pembaruan sertifikat tanpa intervensi manual. Dengan demikian, keamanan aplikasi di lingkungan Kubernetes dapat terjaga dengan baik dan operasional menjadi lebih sederhana.
Selamat! Anda sudah bisa Install SSL Let's Encrypt Pada Ingress Kubernetes Menggunakan Traefik dan Cert-Manager. Semoga artikel ini dapat membantu Anda. Temukan bantuan lainnya melalui Knowledge Base Biznet Gio. Jika Anda masih memiliki kendala silakan hubungi Support Biznet GIO melalui email support@biznetgio.com atau live chat maupun WA ke website www.biznetgio.com dan bisa juga melalui telepon ke nomor (021) 5714567.
Popular Articles
-
Cara Install & Konfigurasi Monitoring Cacti Serta Mengetahui Fungsi Fitur Pada Cacti
10 people say this guide was helpful
-
Cara Mengaktifkan Telnet pada Windows 7, 8 dan 10
4 people say this guide was helpful
-
Install dan Konfigurasi Samba Server pada Ubuntu
2 people say this guide was helpful
-
Instalasi DNS Server Menggunakan Service Bind di CentOS 7
4 people say this guide was helpful