sysnet4admin / _Book_k8sInfra

< 컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 >
431 stars 174 forks source link

[5.3.3 / p322] 젠킨스 plugin 인증서 이슈 #23

Closed sysnet4admin closed 2 years ago

sysnet4admin commented 2 years ago

문제

에러 로그 Update information obtained: 8.1 sec ago There were errors checking the update sites: Signature verification failed in update site &#039;default&#039; <a href='#' class='showDetails'>(show details)</a><pre style='display:none'>java.security.cert.CertificateExpiredException: NotAfter: Tue Jun 14 19:42:00 KST 2022<br> at sun.security.x509.CertificateValidity.valid(CertificateValidity.java:277)<br> at sun.security.x509.X509CertImpl.checkValidity(X509CertImpl.java:677)<br> at sun.security.provider.certpath.BasicChecker.verifyValidity(BasicChecker.java:190)<br> at sun.security.provider.certpath.BasicChecker.check(BasicChecker.java:144)<br> at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:125)<br>Caused: java.security.cert.CertPathValidatorException: validity check failed<br> at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:135)<br> at

에러 화면 image

상태

문제 확인 중

sysnet4admin commented 2 years ago

문제 원인

20 와 #21 이슈로 인해 update-center.json을 고정했는데, 이에 인증서 또한 함께 고정된 것이 원인이었습니다.

update-center.json의 인증서 부분 일부 80389 "signature": { 80390 "certificates": ["MIIFYTCCA0kCBQDerb78MA0GCSqGSIb3DQEBDQUAMIGKMQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5pYTERM A8GA1UEBwwIU2FuIEpvc2UxGDAWBgNVBAoMD0plbmtpbnMgUHJvamVjdDEaMBgGA1UEAwwRS29oc3VrZSBLYXdhZ3VjaGkxHTAbBgkqhkiG9w0BCQEWDmtr <snipped>

이에 해당 certifications(인증/인증서)를 체크하지 않도록 코드를 변경하였습니다. 실제 업무적으로는 인증서를 주기적으로 업데이트하도록 하나, 저희는 데스크탑/노트북내에 있는 가상 환경이기 때문에 이와 같이 처리한 것입니다. jenkins-install.sh 변경

   1   │ #!/usr/bin/env bash
   2   │ jkopt1="--sessionTimeout=1440"
   3   │ jkopt2="--sessionEviction=86400"
   4   │ jvopt1="-Duser.timezone=Asia/Seoul"
   5   │ jvopt2="-Dcasc.jenkins.config=https://raw.githubusercontent.com/sysnet4admin/_Book_k8sInfra/main/ch5/5.3.1/jenkins-config.yaml
       │ "
   6 + │ jvopt3="-Dhudson.model.DownloadService.noSignatureCheck=true".  <<< 추가
   7   │
   8   │ helm install jenkins edu/jenkins \
   9   │ --set persistence.existingClaim=jenkins \
  10   │ --set master.adminPassword=admin \
  11   │ --set master.nodeSelector."kubernetes\.io/hostname"=m-k8s \
  12   │ --set master.tolerations[0].key=node-role.kubernetes.io/master \
  13   │ --set master.tolerations[0].effect=NoSchedule \
  14   │ --set master.tolerations[0].operator=Exists \
  15   │ --set master.runAsUser=1000 \
  16   │ --set master.runAsGroup=1000 \
  17   │ --set master.tag=2.249.3-lts-centos7 \
  18   │ --set master.serviceType=LoadBalancer \
  19   │ --set master.servicePort=80 \
  20   │ --set master.jenkinsOpts="$jkopt1 $jkopt2" \
  21 ~ │ --set master.javaOpts="$jvopt1 $jvopt2 $jvopt3"    <<< $jvoopt3 추가 

문제 해결 확인

배포된 jenkins 삭제

[root@m-k8s 5.3.1]# helm uninstall jenkins 
release "jenkins" uninstalled

소스 코드 업데이트 이후!!! 다시 jenkins 배포

[root@m-k8s 5.3.1]# ./jenkins-install.sh 
NAME: jenkins
LAST DEPLOYED: Fri Jul  8 06:36:00 2022
NAMESPACE: default
STATUS: deployed
<snipped> 

업데이트 이후 배포된 jenkins image

image

현재 이슈는 1주일간 모니터링 된 후에 Close 됩니다. 감사합니다. 조 훈, 심근우, 문성주 드림