본문 바로가기
서버 개발/AWS

서버 개발부터 배포까지(3): elastic ip, route53, https 설정하기

by 현댕5697 2021. 7. 16.
반응형

ec2 인스턴스를 생성하여 서버를 배포하였다면, 부가적으로 필요한 것들을 설정해줄 차레이다.

아직 인스턴스를 생성하지 못했다면 아래의 게시물을 보고 먼저 인스턴스를 생성하자.

2021.07.14 - [서버 개발/AWS] - 서버 개발부터 배포까지(2): aws로 서버 배포

 

서버 개발부터 배포까지(2): aws로 서버 배포

우리가 만든 api를 웹 개발 팀원들이 사용하기 위해서는 서버를 배포해주어야 했다. 그래서 ec2를 사용하여 배포하기로 결정하였다. 1. ec2 인스턴스 생성하기 먼저 aws에 로그인하여 콘솔에 접속해

carpediem9911.tistory.com

 

1. elastic ip 설정하기

생성한 인스턴스에 대한 정보를 보면 퍼블릭, 프라이빗 ip 주소 등이 있을 것이다.

하지만 이러한 ip 주소들은 인스턴스를 중지했다가 다시 실행할 경우 값이 변경된다.

그렇기 때문에 인스턴스 중지 여부에 관계없이 ip 주소 값이 유지 되게 하기 위해서는 탄력적 ip를 설정해주어야 한다.

먼저 aws ec2의 좌측 메뉴에서 탄력적 IP라고 쓰여진 것에 들어가자.

그 후 우측 상단에 탄력적 IP 주소 할당이라 쓰여진 주황 버튼을 클릭하자.

그럼 이러한 화면이 나올 것이다.

기본 설정을 유지한채 우측 하단의 할당 버튼을 클릭해주자.

그러면 탄력적 ip 주소가 생성된다.

이제 이 ip 주소를 우리가 만든 인스턴스에 연결시켜주어야 한다.

우측 상단 작업 버튼을 클릭 후 탄력적 ip 주소 연결을 클릭해주자.

인스턴스 선택을 누르면 우리가 생성한 인스턴스 목록이 뜰 것이다.

그 중 탄력적 ip 주소를 연결할 인스턴스를 선택하고 우측 하단의 연결 버튼을 눌러준다.

* 참고로 프리티어의 경우 하나의 인스턴스에 대해 무료로 하나의 탄력적 ip 주소를 할당할 수 있다.

그 후 인스턴스 세부 정보에 들어가보면

이렇게 탄력적 ip 주소가 할당된 것을 볼 수 있다!

 

 

2. route53을 이용하여 도메인 연결하기

이제 위에서 할당한 탄력적 ip 주소를 사용하면 우리가 인스턴스에서 배포중인 서버에 요청을 보낼 수 있다.

더 나아가 우리 서버에 도메인을 부여하고 싶다면 route53을 사용하면 된다.

route53에서는 도메인 구입부터 연결까지 한 번에 할 수 있다.

먼저 aws의 route53에 접속한다

https://console.aws.amazon.com/route53/v2/home#Dashboard

 

https://console.aws.amazon.com/route53/v2/home#Dashboard

 

console.aws.amazon.com

좌측 메뉴에서 등록된 도메인을 클릭한다.

그 후 상단에서 도메인 등록 버튼을 클릭한다

원하는 도메인 이름을 입력하고, 사용 가능하다면 구입까지 진행하자.

도메인 이름은 문자, 숫자, 하이픈을 포함할 수 있지만 비워두거나 63자보다 길 수 없다.

도메인을 구입한 뒤에 도메인 요청이 완료되면 호스팅 영역에 들어가보자.

그러면 우리가 구메한 도메인이 보일 것이다.

해당 도메인을 클릭하면 레코드 목록이 나타난다.

여기서 레코드 생성 버튼을 클릭하자.

레코드 이름원하는 문자를 넣고 에 우리가 인스턴스에 할당한 탄력적 ip 주소를 넣어준 후 레코드 생성을 눌러주자.

만약 도메인 이름이 carpediem991111.com이고, 레코드 이름이 api라면 우리는 http://api.carpediem991111.com 이라는 url을 통해 인스턴스로 배포한 서버에 요청을 보낼 수 있다.

 

 

3. https 설정하기

https를 설정해주기 위해서는 ssl 인증서를 발급받아야 한다.

이 과정 역시 aws에서 해결할 수 있다.

먼저 aws의 certificate manager 서비스에 접속한다.

https://ap-northeast-2.console.aws.amazon.com/acm/home?region=ap-northeast-2#/ 

 

https://ap-northeast-2.console.aws.amazon.com/acm/home?region=ap-northeast-2#/

 

ap-northeast-2.console.aws.amazon.com

그 후 좌측 상단 인증서 요청 버튼을 클릭한다.

인증을 누르고 다음으로 넘어가자.

우리가 route53에서 생성해준 레코드에서 생성해준 이름을 입력하고 다음을 누르자.

ex: api.carpediem991111.com

DNS 검증을 선택하자.

태그 추가는 패스!

그 후 확인 및 요청을 누르면 이렇게 검증 단계가 나온다.

여기서 이름과 값에 쓰여진 것을 어딘가에 저장해놓고 잘 기억해놓자!

그리고 다시 route53에서 레코드를 생성했던 곳으로 돌아가자.

이번에는 레코드 이름에 검증 단계에서 기억해놨던 이름과, ssl 인증서를 발급받고 싶은 도메인 이름을 입력한다.

예를 들어 검증 단계에서 얻은 이름이 abcd12345이고, 도메인 이름은 api.carpediem991111.com이라면 레코드 이름에 abcd12345.api를 입력하면 된다.

그리고 레코드 유형을 CNAME으로 선택해준 뒤 값 부분에는 검증 단개에서 얻은 값을 입력하면 된다.

다 되었다면 레코드 생성을 누르자.

다시 certificate manager에 들어갔을 때 이렇게 발급 완료라고 쓰여져 있으면 ssl 인증서 발급이 완료된 것이다~!~ 

 

 

 

반응형

댓글