无法将存储库添加到ArgoCD

问题描述 投票:0回答:1

我们目前正在尝试使用 argocd helm 图表 (7.2.0) 在我们的 kubernetes 集群上配置高可用性 ArgoCD 实例来配置我们的应用程序。我们的基础设施位于 AWS 上,并通过用 TypeScript 编写的 AWS CDK 组合在一起。

到目前为止,我们已经成功使用以下 cdk 片段部署了 argocd helm 图表:

const argoCDHelmChart = this.cluster.addHelmChart('argocd-helmchart',
    {
        repository: 'https://argoproj.github.io/argo-helm',
        chart: 'argo-cd',
        version: '7.2.0',
        namespace: 'argocd',
        release: 'argo-cd',
        values: {
            "redis-ha": { enabled: true },
            controller: {
                serviceAccount: { create: false },
                replicas: 1,
                envFrom: [{ secretRef: { name: 'proxy-config' }}]
            },
            server: {
                serviceAccount: { create: false },
                autoscaling: { enabled: false, minReplicas: 1 },
                envFrom: [{ secretRef: { name: 'proxy-config' }}]
            },
            repoServer: {
                autoscaling: { enabled: false, minReplicas: 1 },
                envFrom: [{ secretRef: { name: 'proxy-config' }}]
            },
            applicationSet: {
                replicas: 1,
                extraEnvFrom: [{ secretRef: { name: 'proxy-config' }}]
            },
        },
    }
)

但是,当我们尝试使用以下 cli 命令将存储库添加到 argocd 时:

argocd repo add OUR_REPO_URL --server-name argo-cd-argocd-server --username OUR_USERNAME --password OUR_PASSWORD

我们收到以下错误:

FATA[0000] rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: failed to do connect handshake, response: \"HTTP/1.1 403 Forbidden\\r\\nContent-Length: 10\\r\\nContent-Type: text/plain; charset=utf-8\\r\\nDate: Thu, 25 Jul 2024 13:52:19 GMT\\r\\nX-Content-Type-Options: nosniff\\r\\n\\r\\nForbidden\\n\""

我们已经尝试/验证了以下内容:

  • 我们所有的豆荚都很健康。
  • 从 argocd-server/argocd-repo-server pod 中,使用相同的密码和用户名组合,我们实际上可以访问我们的存储库(git ls-remote / git clone 可与存储库配合使用),因此这不是代理或凭据问题.
  • 尝试将应用程序添加到 ArgoCD 时,应用程序变得正常,但 UI 上的状态显示与上面 (cli) 相同的错误
  • 当我们配置 argocd 从 kubernetes 集群的 config-map 获取 github 存储库配置时,我们遇到了同样的错误

如果这有什么帮助的话,这些是我们在集群中拥有的 argocd pod:

  • argo-cd-argocd-application-controller-0
  • argo-cd-argocd-applicationset-controller-885b744c4-v7pnv
  • argo-cd-argocd-dex-server-6f99bdb67d-tnf6c
  • argo-cd-argocd-notifications-controller-5869f85784-pdpll
  • argo-cd-argocd-redis-secret-init-vgkr6
  • argo-cd-argocd-repo-server-8679c8c796-69v2q
  • argo-cd-argocd-server-fcb9d7f76-9kk9j
  • argo-cd-redis-ha-haproxy-7fb5cb44cc-l4c8m
  • argo-cd-redis-ha-haproxy-7fb5cb44cc-twrkj
  • argo-cd-redis-ha-haproxy-7fb5cb44cc-vkqrm
  • argo-cd-redis-ha-server-0
  • argo-cd-redis-ha-server-1
  • argo-cd-redis-ha-server-2

总而言之,我们怀疑 argocd-server pod 无法与 argocd-repo-server pod 进行通信/到达。

如果您能指出这里可能出现的问题,或者我们如何验证 Pod 是否可以相互通信,我们将不胜感激。

kubernetes grpc kubernetes-helm argocd gitops
1个回答
0
投票

尝试使用此命令:

argocd repo add OUR_REPO_URL  --name repo-name --insecure-ignore-host-key --ssh-private-key-path ~/.ssh/id_rsa

确保您从配置了 SSH 且可以访问存储库的计算机上运行它。这将使用 ssh 密钥而不是用户名/密码,并且过去对我有用,而用户名/密码总是给我带来访问问题。

© www.soinside.com 2019 - 2024. All rights reserved.