-
NCP를 이용한 프로젝트 배포 - (3) 도메인 및 SSL 적용☁️ infra/Naver Cloud Platform 2025. 2. 28. 01:09
Naver Cloud Platform은 HTTPS/기본 도메인을 제공하지 않아 도메인 지정하고 SSL 적용해보기로 했다.
1️⃣ 개인 도메인 구매
NCP Global DNS를 사용하기 위해서는 개인 도메인이 필요하다.
개인 도메인은 호스팅 사이트에서 구매할 수 있다. (가비아 에서 구매)
2️⃣ NCP Global DNS에 구매한 도메인 등록
NCP 콘솔 > Networking > Global DNS > 도메인 추가
- 구매한 도메인 추가
도메인이 등록이 되면 Global DNS에서 제공하는 네임 서버를 확인할 수 있다.
- 가비아는 자체적으로 DNS 서버를 운영하고 있어 구매한 도메인은 자동으로 가비아의 도메인 서버로 등록된다.
- 따라서, Global DNS에 도메인 등록이 완료되었으면 가비아의 도메인 통합 관리 툴 에서 네임 서버 변경을 진행
가비아 > 도메인 관리 > 도메인 정보 변경
3️⃣ 서버에 도메인 호스트 연결 및 확인
네임 서버 변경을 했다면 NCP Global DNS 서비스에서 레코드 추가 ⇒ 서버에 호스트 정보를 매핑
NCP 서버의 공인 IP를 통해서 Global DNS 서비스의 레코드 추가를 통해 서버와 호스트를 연결한다.
- 레코드 값: 서버 IP
레코드 등록 여부 확인
> nslookup api.{} Server: xxx.xx.xxx.xx Address: xxx.xx.xxx.xx#xx Non-authoritative answer: Name: api.{} Address: xxx.xxx.xxx.xxx
4️⃣ Certificate Manager 를 이용한 인증서 발급
등록된 인증서가 없기 때문에 Certificate Manager 를 통해서 SSL 인증서를 발급
1. 인증서 발급 버튼 을 누른다.
- 도메인 이름에 구매한 도메인을 입력 (ex: test.com)
- 추가 도메인으로 내가 사용할 서비스에 맞는 도메인을 설정할 수 있다.
2. DNS 검증을 이용해 도메인의 소유권 검증
3. 신청완료 시 인증서가 진행 중인 상태
- DNS 등록을 진행시 해당 인증서 사용가능
5️⃣ Global DNS 레코드 추가를 통해 DNS 검증
인증서를 만들고 나서 보이는 정보에서 Record Name과 Value로 레코드를 CNAME 타입으로 추가한다.
- 위 사진에서 검증 상태가 성공인건 내가 미리 설정 해놓은 인증서이기 때문
🤔 주의 : 도메인 이름 값을 그대로 복사 붙여넣기하는 것이 아니다.
- ex) xxxxxxx.test 까지만 입력(.test.com 제외)
레코드를 추가한 후 [설정 적용] 을 통해서 도메인 배포
6️⃣ Load Balancer
📌 Target Group - 생성
- VPC : Server가 존재하는 VPC
- 프로토콜 : HTTP
- 포트 : 8080 (Spring boot 내장 톰캣)
✅ Target Group - Health 체크
- Target으로 잡은 Server:Port 가 200통신을 하는지 확인하는 신호를 보내는 작업
- GET - /health 를 통해 200상태코드를 확인
✅ Target Group 상태 확인
📌 로드밸런서 생성
- 애플리케이션 로드밸런서 선택
부하 처리 성능
- CPS (Connection Per Second)를 의미
- 초당 TCP Connection을 맺을 수 있는 횟수 설정
- 많은 요청이 많이 없을 것이라 생각해 small로 설정
VPC
- Target Group 과 같은 VPC 선택
- 서브넷 - Load Balancer 용 서브넷을 따로 생성
Network
- 외부 도메인에서 요청이 오는 것을 원하기 때문에 Public IP로 설정
📌 로드밸런서에 SSL 인증서 등록
- 리스너 설정에서 HTTP 뿐 아니라 HTTPS 리스너 추가 (포트 443)
- 아까 등록한 인증서를 추가
HTTP 프로토콜 리스너에 대해서 규칙 조회 / 변경 버튼을 통해 규칙을 추가
- 엔드 유저가 80으로 들어왔을 때 443으로 리다이렉트
- host header xxx.test.com 에 대해 HTTPS 443으로 리다이렉트
😎 접속
내가 만든 헬스체크 API 로 접속해보자 - https://{도메인}/health
- OK 같은 리턴 값을 확인
📖 참고자료
https://guide.ncloud-docs.com/docs/loadbalancer-application-vpc
https://www.ncloud.com/product/security/certificateManager
https://www.ncloud.com/product/networking/loadBalancer
'☁️ infra > Naver Cloud Platform' 카테고리의 다른 글
CLOVA Studio API 이용하여 답변 받기 (1) 2025.03.07 NCP를 이용한 프로젝트 배포 - (2) 배포 (1) 2025.02.28 NCP를 이용한 프로젝트 배포 - (1) 서버 (0) 2025.02.28