Cloud/AWS
Amazon VPC Lattice - Part 4 : Custom domain, SSL/TLS Certificate
지기(ZIGI)
2023. 4. 6. 13:22
Today Keys : lattice, vpc, service, amazon, network,domain, ssl, tls, certificate, https, application, connect, secure, monitor
이번 포스팅은 서로 다른 VPC 및 AWS 계정에 걸쳐 서비스 간의 네트워크 연결 및 애플리케이션 계층 라우팅을 자동으로 관리해주는 Amazon VPC Lattice에 대한 네 번째 포스팅입니다. 앞으로 몇 번에 걸쳐서 다루게 될지는 모르겠지만, VPC Lattice를 구성하는 방법에 대해서 차근 차근 포스팅 해보려고 합니다.
네 번째 포스팅에서는 VPC Lattice Service를 사용하기 위한 Custom domain을 생성하는 방법과 SSL/TLS Certificate를 연결해서 서비스를 호출해보는 예제를 다룹니다. 현재 다뤄지고 있는 VPC Lattice 관련 포스팅에서는 VPC Lattice에 대해서 다룬 앞 포스팅의 내용 중 동일한 부분을 반복적으로 다루지는 않기 때문에 각 포스팅에서 다뤄지지 않은 앞 부분은 기존 포스팅을 참고하시면 되겠습니다.
VPC Lattice Service를 만들고 나면, Service를 호출하기 위한 도메인이 다음과 같이 자동으로 생성됩니다.
Service명-임의숫자_문자.vpc-lattice-svcs.region.on.aws
이러한 기본 도메인 이외에, VPC Lattice Service에 대해서 Custom Domain 사용이 가능합니다.
이번 포스팅에서는 Custom Domain을 사용해서 VPC Lattice Service를 만들어 보겠습니다.
Service name은 'zigi2-ls2' 라고 하겠습니다.
Service name 하단에 Custom domain configuration 메뉴가 있는 데, Custom domain 사용을 위해서 'Specify a custom domain configuration' 옵션을 체크합니다.
그리고, Custom domain으로 사용 할 도메인을 입력합니다. 여기에서는 'zigi2-ls2.zigi.site'라는 이름으로 Custom domain 설정을 했습니다.
Custom SSL/TLS 설정은 하단의 zigi2-ls3에서 할 예정이니, 'None'으로 두고 VPC Lattice Service를 생성합니다.
※ Custom domain Configuration 설정을 제외한 VPC Lattice Service 생성 시의 설정은 기존 포스팅( AWS VPC Lattice : Part 1 )을 참고 하시면 됩니다.
정상적으로 zigi2-ls2가 만들어진 후, zigi2-ls2을 살펴 보면, 기본 VPC Lattice Service 도메인 이외에 하단에 Custom domain 이 zigi2-ls2.zigi.site로 설정된 것 볼 수 있습니다.
VPC Lattice Service에 설정한 Custom domain을 관리하는 DNS 서버에서 Custom domain에 대한 CNAME Record를 생성하고, CNAME에 대한 값으로 zigi2-ls2의 기본 Domain name을 설정합니다. DNS 서버에서 CNAME Record 설정을 하고, zigi2-ls2의 custom domain에 대해 DNS 질의를 보내면 다음과 같이 정상적으로 받아오는 것을 확인 할 수 있습니다.
※ DNS 레코드와 관련된 포스팅은 다음 포스팅을 참고 하시면 됩니다. ( DNS 주요 레코드 )
이번에는 zigi2-ls3라는 VPC Lattice service를 만들어 보겠습니다.
zigi2-ls3와 거의 동일하지만, 이번에는 custom domain에 대한 인증서를 연결해서 만듭니다.
Service name을 zigi2-ls3로 설정했습니다.
Custom domain configuration에서 'Specify a custom domain configuration' 옵션을 체크하고, Custom domain name으로 'zigi2-ls3.zigi.site'로 설정합니다.
그리고 Custom SSL/TLS certificate에 미리 zigi2-ls3.zigi.site라는 이름으로 만들어 둔 인증서를 선택합니다.
SSL/TLS certificate까지 설정한 이후에는 Listener를 설정합니다.
Listener는 기존에 설정했던 HTTP, 80이 아니라 HTTPS, 443으로 설정했습니다.
Listener 설정 하단에 보면, HTTPS listener certificate settings 메뉴에 앞서 설정한 Custom doamin과 Custom SSL/TLS certificate 내용을 확인 할 수 있습니다.
이제 zigi2-ls3를 만들고 나면, 현재 구성되어 있는 값을 확인해 봅니다.
Custom domain과 Custom SSL/TLS Certificate에 대한 설정을 앞과 동일하게 확인 할 수 있습니다. 추가로 현재 인증서 상태와 함께 인증서 만료 일자로 볼 수 있습니다.
zigi2-ls3 서비스에 대한 Custom domain인 zigi2-ls3.zigi.site에 대한 DNS 질의를 하면 앞과 마찬가지로 정상적으로 응답하는 것을 볼 수 있습니다.
이제 마지막으로 Custom domain을 통해서 VPC Lattice Serivce 호출을 시도해 보겠습니다.
zigi2-ls2는 http로 , zigi2-ls3는 https로 가각 서비스 호출을 해보면 다음과 같이 정상적으로 응답하는 것을 확인 할 수 있습니다.