iT邦幫忙

2024 iThome 鐵人賽

DAY 3
0
Kubernetes

使用K3s打造我的家庭實驗室系列 第 3

安裝 Cert-Manager

  • 分享至 

  • xImage
  •  

安裝Cert-Manager

使用 values.yaml 安裝 Cert-Manager

Cert-Manager 是一個用於管理 TLS/SSL 證書的 Kubernetes 控制平臺。它可以幫助我們自動獲得和更新憑證,免去手動管理憑證的麻煩。

步驟 1:建立 values.yaml 檔案

首先,我們需要在相同的目錄下建立一個名為 values.yaml 的檔案。內容如下:

ingressShim:
  defaultIssuerName: letsencrypt-prod
  defaultIssuerKind: ClusterIssuer

這個檔案會設定 Cert-Manager 的環境變數。

步驟 2:安裝 Helm Repository

然後,我們需要安裝 Cert-Manager 的 Helm Repository:

helm repo add jetstack https://charts.jetstack.io

這個命令會新增 Cert-Manager 的 Helm Repository。

步驟 3:安裝 Cert-Manager

接下來,我們可以使用以下命令安裝 Cert-Manager:

helm install cert-manager jetstack/cert-manager -f values.yaml --set installCRDs=true

這個命令會載入 Cert-Manager 的 Helm Chart,並安裝它到您的 Kubernetes 集群中。

步驟 4:啟動和檢查Cert-Manager

重新啟動 Pod 以便取得更新的配置:

kubectl rollout restart deployment cert-manager

接著,使用以下命令檢查 Cert-Manager 的狀態:

kubectl get deploy cert-manager -o yaml

建立 Cluster Issuer

Cluster Issuer 是一個用於發行憑證的 Kubernetes 物件。它可以幫助我們自動發行憑證,免去手動管理憑證的麻煩。

步驟 1:創建 cluster-issuer.yaml 檔案

首先,我們需要在相同的目錄下建立一個名為 cluster-issuer.yaml 的檔案。內容如下:

apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
    name: letsencrypt-prod
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    email: xxx@example.com

    # Name of a secret used to store the ACME account private key
    privateKeySecretRef:
      name: letsencrypt-prod
    solvers:
      - selector:
          dnsZones:
            - "example.com"
        dns01:
          cloudflare:
            apiTokenSecretRef:
              name: cloudflare-api-token-secret
              key: api-token

這個檔案會設定 Cluster Issuer 的環境變數。

步驟 2:申請 Cluster Issuer

然後,我們可以使用以下命令申請 Cluster Issuer:

kubectl apply -f cluster-issuer.yaml

這個命令會創建一個名為 letsencrypt-production 的 Cluster Issuer。

步驟 3:檢查 Cluster Issuer

接著,我們可以使用以下命令檢查 Cluster Issuer 是否已經成功建立:

kubectl get clusterissuers -o yaml

這個命令會顯示所有 Cluster Issuer 的清單,包括我們剛剛創建的 letsencrypt-production

注意:

  • 您需要更換 your_email_address 成您的實際電子郵箱地址。
  • 這個步驟只需要進行一次,就可以用於任何應用程式了。

您現在已經成功安裝了 Cert-Manager!下一步將是啟動和檢查 External-DNS 並更新 Cloudflare 上的 DNS 記錄。


上一篇
安裝external-dns
下一篇
安裝 MetalLB
系列文
使用K3s打造我的家庭實驗室4
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言