argocd-server与argocd-repo-server之间的身份验证问题可以通过以下步骤解决:
kubectl get configmap argocd-repo-server-cm -n argocd -o jsonpath='{.data.config}'
确保配置文件中包含了正确的身份验证配置。
确定argocd-repo-server的身份验证方式。argocd-repo-server支持多种身份验证方式,包括使用用户名/密码、使用SSH私钥、使用Token等。根据实际情况选择合适的身份验证方式。
获取argocd-repo-server的身份验证凭据。根据所选的身份验证方式,获取argocd-repo-server的凭据。例如,如果使用用户名/密码进行身份验证,可以使用以下命令获取凭据:
kubectl get configmap argocd-secret -n argocd -o jsonpath='{.data.admin.password}'
将这些凭据保存到一个安全的位置,以便在后续的步骤中使用。
kubectl get configmap argocd-cm -n argocd -o jsonpath='{.data.config}'
在配置文件中,找到以下部分并进行修改:
repositories:
- name:
url:
credentials:
secretType:
secretName:
将
替换为argocd-repo-server中配置的存储库名称,将
替换为argocd-repo-server的URL。
将
替换为argocd-repo-server的身份验证方式,例如usernamePassword
、sshPrivateKey
或token
。
将
替换为保存argocd-repo-server凭据的Secret名称。
kubectl create secret generic argocd-repo-server-credentials \
--from-literal=username= \
--from-literal=password= \
-n argocd
将
和
替换为argocd-repo-server的用户名和密码。
kubectl rollout restart deployment argocd-server -n argocd
kubectl rollout restart deployment argocd-repo-server -n argocd
完成上述步骤后,argocd-server将使用提供的凭据进行身份验证与argocd-repo-server进行通信。