Skip to content

v2.2 至 2.3

Argo CD 通知和 ApplicationSet 捆绑到 Argo CD 中

Argo CD Notifications 和 ApplicationSet 现已成为 Argo CD 的一部分,您不再需要单独安装。 Notifications 和 ApplicationSet 组件已捆绑到默认的 Argo CD 配置清单中。

捆绑的配置清单可以直接替换以前的版本。 如果您使用 kustomize 将配置清单捆绑在一起,那么只需移除对 https://github.com/argoproj-labs/argocd-notifications 和 https://github.com/argoproj-labs/applicationset 的引用即可。

如果您正在使用argo-notifications helm chart,您可以将图表values移至 argo-cd 图表values的 "notifications "部分。虽然大多数值保持不变,但详情请查找与您相关的值。

如果被引用 kubectl apply 则无需执行任何操作。

配置 Argo CD 的其他二进制文件

我们已从镜像(#7668)中删除了非 Linux Argo CD 二进制文件(Darwin amd64 和 Windows amd64),并删除了用户界面帮助页面中的相关下载按钮。

这些被移除的二进制文件仍将包含在发布资产中,我们在 #7755 中对其进行了配置。您可以通过在 argocd-cm ConfigMap 中添加以下内容来为其他操作系统架构添加下载按钮:

apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-cm
  namespace: argocd
  labels:
    app.kubernetes.io/name: argocd-cm
    app.kubernetes.io/part-of: argocd
data:
  help.download.linux-arm64: "path-or-url-to-download"
  help.download.darwin-amd64: "path-or-url-to-download"
  help.download.darwin-arm64: "path-or-url-to-download"
  help.download.windows-amd64: "path-or-url-to-download"

从基础镜像中移除 Python

如果您正在使用依赖于 Python 的 Config Management Plugin,则需要在 Argo CD 基础上构建一个自定义镜像来安装 Python。

升级版 kustomize

请注意,捆绑的 kustomize 版本已从 4.2.0 升级到 4.4.1。

Helm 升级版本

请注意,捆绑的 Helm 版本已从 3.7.1 升级到 3.8.0。

2.3.7 中移除了对使用 SHA-1 签名散列算法的私有 repo SSH 密钥的支持

Argo CD 2.3.7 将其基本镜像从 Ubuntu 21.04 升级到了 Ubuntu 22.04,将 OpenSSH 升级到了 8.9。从 8.8 开始的 OpenSSH 放弃了对 ssh-rsa SHA-1 密钥签名算法的支持

签名算法与生成密钥时被引用的算法是_不_相同的。 没有必要更新密钥。

在建立连接时,会与 SSH 服务器协商签名算法。 客户端会提供其可接受的签名算法列表,如果服务器有匹配的算法,连接就会继续。 对于最新的 git Provider 上的大多数 SSH 服务器来说,除了 "ssh-rsa "之外,应该还有其他可接受的算法。

在升级到 Argo CD 2.3.7 之前,请检查使用 SSH 验证的 git Provider 是否支持比 rsa-ssh 更新的算法。

1.确保你的 SSH 版本大于等于 8.9(Argo CD 被引用的版本)。如果不是,请升级后再继续。 shell ssh -V ```示例输出:OpenSSH_8.9p1 Ubuntu-3, OpenSSL 3.0.2 2022年3月15日```示例输出 2.一旦有了最新版本的 OpenSSH,请按照 [OpenSSH 8.8 发布说明](https://www.openssh.com/txt/release-8.7) 中的指示操作: > 要检查服务器是否正在使用弱 ssh-rsa 公钥 > 要检查服务器是否使用弱 ssh-rsa 公钥算法进行主机身份验证,请在 > 从 ssh(1) 的允许列表中删除 ssh-rsa 算法: > >shell > ssh -oHostKeyAlgorithms=-ssh-rsa user@host > > > 如果主机密钥验证失败,且没有其他支持的主机密钥 > 如果主机密钥验证失败,且没有其他支持的主机密钥类型,则应升级该主机上的服务器软件。 > 升级。 如果服务器不支持可接受的版本,则会出现类似下面的错误;```` $ ssh -oHostKeyAlgorithms=-ssh-rsa vs-ssh.visualstudio.com 无法与 20.42.134.1 端口 22 协商:未找到匹配的主机密钥类型。他们提供:ssh-rsa这表明服务器需要更新其支持的密钥签名算法,Argo CD 将无法连接该服务器。 与之连接。

解决方法

如果无法更改服务器的密钥签名算法配置,OpenSSH 8.8 发布说明 描述了一种解决方法。

> Incompatibility is more likely when connecting to older SSH > implementations that have not been upgraded or have not closely tracked > improvements in the SSH protocol. For these cases, it may be necessary > to selectively re-enable RSA/SHA1 to allow connection and/or user > authentication via the HostkeyAlgorithms and PubkeyAcceptedAlgorithms > options. For example, the following stanza in ~/.ssh/config will enable > RSA/SHA1 for host and user authentication for a single destination host: > > > Host old-host > HostkeyAlgorithms +ssh-rsa > PubkeyAcceptedAlgorithms +ssh-rsa > > > We recommend enabling RSA/SHA1 only as a stopgap measure until legacy > implementations can be upgraded or reconfigured with another key type > (such as ECDSA or Ed25519).

要将此应用于 Argo CD,可以创建一个包含所需 ssh 配置文件的 ConfigMap,然后将其挂载到 /home/argocd/.ssh/config