EC2에 Jenkins 설치

박세건·2024년 9월 2일
0

기술 실습

목록 보기
1/18
post-thumbnail

EC2에 접근

  1. ec2에 접속하기 위해 putty 사용
  2. putty 다운로드 하면 puttygen.exe 생성
  3. puttygen 통해서 ec2 인스턴스 생성할때 받은 pem키를 ppk로 변경
  4. putty에 들어가서 Category의 Session에서 HostName에 ec2 퍼블릭 주소 입력
  5. Category에 Connection -> SSH -> Auth -> Credentials 에서 Private key file for authentication에 ppk 넣기
  6. 다시 Session으로 돌아와서 Saved Sessions에 알맞은 이름 넣고 Save

    Connection Type은 SSH로 선택되어야함

  7. 만들어진 Sessions을 Open 해주면 CLI 창 열리고 사용자 이름은 리눅스는 ec2-user로 ubuntu는 ubuntu로 입력

주의해야할 점

EC2를 중지시키고 다시 실행시키면 퍼블릭 IP 주소가 재설정된다.
즉, PuTTY에 설정했던 내용과는 맞지 않은 IP 주소가 됩니다.
때문에 이 퍼블릭 주소를 유지시켜줄 수 있는 Elastic IP(고정 IP) 주소를 사용해야 한다.
연결 과정은 Elasitc IP 카테고리에서 순서대로 생성해준 후에 EC2와 연결해주면된다.
Elastic이란, 탄력적인 이란 뜻으로 "Elastic IP"는 필요에 따라 유연하게 관리할 수 있는 IP 주소를 의미

EC2에 Jenkins 설치

APT(Advanced Package Tool)는 Debian 및 Ubuntu와 같은 리눅스 배포판에서 소프트웨어 패키지를 관리하는 데 사용되는 도구입니다. APT는 패키지 설치, 업데이트, 삭제 등을 쉽게 할 수 있도록 도와줍니다.

  • 먼저 apt 패키지 업데이트

    • yum은 Red Hat 계열의 리눅스 배포판에서 사용
    • apt는 데비안 계열의 리눅스 배포판에서 사용
      sudo apt -y update
  • java & javac 설치(17 버전 기준)

    • java
      sudo apt install openjdk-17-jre-headless
    • javac
      sudo apt install openjdk-17-jdk-headless

      Jenkins 관련 설정에서는 Jenkins에서 제공하는 문서를 따라서 진행
      https://www.jenkins.io/download/


      위 과정을 따라가면서 명령어 입력

  • Jenkins의 Debian 저장소를 사용하기 위해서는 먼저 해당 저장소의 GPG 키를 시스템에 추가

    • GPG 키는 Jenkins에서 제공하는 패키지가 신뢰할 수 있는 출처에서 왔는지를 확인하는 데 사용
      https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key```
  • Jenkins 저장소 추가

    • Jenkins를 설치하기 위해 APT 패키지 관리자의 설정에 Jenkins 저장소를 추가
    • apt에게 jenkins을 설치해야되는 위치를 알려주기 위한 과정
      https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
      /etc/apt/sources.list.d/jenkins.list > /dev/null```
  • 시스템의 패키지 목록을 최신 상태로 갱신한 다음, Jenkins 소프트웨어를 설치

    sudo apt-get install fontconfig openjdk-17-jre
    sudo apt-get install jenkins```
  • Jenkins 시작
    sudo systemctl start jenkins.service

  • 동작 확인
    sudo systemctl status jenkins

    • 해당 명령어 입력시 running 이라는 초록색 글씨가 뜨면 제대로 실행된 것
  • url로 접속

    • ${ec public ip 주소}:8080 주소를 사용해서 테스트
    • 위와 같은 화면이 뜨면 정상 작동중을 의미

      처음에 보안그룹에서 인바운드 규칙을 22번 포트만 열어놓고 진행해서 8080포트로 접속이 안되었다. 8080 포트로 접속할 수 있도록 인바운드 규칙을 하나 더 설정해줘서 해결

  • jenkins 암호 확인
    sudo cat /var/lib/jenkins/secrets/initialAdminPassword

    • cat 명령어는 리눅스 및 유닉스 계열 운영 체제에서 파일의 내용을 출력하거나 파일을 결합하는 데 사용되는 명령어
  • 제안해주는 Plugin으로 진행


  • 계정 생성
    • 계정 관련 정보는 추후에 jenkins 접속할때 필요하니 기억해 놓기
  • Jenkins 연결 성공
    • Jenkins로 CI/CD 구축 진행
profile
멋있는 사람 - 일단 하자

0개의 댓글