728x90

 

 

 

해당 시리즈는 현재 필자가 연습하고자 하는 서비스 아키텍쳐와 맞지 않아 Springboot 와 Gradle 을 사용한 시리즈를 다시 작성하고 있습니다. 최신 시리즈를 확인하여주시고 이 시리즈는 끝마치지 못한 부분이 있어 설치 부분만 참고를 하시길 바랍니다.

 

(최신 시리즈)

 

Jenkins&Springboot CI/CD 정리(1)

Jenkins&Springboot CI/CD 정리(1) 필자가 경험한 Springboot 프로젝트와 Jenkins CI 를 활용한 CI/CD 구축에 대해 정리를 해보고자 합니다. =) 이 시리즈에서는 이미 작성된 내용에 대해선 해당 글로 대체 할 예

0andwild.tistory.com

 

 

우선 AWS(Amazon Web Service)에서 제공하는 Ec2(Elastic Compute Cloud)라는 클라우드 컴퓨터를 대여 받아 이 위에 어플리케이션을 실행시키고 Jenkins와 Docker를 이용하여 CI/CD를 구축하고 테스트를 진행해보려 한다.

 

CI/CD Pipeline 구축에 앞서 AWS Ec2 인스턴스를 만들어 주어야 한다.

필자의 경우 기존에 만들어 두었던 ubuntu 서버의 인스턴스를 사용할 계획이다.

  

더보기

인스턴스 생성과정은 아래의 블로그에 잘 정리가 되어 있는 것 같아 참고를 하면 좋을 것 같다.

https://velog.io/@misun9283/AWS-EC2-배포-과정

 

이렇게 인스턴스가 준비되었다면 대여 받은 컴퓨터에 Java를 설치해줄 것이다.

필자는 gitbash를 이용할 계획이다.

ssh -i (키페어 넣어줌) ubuntu@(실행중인 ec2의 퍼블릭 IPv4 주소 넣어줌)
<띄어쓰기 잘 해주어야 함!!>

 

위와 같이 명령어를 입력하면 아래와 같은 창이 뜰 것이다.

그럼 yes 를 입력해주면 내가 대여받은 컴퓨터 환경에 접속을 할 수 있을 것이다.

접속이 완료되면 아래와 같은 연결이 완료된 모습을 확인할 수 있다.

기본적으로 AWS에서 대여를 해주는 컴퓨터는 storage를 8GB 로 잡고 있고 최대 스토리지 볼륨을 30GB 까지 제공해주고 있다.

 

초기 인스턴스를 생성할 때 설정을 할 수도 있지만 추가적인 설정을 통해서도 스토리지 볼륨을 늘릴 수 있으니 늘려보자.

Ec2의 서비스 카테고리에 보면 Elastic Block Store라는 부분이 존재하고 여기에서 볼륨이라 되어 있는 부분을 클릭하자.

그럼 이와 같은 창이 뜰 것 이다. 위에 보이는 것은 현재 사용중인 인스턴스 이고 볼륨 크기가 8GB로 잡혀 있는 것을 확인 할 수 있다.

이제 여기에서 실해중인 인스턴스에 우클릭을 하면 다음과 같은 창이 뜨고 여기에서 볼륨 수정을 클릭해주자.

그럼 이 창으로 연결이 될 것 이고 8GB로 잡혀 있는 부분을 30GB로 수정해주면 끝이난다.

다음과 같이 수정을 해주고 우측 하단에 있는 수정버튼을 클릭해주자!

수정버튼을 클릭하면 위와 같은 창이 뜰 것인데 자신이 인스턴스 생성을 프리티어로 잘 생성하였다면 요금이 부과되지 않을 것이다.

Amazon EBS(Elastic Block Store) 요금 정책을 확인해보면 프리티어에서는 최대 30GB 까지 무료로 제공해주는 것을 확인 할 수 있다.

더보기

프리티어를 사용중이라면 최대 30GB 의 EBS 범용(SSD) 또는 마그네틱 스토리지를 사용할 수 있다고 한다. 자세한 내용은 아래 링크의 글을 참고하면 좋을 것 같다.

https://chucoding.tistory.com/entry/AWS-EC2-Amazon-EBS-%EB%B3%BC%EB%A5%A8-%EC%9C%A0%ED%98%95-%EC%82%B4%ED%8E%B4%EB%B3%B4%EA%B8%B0

그럼 볼륨 수정이 완료되었고 적용이 되기까지 조금 기다려 보자.

자 이제 수정이 완료되었다. 그럼 실제로 적용이 잘 되었는지 아까 연결시켜놓은 gitbash 창에서도 확인을 해볼 것이다. 그전에 서버를 한 번 재부팅을 해주어야 실제 서버에 반영이 된다 하니 재부팅을 해주자!

