본문 바로가기
교육

[과제] 21.10.04 : DNS Resolver with CloudFormation

by ballena 2021. 10. 4.

10.02 ~ 10.04 연휴 3일 간 과제를 해결했다. 

 

콘솔로 진행했던 내용은 https://ballenabox.tistory.com/93?category=947469 

 

[46일 차] 21.09.27 : AWS 6

DNS Resolver 1교시 배 아프다.... DNS Resolver 기능이 있는 Route 53의 사용법 -> 클라이언트와 네임 서버의 중계자 역할. DNS 요청을 네임 서버로 전달하며, DNS 응답을 클라이언트에게 전달 왜 필요한가?

ballenabox.tistory.com

여기에 있다.

 

다른 VPC 간 DNS 해석기 실습이다.

On-premise 환경이라고 가정한 IDC-VPC와 클라우드 환경의 AWS-VPC 간 도메인 통신을 가능하게 하는 것이다.

 

IDC-VPC는 온프레미스 환경이니까 DNS 인스턴스를 만들고, AWS-VPC에는 Route 53을 사용해 호스팅 영역을 만든다.

 

CloudFormation 코딩으로는 배우지 않았던 내용이라 문서를 뒤져서 진행했다.

인프라 구조

1. VPC에 DHCP Option 설정

2. Route 53 호스팅 영역

3. VPC Peering 설정

4. 라우팅 테이블에 VPC Peering 연결

5. 코드로 IDC-DNSSRV에 DNS 서버 구축

 

이 외의 내용은 크게 어려운 것이 아니므로 설명은 넘어간다.

 

 

문서를 찾아가며 하다 보니 느낀 점

- 콘솔에서 어떻게 구축했는지 대조해가며 코드를 입력하면 좋다.

- 확실한 부분까지 스택을 만들어서 구축한다(오타 검출). 그 후에 불확실한 부분은 수작업으로 만들어서 리마인드한다. 

 

확실한 부분부터 구축하려면 단계적으로 아래에서 위로 올라가야 한다.

전체 순서를 매기자면

1. 기본 인프라 구축 : VPC, IGW, 서브넷, 라우팅 테이블(+기본 경로), 보안 그룹, 인스턴스 등

2. 기본 인프라의 세부 설정 : VPC의 DNS 옵션, 인스턴스에 웹 서버 구축, DNS 인스턴스 설정

3. IDC-VPC에 DHCP Option 설정

4. VPC Peering 설정

5. Route 53 설정

6. Route 53 - Resolver 설정(인바운드/아웃바운드 엔드포인트 + 규칙)

 

1, 2번 내용은 계속 해왔던 것이니 따로 작성하지는 않겠지만, DNS 인스턴스 설정 부분만 작성

 

0. IDC-DNSSRV에 DNS 인스턴스 구축

별로 특별할 것 없는 부분

이 부분은 다른 인스턴스와 별 다를 것이 없다. 하지만...

UserDate 설정 부분

이 부분이 문제다. 수작업으로 할 때에는 각 파일에 들어가서 수정했는데, 이걸 명령어로 수행해야 한다.

대충 추가하는 부분은 echo >> 를 사용했고, 수정하는 부분은 sed -i를 사용했다.

검증을 위해 아예 인스턴스로 접속해서 실행 후 생각대로 수정되었는지 확인했다.

 

 

1. VPC에 DHCP Option 설정

CloudFormation을 하다 보니 느낀 점이지만, 설정의 생성과 연동이 별개인 경우가 많았다. 이번에도 그렇다.

DHCP Option 생성을 위한 AWS::EC2::DHCPOptions와 VPC 연동을 위한 AWS::EC2::VPCDHCPOptionsAssociation 작업이 별개의 Type이다.

 

2. Route 53 호스팅 영역

먼저 AWS::Route53::HostedZone으로 호스팅 영역 생성

-> AWS::Route53::RecordSet으로 레코드 2개 생성 : 위에 적힌 지시자들은 필수.

-> !GetAtt 인스턴스작업.PrivateIp로 주소 입력을 동적으로 실행

 

3. VPC Peering 설정

VPC Peering 설정

이번에는 요청자와 수락자의 계정이 같아서 따로 더 작성할 내용은 없었다.

작업 작성 후 라우팅 테이블에 피어링 경로 추가

 

여기까지만 하면 IP 주소로 IDC-VPC와 AWS-VPC 간 통신은 가능하다. 이제 도메인 통신을 위한 Resolver 설정.

 

4. DNS Resolver 설정

Resolver Endpoint 설정

일단 인바운드/아웃바운드 엔드포인트 설정.

Direction 지시자로 인/아웃을 구분하고, IpAddresses 지시자로 정보를 입력한다.

Rule 설정 + VPC 연동

콘솔에서는 규칙 생성 시 VPC 연동을 하는데, 여기서는 규칙의 생성과 연동이 별개의 Type이다.

 

 

연휴마다 이런 과제는 괜찮은 것 같다. 예전 내용 복습도 하고, 문서 찾아보는 방법도 익히니 아주 유익한 과제였다.

'교육' 카테고리의 다른 글

[52일 차] 21.10.06 : AWS 12  (0) 2021.10.06
[51일 차] 21.10.05 : AWS 11  (0) 2021.10.05
[50일 차] 21.10.01: AWS 10  (0) 2021.10.01
[49일 차] 21.09.30 : AWS 9  (0) 2021.09.30
[48일 차] 21.09.29 : AWS 8  (0) 2021.09.29

댓글