在自定义命名空间中运行 cert-manager

本主题介绍了如何为 cert-manager 指定自定义 Kubernetes 命名空间。

在大多数情况下,cert-manager 在 cert-manager 命名空间中运行。一些用户的公司政策可能会限制创建新的 Kubernetes 命名空间,或者其政策要求 cert-manager 在不同的命名空间中运行,例如 kube-system

为 cert-manager 指定自定义命名空间

  1. 根据需要创建命名空间:
    kubectl create namespace new-cert-manager-namespace
  2. 按照 cert-manager 文档的“安装:简介”中的说明安装 cert-manager。
  3. 向替换文件添加 certManager 节。
    certManager:
      namespace: new-cert-manager-namespace
        
  4. 应用命名空间更改:

    首先通过试运行进行测试:

    helm upgrade operator apigee-operator/ \
      --install \
      --namespace apigee-system \
      --atomic \
      -f OVERRIDES_FILE.yaml \
      --dry-run
    

    应用更改:

    helm upgrade operator apigee-operator/ \
      --install \
      --namespace apigee-system \
      --atomic \
      -f OVERRIDES_FILE.yaml
    
  5. 使用 kubectl get pods 命令验证 cert-manager 是否已正确安装到新命名空间中:
    kubectl get pods -n new-cert-manager-namespace
    NAME                                      READY   STATUS    RESTARTS   AGE
    cert-manager-1234567-abcde                1/1     Running   0          21s
    cert-manager-cainjector-23456789a-bcdef   1/1     Running   0          22s
    cert-manager-webhook-3456789ab-cdef0      1/1     Running   0          20s
  6. 如果 cert-manager 之前正在运行,请按照 cert-manager 文档的“卸载”中的说明删除 cert-manager 命名空间中的 cert-manager 实例。