Jenkins 4

[Jenkins] Jenkins agent 파드에 toleration 추가하는 방법

Jenkins의 agent를 JCasC로 관리하고 있습니다.Taint가 있는 노드에 agent를 배치할 필요가 있어서, toleration을 추가하는 방법을 알아보았습니다. Jenkins 관리 -> Clouds 메뉴에서 Pod Template을 보면, NodeSelector, Annotation 등 은 있지만, Toleration을 추가하는 메뉴가 없는 것을 확인할 수 있습니다.또한, 공식 문서의 Pod template 설정에도 toleration key가 없습니다. 이렇게 직접적으로 지원하지 않는 파드 설정은 yaml 키를 사용해서 설정할 수 있습니다. jenkins: clouds: - kubernetes: - label: "do-no..

Cloud & DevOps/CICD 2024.08.31

[Jenkins] JCasC로 프로젝트(job) 이름 규칙 정하기

개요 Jenkins를 관리할 때 프로젝트 이름에 규칙을 지정하고 준수가 필요하다면 Jenkins 관리 > 시스템 설정 > Restrict project naming 메뉴에서 정규식으로 지정할 수 있다. 하지만 helm으로 k8s 클러스터에 배포한 경우 JCasC로 설정을 하지 않으면 pod 재생성 시 설정이 지워져 다시 설정이 필요하다. 매번 설정을 다시 하는 것이 번거롭기 때문에 JCasC에 포함하여 helm으로 함께 배포하고자 한다. JCasC 란? Jenkins Configuration as Code의 약자로 Jenkins 설정을 UI가 아닌 코드로 지정하는 기능이다. ldap, 보안 설정 등 다양한 설정을 지정할 수 있으며, 설정이 코드에 남기 때문에 동일한 설정으로 여러 서버를 생성하거나 복구하..

Cloud & DevOps/CICD 2023.02.18

[Jenkins] jnlp agent

개요 kubernetes에 hem을 통해 jenkins를 배포할 때 Master는 statefulset으로, Agent는 Job 실행 시마다 Pod로 뜨게 설정할 수 있다. 이때 Master와 Agent를 연결하기 위해 JNLP(Java Network Launch Protocol)를 사용하고, 기본 agent 이미지인 jenkins/inbound-agent에 포함되어 있다. K8S에서 jnlp agent 사용하기 Jenkins를 k8s에 배포할 때 helm 차트를 주로 활용한다. values.yaml 파일에 아래 처럼 agent 설정이 포함되어있다. jenkins/inbound-agent 이미지에 tag로 다양한 버전을 지정할 수 있는데, controller와 일치하는 jdk 버전이 포함된 이미지(ex...

Cloud & DevOps/CICD 2023.02.18

Jenkins로 Terraform 자원 배포하기

0. 사전 준비 사항 Github 계정 Jenkins 서버 Terraform backend용 S3, DynamoDB 1. Terraform 플러그인 설치 [Jenkins] 1-1) Jenkins 관리 > 플러그인 관리 > 설치 가능 > terraform 검색 후 설치 1-2) Jenkins 관리 > Global Tool Configuration Terraform > Terraform installations > Add Terraform 클릭 1-3) Jenkins 서버 Terraform CLI 설치 링크 : https://www.terraform.io/downloads> 참고) Jenkins를 Docker Image로 배포한 경우 Docker Image 수정 필요 2. 신규 레파지토리 생성 및 파일 업로..

Cloud & DevOps/CICD 2022.05.08
반응형