이제 재부팅이 완료 되었고 다시 gitbash 창을 열어 확인을 해보자 처음과 같이 명령어를 입력해주면 되는데(pem key와 퍼블릭 ip 주소) 이전에 사용했던 명령어는 ↑ 방향키를 누르면 쉽게 재사용이 가능하다!

다시 ubuntu 컴퓨터에 접속을 하였고 수정해준 storage volume이 실제 적용된 모습을 확인할 수 있다.

이 외에도 AWS Ec2 프리티어로 대여한 컴퓨터는 1GB의 RAM을 지원해주는데 free -m 명령어를 통해 확인할 수 있다.

이제 필자가 빌린 ubuntu 컴퓨터에 open jdk를 설치해볼 것이다.

sudo apt-get update
더보기

(apt-get 은 우리가 여러가지를 받아올 수 있는 저장소 같은 건데 여기서 설치할 패키지를 받아오기전에 업데트를 한 번 해주는 것이다)

명령어를 입력하고 기다리면 업데이트가 되는 것을 확인할 수 있다.

아 그리고 여기서 명령어 제일 앞에 sudo 는 슈퍼유저(superuser)가 직접한다(do) 라는 뜻이다 =)

apt-cache show <패키지>

위와 같은 명령어를 통해 설치가능한 패키지 목록을 확인할 수 있다.

sudo apt-get install openjdk-11-jdk

필자는 jdk 11 version을 설치해줄 것이고 다음과 같은 문장이 나오면 Y를 입력해주면 된다.

설치가 끝났고 이제 java -version 을 입력하여 설치가 잘 되었는지 확인을 해보자.

java -version

설치가 잘 된 것을 확인할 수 있다.

 

추가적으로 sudo update-alternatives --config java 명령어를 통해 Java 버전관리를 할 수 있는데 Alternatives를 사용하면 원하는 자바의 버전을 쉽게 변경할 수 있다고 하니 참고하자!

sudo update-alternatives --config java

필자는 현재 설치한 openjdk 11로 설정이 잘 잡혀있으니 enter를 치고 빠져나왔다.

만약 version을 변경하고자 한다면 저기에서 해당하는 버전의 숫자를 입력하면 된다.

 

더보기

(추가정보는 아래 링크를 남겨두겠다.)

https://codechacha.com/ko/ubuntu-install-open-jdk11/

 

Ubuntu 20.04 - OpenJDK 11 설치, 삭제

Ubuntu 20.04에 OpenJdk 11을 설치하는 방법을 소개합니다. apt 명령어로 쉽게 설치할 수 있습니다. 만약 apt로 설치할 수 없다면 설치 파일을 다운로드하여 직접 설치하는 방법이 있습니다. 두가지 방법

codechacha.com

작업을 한 후 서버 접속을 끊고 싶으면 exit 명령어를 입력하면 서버와의 연결이 종료된다.

exit

 


<간단한 명령어 모음>

ec2 연결하기(윈도우)

1. gitbash 입력창을 띄운다

2. ssh -i (키페어 넣어줌) ubuntu@(실행중인 ec2의 퍼블릭 IPv4 주소 넣어줌)

3.key finger print 에 yes 입력해줌( ubuntu@ip 숫자 :~$ 이런식으로 입력창이 나오면 열결이 완료된 것)

/// git bash 종료할때는 먼저 exit 명령어를 입력하여 ssh 접속을 먼저 끊어줌 !


<간단한 명령어 모음(윈도우&맥 동일)>

1. gitbash의 창을 한 번 깔끔하게 정리하고 싶을 때 : clear

2. directory(폴더) 만드는법(make directory): mkdir (폴더명)

3.directory 생성 확인 방법: ls

4.생성된 directory에 들어가려한다(change directory): cd (폴더명)/         // 폴더명은 어느정도 치고 tab키 누르면 자동완성됨

//directory에서 나올때 다시 cd 만 입력

<간단한 apt-get 명령어(패키지 설치)>

1.   sudo apt-get update      //(apt-get 은 우리가 여러가지를 받아올 수 있는 저장소 같은 건데 이걸 받아오기전에 업데트를 한 번 해주는 것)

2.   sudo apt-get install openjdk-8-jdk     //(sudo)는 슈퍼유저(superuser)가 직접한다(do) 라는 뜻

3. 설치 후 java -version 입력하여 openjdk version "1.8.0_312" 이런식으로 1.8버전이 잘 설치되어졌는지 확인한다.

 

기본적인 CI/CD Pipeline을 구축하여 테스트할 AWS Ec2 인스턴스 생성과 Java 설치까지 완료를 하였으니 다음 챕터에서는 Jenkins Server를 구축해보고자 한다!

728x90
반응형
복사했습니다!