서비스를 배포하기 위해서는 도메인이 필수입니다
도메인을 통해 IP로는 나타낼 수 없는 자신의 서비스에 대한 아이덴티티를 도메인을 통해 나타내는 것은 물론
사용자들도 편하게 서비스에 접근할 수 있습니다
이 글에서는 AWS의 EC2인스턴스와 도메인을 연결하여 보겠습니다
순서는 다음과 같습니다
1. 도메인 취득
2. Route53을 이용하여 도메인과 EC2 인스턴스 연결
도메인 취득하기
도메인은 기본적으로 비용이 들어갑니다
다만 무료로 도메인을 취득할 수 있는 곳들도 있으나 해당 도메인들은 불안정하므로
toy-project가 아닌 실비스를 생각중이시라면 유료 도메인을 사용하시기를 권장드립니다
유료 도메인은 가비아, 카페24, 고대디 등 유명한 도메인 구매 사이트에서 손쉽게 구매하실 수 있습니다
또한 AWS에서도 도메인 취득을 지원하지만 국내 도메인 판매업체에서 구입하는 것이 좀 더 쉽습니다
AWS에서 취득하는 방법은 아래에 자세하게 나와있습니다
https://aws.amazon.com/ko/getting-started/tutorials/get-a-domain/
마음에 드는 업체를 선정하셔서 회원가입 및 도메인 검색을 통해 해당 도메인 사용이 가능한지 체크를 하고
구입 절차를 밟으시면 됩니다
단, 구입시 소유자 정보를 작성할 때 실수가 없도록 주의하셔야 합니다
특히 이메일은 도메인 소유를 증명할 때 자주 사용되니 반드시 구매자가 실제로 사용중인 이메일을 작성하셔야 합니다
또한 네임서버를 입력하는 부분은 우선 해당 도메인업체의 네임서버를 이용한다고 표시해놓고
이후에 AWS에서 네임서버를 받아 다시 수정해주면 됩니다
Route53을 도메인-EC2 연결
도메인 구입을 한 후에 해당 도메인과 AWS의 EC2 인스턴스를 Route53 서비스를 통해 연결해 보겠습니다
- Route53 : 도메인 등록(구입) / DNS 라우팅(IP를 Domain과 연결) / 상태 및 트래픽 확인을 제공하는 AWS 서비스입니다
AWS에 로그인을 한 후 [Route 53] 서비스를 선택합니다
왼쪽 사이드바의 [호스팅 영역]을 선택한 후 [호스팅 영역 생성]을 클릭합니다
오른쪽에 다음과 같은 화면이 뜨면 구입한 도메인 이름을 입력합니다
생성을 누르면 다음과 같이 레코드세트가 만들어 지는 것을 확인하실 수 있습니다
생성된 레코드 세트 중 NS 유형을 선택하고 해당 값들을 복사합니다
도메인을 구입한 업체에 다시 들어가 해당 도메인관리에서 네임서버(NS)를 앞서 복사한 값으로 변경하여 줍니다
위의 과정을 마치면 도메인과 Route53의 연결이 완료된 것입니다
잘 연결되었는지 확인하시려면 다음 사이트에 방문하셔서 연결하신 도메인을 검색하면 NS 항목에
Route53에서 복사한 값들이 입력된 것을 확인하실 수 있습니다
https://www.ultratools.com/tools/dnsLookup
혹은 cmd에서 다음과 명령어를 사용하셔도 됩니다
nslookup domainname.com
이제 EC2 인스턴스와 해당 도메인을 연결해 보도록 하겠습니다
[Route 53]으로 돌아와 [레코드 세트 생성]을 통해 [A 유형]을 생성해줍니다
A유형의 레코드를 통해 EC2의 IP와 도메인을 연결할 것입니다
그림과 같이 설정한 후에 값에는 EC2의 탄력적 IP를 입력합니다
(탄력적IP IP만들기)
만약 도메인앞에 www. 를 붙여서 접속되기를 원한다면 다음과 같이 레코드세트를 하나 더 생성해주시면 됩니다
[레코드 세트 생성] 클릭 후 [이름]에 www 입력, [값]에 www를 제외한 해당 도메인 입력
만약 등록하고자 하는 도메인이 www.example.com 이라면
이름 칸에는 www를, 밑의 값에는 example.com 만 입력해주시면 됩니다
이제 도메인-EC2 인스턴스의 연결이 모두 끝났습니다
잘 등록이 되었는지 다시 아래 사이트 방문 혹은 cmd를 이용하여 도메인을 검색한 후 결과를 확인합니다
https://www.ultratools.com/tools/dnsLookup
등록한 도메인 연결정보 확인