首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spin-Igor无法查询Jenkins

Spin-Igor无法查询Jenkins
EN

Stack Overflow用户
提问于 2020-01-21 05:35:17
回答 1查看 266关注 0票数 0

我很难让spin-igor从我们的Jenkins上查看作业。

Spinnaker 1.17.6

我们在jenkins上使用自定义CA。我已经使用以下命令将PKS信任存储添加到HAL配置中:

hal config webhook trust edit --trustStore /tmp/our-int.jks --trustStorePassword

然后手动将信任库信息添加到hal配置的jenkins master部分:

代码语言:javascript
复制
   trustStore: /tmp/our-int.jks
   trustStoreType: jks
   trustStorePassword: thepassword

日志只是显示一个500尝试读取,然后添加信任存储信息,我收到PKI错误,所以看起来信任存储正在工作。

我验证了我可以通过允许自签名证书的DNS从spin-igor容器获取文件,但是/api/xml被拒绝了(预计还没有进行身份验证):

代码语言:javascript
复制
bash-4.4$ wget --no-check-certificate https://jenkins.jx.internal.dns/login
Connecting to jenkins.jx.internal.dns (10.11.33.181:443)
login                100% |*************************************************************************************************************************************************************************************************************************|  1485  0:00:00 ETA
bash-4.4$ wget --no-check-certificate https://jenkins.jx.internal.dns/api/xml
Connecting to jenkins.jx.internal.dns (10.11.33.181:443)
wget: server returned error: HTTP/1.1 403 Forbidden

配置中的用户名/密码正确。我可以将它们从配置中复制出来并进行连接。为了连接,我还可以看些什么?下面是config的jenkins部分:

代码语言:javascript
复制
devops@a21de9934279:/home/spinnaker/.hal$ sudo cat /home/spinnaker/.hal/config | yq .deploymentConfigurations[].ci
{
  "jenkins": {
    "enabled": true,
    "masters": [
      {
        "name": "jenkins",
        "permissions": {},
        "address": "https://jenkins.jx.internal.dns/",
        "username": "admin",
        "password": "XXXXXXX",
        "csrf": true,
        "trustStore": "/tmp/out-int.jks",
        "trustStoreType": "jks",
        "trustStorePassword": "password"
      }
    ]
  }

以下是我能在spin-igor容器上找到的最相关的日志:

代码语言:javascript
复制
2020-01-20 19:02:30.680 ERROR 1 --- [RxIoScheduler-3] c.n.s.igor.jenkins.JenkinsBuildMonitor   : Failed to update monitor items for monitor=JenkinsBuildMonitor:partition=jenkins
com.netflix.hystrix.exception.HystrixRuntimeException: jenkins-covr-jenkins-getProjects failed and no fallback available.
        at com.netflix.hystrix.AbstractCommand$22.call(AbstractCommand.java:822) ~[hystrix-core-1.5.18.jar:1.5.18]
        at com.netflix.hystrix.AbstractCommand$22.call(AbstractCommand.java:807) ~[hystrix-core-1.5.18.jar:1.5.18]

代码语言:javascript
复制
Caused by: retrofit.RetrofitError: 500 Server Error
        at retrofit.RetrofitError.httpError(RetrofitError.java:40) ~[retrofit-1.9.0.jar:na]
        at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:388) ~[retrofit-1.9.0.jar:na]
        at retrofit.RestAdapter$RestHandler.invoke(RestAdapter.java:240) ~[retrofit-1.9.0.jar:na]

如果我通过网络浏览器登录到jenkins并点击/api/xml,我确实会得到数据,所以我有点困惑,不知道还能做什么。

我还按照说明在Jenkins上启用了CSRF。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2020-01-22 02:19:09

看起来我找到了另一个用户发布的解决方案(变通方法):https://github.com/spinnaker/spinnaker/issues/892#issuecomment-320336522 good 'ol #Jankins

tl/dr进入安全设置,将身份验证模式从"servlet容器“切换到"jenkins own”,然后手动添加用户..显然,k8s身份验证不知何故被破坏了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59831176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档