1.5. Red Hat OpenShift GitOps 1.14.0 发行注记
Red Hat OpenShift GitOps 1.14.0 现在包括在 OpenShift Container Platform 4.12、4.13、4.14、4.15、4.16 和 4.17 中。
1.5.1. 勘误更新 复制链接链接已复制到粘贴板!
发布日期:24 年 9 月 18 日
此发行版本中包括的安全修复列表包括在以下公告中:
如果您在 default 命名空间中安装了 Red Hat OpenShift GitOps Operator,请运行以下命令来查看此发行版本中的容器镜像:
oc describe deployment gitops-operator-controller-manager -n openshift-gitops-operator
$ oc describe deployment gitops-operator-controller-manager -n openshift-gitops-operator
1.5.2. 新功能 复制链接链接已复制到粘贴板!
- 在这个版本中,用户可以自定义集群范围的 Argo CD 实例中 Application Controller 组件的权限。Red Hat OpenShift GitOps Operator 会创建一个聚合的集群角色,您可以配置其权限,将多个集群角色组合成一个角色。GITOPS-4681
在这个版本中,为多源应用程序引进了以下改进:
- 您可以访问修订历史记录,并回滚到特定版本的多源应用程序。Details 视图面板显示多源应用程序中的每个源的最新修订或提交详情。History 和 Rollback 面板显示与每个源关联的修订历史记录;您可以选择要回滚到的版本。GITOPS-4647
- 新的 SOURCES 选项卡显示多源应用的所有源参数。使用 SOURCES 选项卡,您可以使用 Web UI 中的表单查看和编辑参数值。GITOPS-4192
在这个版本中,您可以通过挂载持久性卷来扩展存储库服务器存储。repo 服务器利用
EmptyDir默认存储卷,它有限制,并可能会在涉及大量存储库、可大小的存储库或包含大型清单的存储库的情况下被证明。您可以使用 Argo CD 自定义资源(CR)中的.spec.repo.volumes和.spec.repo.volumeMounts字段根据需要挂载额外存储。GITOPS-4646如需更多信息,请参阅 Repo Server 的 HA。
- 在这个版本中,您可以实施一个替代分片算法,该算法使用与绑定负载的一致哈希。该算法可确保在分片间统一分布受管集群,同时尽量减少配置更改期间重新影响的需求,如受管集群或分片数量调整。GITOPS-3584
在这个版本中,Red Hat OpenShift GitOps 支持 Server 和 Application Controller 组件的
sidecar和init容器。您可以使用 Argo CD CR 中的spec.server.,sidecarContainersspec.controller.sidecarContainers,spec.server.initContainers, 和spec.controller.initContainers字段配置 sidecar 和init容器。GITOPS-5010Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这个版本中,您可以在 Argo CD 生成的 Kubernetes 事件上公开 Argo CD Application 标签。当为在
argocd-cm配置映射中的resource.includeEventLabelKeys字段中定义的应用程序创建事件时,控制器会将匹配的标签添加到这些事件。此功能增强有助于根据应用程序标签过滤和处理事件。要在 GitOps 环境中设置resource.includeEventLabelKeys字段,请使用 Argo CD CR 中的.spec.extraConfig字段。GitOps Operator 会自动将.spec.extraConfig字段中的这些字段添加到argocd-cm配置映射中。GITOPS-3233Example
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如需更多信息,请参阅 应用程序事件的标签。
在这个版本中,您可以验证使用 Git 生成器创建的
ApplicationSetCRD 的提交签名。GITOPS-3049注意签名验证不适用于
ApplicationSetCRD Git Generator 中的 templated project 字段。
1.5.3. 修复的问题 复制链接链接已复制到粘贴板!
- 在此次更新之前,用户无法在 Argo CD web UI 或 CLI 中为多源应用程序执行回滚。在这个版本中解决了这个问题,用户可以使用 Argo CD web UI 或 CLI 为多源应用程序执行回滚。GITOPS-3996
-
在此次更新之前,
ApplicationSetController 角色不包括AppProject资源的列表和监视权限。因此,应用程序生成过程中会出现错误。在这个版本中解决了这个问题,为ApplicationSetController 角色授予必要的权限。GITOPS-5401 -
在此次更新之前,因为 Kubernetes v1.29 中引入了新的
.status.lastPhaseTransitionTime字段,Argo CD 无法在 OpenShift Container Platform v4.16 上同步PersistentVolume资源。在这个版本中,修改 Argo CD 中的 Kubernetes 静态方案解决了这个问题。GITOPS-5167 -
在此次更新之前,Red Hat OpenShift GitOps Operator 包含一个竞争条件,其中 OpenShift Service CA 在设置默认 TLS 终止策略前创建 TLS secret。因此,默认策略被设置为
Passthrough而不是Reencrypt。在这个版本中,通过验证 OpenShift Service CA 创建了 secret,确保Reencrypt用作正确的默认策略来解决这个竞争条件。GITOPS-4947 - 在此次更新之前,在 Red Hat OpenShift Service on AWS 集群后,您无法登录到 Argo CD web 控制台 UI,其中包括 GitOps Operator 和使用基于 Dex 的 SSO 配置的 Argo CD 实例,从休眠中恢复。登录屏幕将显示在 Dex 配置中指示无效重定向 URI 的错误。在这个版本中,确保在修改 Argo CD 服务器路由时,在 Argo CD 配置中更新正确的 Dex 重定向 URL 解决了这个问题。GITOPS-4358
在此次更新之前,为 ApplicationSet GitLab SCM 提供程序添加自签名 TLS 证书无法正常工作,因为证书无法在所需卷中挂载。在这个版本中,通过更正卷挂载路径并提供使用此功能的文档解决了这个问题。现在,用户需要确保配置映射的名称为
argocd-appset-gitlab-scm-tls-certs-cm。GITOPS-4801注意TLS 证书配置映射的密钥必须标记为 'cert',因为这充当挂载的证书的文件名。由于将在以后的版本中解决的上游错误,其他密钥名称将无效。以下是可用于挂载 TLS 证书的配置映射示例。
Example
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如需更多信息,请参阅将 Gitlab SCM 提供程序的自签名 TLS 证书添加到 ApplicationSet Controller。
1.5.4. 有问题的更改 复制链接链接已复制到粘贴板!
1.5.4.1. 带有空 secret 值的集群 secret 复制链接链接已复制到粘贴板!
当您升级到 Red Hat OpenShift GitOps v1.14 时,带有空项目值的集群 secret 不再被归类为适用于所有
Applications和ApplicationSets资源的全局 secret。在之前的 GitOps 版本中,任何
Application或ApplicationSet资源都可以使用与repoUrl字段中指定的 URL 匹配的集群 secret。从 Red Hat OpenShift GitOps v1.14 开始,只考虑与存储库 URL 匹配应用程序的项目的集群 secret。因此,如果集群 secret 被指定为项目 A,分配给项目 B 的应用程序将无法访问该 secret。要允许不同项目间的应用程序使用集群 secret,您必须删除
project字段。如需更多信息,请参阅 Cluster secret scoping changes。GITOPS-5623