文件

cert-manager

使用 cert-manager 管理 TLS 憑證

本指南將向您展示如何安裝 cert-manager 以進行 TLS 憑證管理。本指南假設是新的或全新的 MinIO Operator 安裝。

注意

本指南使用自我簽署的 Cluster Issuer。您也可以使用 cert-manager 支援的其他發行者

主要區別在於,您必須向 MinIO 提供該 Issuer CA 憑證,而不是本指南中提到的 CA。

如需更進階的設定,請參閱 cert-manager 文件和您自己組織的憑證需求。

cert-manager 管理 Kubernetes 叢集內的憑證。MinIO Operator 支援使用 cert-manager 來管理和佈建憑證,作為 MinIO Operator 為自己及其租戶管理憑證的替代方案。

cert-manager 從 IssuerClusterIssuer 取得有效的憑證,並且可以在憑證到期前自動續訂憑證。

ClusterIssuer 為多個命名空間發行憑證。Issuer 僅為其自己的命名空間生成憑證。

下圖描述了 cert-manager 如何在 Kubernetes 叢集的命名空間中提供憑證。

  • ClusterIssuer 存在於 Kubernetes 叢集的根層級,通常是 default 命名空間,為所有其他命名空間提供憑證。

  • minio-operator 命名空間接收其自己的本機 Issuer

  • 每個租戶的命名空間都會收到自己的本地 Issuer

  • 每個租戶命名空間發行的憑證,必須讓 MinIO Operator 知道並信任。

A graph of the namespaces in a Kubernetes cluster showing the relationship between the root level ClusterIssuer and three other namespaces with their own Issuer.

先決條件

設定 cert-manager

安裝 cert-manager

以下命令使用 kubectl 安裝 1.12.13 版本。

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.12.13/cert-manager.yaml

建議使用 1.12.X LTS 版本,但您也可以安裝最新版本。有關安裝 cert-manager 的更多詳細資訊,請參閱其安裝說明

為叢集建立自我簽署的叢集簽發者

Cluster Issuer 是叢集中所有其他憑證的頂層簽發者。

  1. 透過建立 ClusterIssuer 資源,要求 cert-manager 產生此資源。

    建立一個名為 selfsigned-root-clusterissuer.yaml 的檔案,內容如下:

    # selfsigned-root-clusterissuer.yaml
    apiVersion: cert-manager.io/v1
    kind: ClusterIssuer
    metadata:
      name: selfsigned-root
    spec:
      selfSigned: {}
    
  2. 將資源套用至叢集

    kubectl apply -f selfsigned-root-clusterissuer.yaml
    

下一步

設定 用於 MinIO Operator 的 cert-manager