Jenkins Slave Node 를 만들어보자.
현재 프리티어 EC2(ubuntu)를 만들어 둔 상태이며, 인바운드는 SSH 정도를 허용해 둔 상태이다.
마스터 노드에서 슬레이브 노드로 SSH로 붙어야 하기 때문에 pem 키로 접속하여 기본 설정을 잡아주도록 한다
Slave Node Server(EC2) 설정
EC2 직접 접속
ssh -i my.pem ubuntu@<public-ip4-DNS>
기본 설치
sudo apt-get upgrade
sudo apt install openjdk-17-jdk # 원하는 버전 설치
Master가 접근할 디렉토리 생성 및 권한 부여
sudo mkdir /home/jenkins
sudo chown ubuntu:ubuntu /home/jenkins
private key, public key 생성
ssh-keygen -t rsa -b 2048 -C "jenkins-ssh" -f ~/.ssh/jenkins_key
cat ~/.ssh/jenkins_key.pub
echo [jenkins_key.pub 내용] >> ~/.ssh/authorized_keys
Master Node Jenkins 설정
Master Node는 편의상 로컬의 Docker로 실행해 둔 상태이다
Credential 생성
Dashboard > Jenkins 관리 > Credentials > System > Global credentials (unrestricted)
Node 생성
Dashboard > Jenkins 관리 > Nodes -> New Node
Host IP 에는 EC2의 public IP를 기입해주자
옵션이지만 Disk Space Monitoring Threshold를 기입 시 Slave의 상태를 모니터링할 수 있게 된다.
결과
Slave Node의 연결을 확인할 수 있다.
'CI & CD' 카테고리의 다른 글
CI/CD - Continuous Integration/Continuous Deployment (0) | 2022.06.27 |
---|