1 분 소요

Jenkins Kubernetes Plugin 설치

Jenkins Agent로 Kubernetes에 실행하기 위해 Kubernetes Plugin을 Jenkins에 설치하여 환경을 구성합니다.

Jenkins UI에서 Manage Jenkins > System Configuration > Manage Plugins >Available plugins 메뉴를 클릭합니다

Plugins 검색 입력 필드에서 Kubernetes 입력하고 다음과 같은 첫번째 Kubernetes [V] 선택, 왼쪽 하단에 Install without restart 버튼을 클릭합니다

Install Kubernetes Plugin

아래의 [v] “Restart Jenkins when installation is complete and no jobs are running” 버튼을 선택하여 jenkins를 재시작 합니다. admin 계정으로 로드인을 합니다

Manage Jenkins > System Configuration > Manage Nodes and Clouds를 선택합니다.

Configure Clouds를 선택하고, Combo 박스에서 Kubernetes를 선택합니다.

Install Kubernetes Plugin

Kubernetes 접속하기 위한 Credentials 정보를 입력하면이 다음과 같이 출력됩니다. Kubernetes Cloud details 버튼을 클릭하면 상세 입력창이 출력됩니다.

Kubernetes Namespace section에 jenkins 를 입력합니다 Kubernetes Namespace

Configure Clouds에서 Credentials > Add 버튼을 클릭합니다 add jenkins in Credentials

Add Credentials 입력창에서 credentials 정보를 다음과 같이 입력합니다.
File은 자신의 VM 서버의 root 계정의. $HOME/.kube/config 파일을 선택합니다.
.kube/config 파일을 자신의 laptop에 download 받아서 choose file 버튼을 클릭하여 download 받은 config파일을 선택합니다.
add Credentials

Credentials Section 에서 위에서 입력한 mykubeconfig를 선택하고, Test Connection버튼을 클릭하여 minikube 연결을 테스트합니다. 다음의 메시지처럼 정상 출력되는지 확인합니다. “Connected to Kubernetes v1.xx.x”로 표시 되는지 확인합니다

WebSocket 항목을 선택합니다.
[v] WebSocket

Pod Label Section에서key / value값을 다음과 같이 입력합니다.

Pod Templates Section 다음과 같이 입력합니다

Container Section은 다음과 같이 입력하고 저장버튼을 클릭합니다.
Name : jnlp-slave
Docker image : jenkinsci/jnlp-slave:latest
Working directory : /home/jenkins/agent
Command to run : /bin/sh -c .

Jenkins agent가 실행할 jenkins namespace를 다음과 같이 생성합니다.

kubectl create ns jenkins

Jenkins Console Output 화면에서 다음과 같은 메시지가 출력되면 “Message: namespaces “jenkins” not found” 위 Jenkins namespace를 생성하지 않아서 발생하는 에러입니다.

터미널창에서 default namespace에 app을 설치할 수 있는 권한을 cluster-admin 권한으로 jenkins에 부여합니다. kubectl create clusterrolebinding jenkins-admin –clusterrole cluster-admin –serviceaccount jenkins:default

태그:

카테고리:

업데이트:

댓글남기기