首页 > 解决方案 > Spinnaker 无法从 Artifactory 下载舵图

问题描述

说明: Spinnaker 无法从配置的 Artifactory 源下载 helm-charts。

这是来自 clouddriver pod 的堆栈跟踪日志 -

WARN 1 --- [0.0-7002-exec-5] c.n.s.k.w.e.GenericExceptionHandlers : Handled error in generic exception handler\n\ncom.netflix.spinnaker.kork.web.exceptions.NotFoundException: Failed to download chart names for 'helm-virtual' account\n\tat

堆栈跟踪

com.netflix.spinnaker.kork.web.exceptions.NotFoundException:无法在 com.netflix.spinnaker.clouddriver.artifacts.helm.HelmArtifactCredentials.getArtifactNames(HelmArtifactCredentials.java:75) 下载“helm-virtual”帐户的图表名称~ [clouddriver-artifacts.jar:na] at com.netflix.spinnaker.clouddriver.controllers.ArtifactController.getNames(ArtifactController.java:73) ~[clouddriver-web.jar:na] at java.base/jdk.internal.reflect .NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal。 reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.springframework。 web.method.support。InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) ~[spring-web-5.2.4.RELEASE.jar:5.2.4.RELEASE]

这适用于具有相同版本和 Artifactory 源的另一个 Spinnaker 部署。

重现步骤:

https://spinnaker-gate-url/artifacts/account/gd-helm-virtual/names?type=helm%2Fchart 返回

{"timestamp":1608171853207,"status":404,"error":"Not Found","message":"404","body":"{"error":"Not Found","message":"无法下载 'gd-helm-virtual' 帐户的图表名称","status":404,"timestamp":"2020-12-17T02:24:13.202+00:00"}","url":"http ://spin-clouddriver.spinnaker:7002/artifacts/account/helm-virtual/names?type=helm%2Fchart"}

其他详细信息: 配置了 hal config artifact helm enable,Artifactory URL 不需要基本身份验证。

Spinnaker 版本 1.22.1 升降索 1.40.0

标签: kubernetesspinnakerspinnaker-halyard

解决方案


想通了问题。Spinnaker clouddriver pod 需要使用正确的 dnsConfig 进行修补

kubectl -n spinnaker patch deployment spin-clouddriver --patch '{"spec":{"template":{"spec":{"dnsConfig":{"options":[{"name":"ndots","value":"2"}]}}}}}'

推荐阅读