본문 바로가기

개발일지/AWS

CICD - EC2 설정

https://yewon0309.tistory.com/entry/TIL-230703

 

TIL-230703(윈도우/ EC2에 Spring, Database 연동하여 배포하기(1))

📝오늘 공부한 것 EC2에 Spring, Database 연동하여 배포하기 ⛔문제점 시험을 위해 ec2에 Spring, Database를 연동하여 배포하는 법을 알아야했다. 그래서 https://bcp0109.tistory.com/356 AWS 1편: EC2 생성 후 Spring

yewon0309.tistory.com

인스턴스 생성할 때 나머지는 그대로

키페어 있으면 있는 걸로 사용, 없으면 새로 생성하기

만약에 서비스가 여러개라면 키페어를 따로 만드는 것이 좋음(보안유지를 위해)

네트워크 세팅, 스토리지 변경X,

탄력적IP생성도 그대로 진행

 

!!!인스턴스 삭제 시 탄력적IP도 삭제하기!!!!

 

태그값 설정하기

인스턴스ID부분에서 우클릭 -> 인스턴스 설정 -> 태그 관리 -> 새로운 태그 추가

 

인바운드 규칙 설정

보안 탭 -> 보안그룹

인바운드 규칙 편집 ->

 

[ubuntu 서버에서 업데이트]

sudo apt update && sudo apt upgrade

[인스턴스를 새로 생성했으므로 자바 설치]

sudo apt install openjdk-17-jdk

[자바 버전 확인]

java -version

[AWS에서 제공하는 가이드라인 문서, 필요성에 의한 설치가 아님, codedeploy를 사용하려면 필수]

[루비 설치]

sudo apt install ruby-full

 

[wget 설치]

sudo apt install wget

[디렉토리 변경 후 확인]

cd /home/ubuntu
pwd

[명령어 입력]

wget https://aws-codedeploy-ap-northeast-2.s3.ap-northeast-2.amazonaws.com/latest/install
chmod +x ./install
sudo ./install auto > /tmp/logfile

[잘 설치되었는지 확인]

sudo service codedeploy-agent status

 

https://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/codedeploy-agent-operations-install-ubuntu.html

 

Ubuntu Server용 CodeDeploy 에이전트 설치 - AWS CodeDeploy

출력을 임시 로그 파일에 쓰는 것은 Ubuntu Server 20.04에서 install 스크립트를 사용하여 알려진 버그를 해결하는 동안 사용해야 하는 해결 방법입니다.

docs.aws.amazon.com

 

IAM

역할 -> 역할 만들기 -> EC2 선택 -> 

-> CodeDeployFullAccess, S3FullAccess선택

-> 역할 이름 작성 후 생성

 

인스턴스에 역할설정

EC2 -> 인스턴스 -> 우클릭 -> 보안 -> IAM역할 수정 -> 만든 IAM 선택 후 업데이트 버튼 클릭

 

.pem키 없이 접속허용 설정

exit 로 ubuntu 서버에서 나온 후 

cmd창 -> .pem키가 있는 디렉토리로 이동 -> ubuntu 서버 다시 접속

ssh -i "my-key.pem" ubuntu@ec2-52-78-197-1.ap-northeast-2.compute.amazonaws.com

[config파일 수정]

sudo vi /etc/ssh/sshd_config

로 이동 후 PasswordAuthentication yes로 변경

ubuntu권한 주기

패스워드 변경 후 exit(:q!입력)

[.pem키 없이 로그인]

ssh ubuntu@ec2-52-78-197-1.ap-northeast-2.compute.amazonaws.com