1.2. 为启用了 autotls 的 Redis 配置 TLS


您可以通过在新的或已有的 Argo CD 实例中启用 autotls 设置来为 Redis 配置 TLS 加密。配置会自动置备 argocd-operator-redis-tls secret,且不需要进一步的步骤。目前,OpenShift Container Platform 是唯一受支持的 secret 供应商。

注意

默认情况下禁用 autotls 设置。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. 创建启用了 autotls 的 Argo CD 实例:

    1. 在 Web 控制台的 Administrator 视角中,使用左侧导航面板进入 Administration CustomResourceDefinitions
    2. 搜索 argocds.argoproj.io 并点 ArgoCD 自定义资源定义 (CRD)。
    3. CustomResourceDefinition 详情页面中,点 Instances 选项卡,然后点 Create ArgoCD
    4. 编辑或替换类似以下示例的 YAML:

      启用 autotls 的 Argo CD CR 示例

      apiVersion: argoproj.io/v1beta1
      kind: ArgoCD
      metadata:
        name: argocd 1
        namespace: openshift-gitops 2
      spec:
        redis:
          autotls: openshift 3
        ha:
          enabled: true 4

      1
      Argo CD 实例的名称。
      2
      要运行 Argo CD 实例的命名空间。
      3
      启用 autotls 设置并为 Redis 创建 TLS 证书的标记。
      4
      启用 HA 功能的 flag 值。如果不启用 HA,请不要包含此行,或者将标志值设为 false
      提示

      另外,您可以通过运行以下命令来在已经存在的 Argo CD 实例上启用 autotls 设置:

      $ oc patch argocds.argoproj.io <instance-name> --type=merge -p '{"spec":{"redis":{"autotls":"openshift"}}}'
    5. Create
    6. 验证 Argo CD pod 是否已就绪并在运行:

      $ oc get pods -n <namespace> 1
      1
      指定运行 Argo CD 实例的命名空间,如 openshift-gitops

      禁用 HA 的输出示例

      NAME                                  READY   STATUS    RESTARTS   AGE
      argocd-application-controller-0       1/1     Running   0          26s
      argocd-redis-84b77d4f58-vp6zm         1/1     Running   0          37s
      argocd-repo-server-5b959b57f4-znxjq   1/1     Running   0          37s
      argocd-server-6b8787d686-wv9zh        1/1     Running   0          37s

      注意

      启用 HA 的 TLS 配置需要一个至少有三个 worker 节点的集群。如果您启用了使用 HA 配置的 Argo CD 实例,可能需要几分钟时间才会显示输出。

      启用了 HA 的输出示例

      NAME                                       READY   STATUS    RESTARTS   AGE
      argocd-application-controller-0            1/1     Running   0          10m
      argocd-redis-ha-haproxy-669757fdb7-5xg8h   1/1     Running   0          10m
      argocd-redis-ha-server-0                   2/2     Running   0          9m9s
      argocd-redis-ha-server-1                   2/2     Running   0          98s
      argocd-redis-ha-server-2                   2/2     Running   0          53s
      argocd-repo-server-576499d46d-8hgbh        1/1     Running   0          10m
      argocd-server-9486f88b7-dk2ks              1/1     Running   0          10m

  3. 验证 argocd-operator-redis-tls secret 是否已创建:

    $ oc get secrets argocd-operator-redis-tls -n <namespace> 1
    1
    指定运行 Argo CD 实例的命名空间,如 openshift-gitops

    输出示例

    NAME                        TYPE                DATA   AGE
    argocd-operator-redis-tls   kubernetes.io/tls   2      30s

    secret 必须是 kubernetes.io/tls 类型,大小为 2

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.