[Jenkins] Master, Slaves-미완

seopppio·2024년 12월 24일

Jenkins

목록 보기
25/25

  • Master가 가지고 있는 Job을 TCP/IP 통신으로 Slave로 전달하고, Slave에서 받은 Job을 빌드하고 결과를 다시 전달한다. 이것을 받기 위해 JVM 설치되어 있어야한다

여러 개의 Job이 있을 때, 마스터가 직접 처리해도 되지만, 등록된 슬레이브가 job을 수행할 수 있도록 한다.
리소스 확보가 된 Slave노드에 작업을 요청하고 결과를 받아서 최종적으로 빌드를 할 수 있다

젠킨스 슬레이브 노드도, 도커 형태로 서버로 실행할 것

Host에서 도커 컨테이너로 접속할 때는, port 포워딩 하면 된다
컨테이너끼리 접속할 때는, 고유 IP 및 22번 포트로 접근하면 된다

docker run --privileged --name jenkins-node1 -itd -p 30022:22 -e container=docker -v /sys/fs/cgroup:/sys/fs/cgroup --cgroupns=host edowon0623/docker:latest /usr/sbin/init

실습

Slave노드에 JDK설치

yum install -y ncurses git
yum list java*jdk-devel -> 사용 가능한 jdk 목록 표시
yum install -y java-11-openjdk-devel.x86_64

젠킨스 서버에서 ssh-keygen하고, Jenkins node에 ssh-copy-id 해주자


Jenkins node의 home디렉토리에서 slave1 디렉토리 만들자



방금 만든 credential 설정, container to container니까 port22

0개의 댓글