Amazon Route53

μ§€λ‚œ ν¬μŠ€νŒ…μ—μ„œλŠ” DNS κ°€ 무엇인지 μ•Œμ•˜μœΌλ‹ˆ,
μ΄λ²ˆμ‹œκ°„μ—λŠ” Amazon Route53 에 λŒ€ν•΄ μ•Œμ•„λ³΄λ„λ‘ ν•˜μž.

image-20220703144312323

  • κ³ κ°€μš©μ„±, ν™•μž₯성을 κ°–μΆ˜ μ™„μ „νžˆ κ΄€λ¦¬λ˜λ©° κΆŒν•œμžˆλŠ” DNS 이닀.
    • μ—¬κΈ°μ„œ κΆŒν•œμ΄ μžˆλ‹€λΌλŠ” λœ»μ€, μ‚¬μš©μžκ°€ DNS records λ₯Ό μ—…λ°μ΄νŠΈν•  수 μžˆλ‹€λŠ” μ˜λ―Έμ΄λ‹€.
    • 즉, DNS 에 λŒ€ν•œ μ™„μ „νžˆ μ œμ–΄ν•  수 μžˆλ‹€.
  • Route53 λ˜ν•œ Domain Registrar 쀑 ν•˜λ‚˜μ΄λ‹€.
  • λ¦¬μ†ŒμŠ€ κ΄€λ ¨ μƒνƒœ 확인을 ν•  수 μžˆλ‹€. (ν—¬μŠ€μ²΄ν¬)
  • 100% SLA κ°€μš©μ„±μ„ μ œκ³΅ν•˜λŠ” μœ μΌν•œ AWS μ„œλΉ„μŠ€μ΄λ‹€.
  • Route53 μ΄λΌλŠ” μ΄λ¦„μ˜ 이유
    • DNS Port κ°€ μ „ν†΅μ μœΌλ‘œ 53번 포트λ₯Ό μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€.

Route53 - Records

  • Route53 μ—μ„œ μ—¬λŸ¬ DNS Records λ₯Ό μ •μ˜ν•˜κ³ , λ ˆμ½”λ“œλ₯Ό 톡해 νŠΉμ • Domain으둜 λΌμš°νŒ…ν•˜λŠ” 방법을 μ •μ˜ν•œλ‹€.
  • 각각의 Records 듀은 μ•„λž˜λ“€μ„ ν¬ν•¨ν•œλ‹€.
    • Domain/subDomain Name - ex) example.com
    • Record Type - ex) A or AAAA or CNAME, etc….
    • Value - ex) 12.34.56.78
    • Routing Policy - Route53이 Query에 μ‘λ‹΅ν•˜λŠ” 방식
    • TTL - DNS Resolverμ—μ„œ Recordsκ°€ Caching λ˜λŠ” μ‹œκ°„μ„ μ˜λ―Έν•œλ‹€.
  • Route53 은 μ•„λž˜μ˜ DNS Records Type 듀을 μ§€μ›ν•œλ‹€.
    • (ν•„μˆ˜) A, AAAA, CNAME, NS
    • (κ³ κΈ‰) CAA, DS, MX, NARTR, PTR, SOA, TXT, SPF, SRV

Record Types

Records 의 μ’…λ₯˜λ“€μ„ μ•Œμ•„λ³΄μž.

  • A
    • 호슀트 이름과 IPv4 λ₯Ό Mapping ν•œλ‹€.
    • ex) example.com 은 1.2.3.4 둜 λ°”λ‘œ μ—°κ²°λœλ‹€.
  • AAAA
    • A 와 λΉ„μŠ·ν•œ 아이디어
    • 호슀트 이름과 IPv6 μ£Όμ†Œλ₯Ό λ§€ν•‘ν•œλ‹€.
  • CNAME
    • 호슀트 이름과 λ‹€λ₯Έ 호슀트 이름과 λ§€ν•‘ν•œλ‹€.
    • λŒ€μƒ 호슀트 이름은 A or AAAA Record κ°€ 될 μˆ˜λ„ μžˆλ‹€.
    • Route53 μ—μ„œ DNS 이름 곡간 λ˜λŠ” Zone Apex의 μƒμœ„ λ…Έλ“œμ— λŒ€ν•œ CNAMESλ₯Ό μƒμ„±ν• μˆ˜ μ—†λ‹€.
      • example.com 에 CNAME 을 λ§Œλ“€μˆ˜λŠ” μ—†μ§€λ§Œ www.example.com에 λŒ€ν•œ CNAME
        RecordλŠ” λ§Œλ“€ 수 μžˆλ‹€.
  • NS
    • ν˜ΈμŠ€νŒ… 쑴의 이름 μ„œλ²„(Name Server)이닀.
    • μ„œλ²„μ˜ DNS 이름 or IPμ£Όμ†Œλ‘œ ν˜ΈμŠ€νŒ… 쑴에 λŒ€ν•œ DNS 쿼리에 응닡할 수 μžˆλ‹€.
    • νŠΈλž˜ν”½μ΄ λ„λ©”μΈμœΌλ‘œ λΌμš°νŒ… λ˜λŠ” 방식을 μ œμ–΄ν•œλ‹€.

Hosted Zones

ν˜ΈμŠ€νŒ… 쑴을 μ‚΄νŽ΄λ³΄μž

  • ν˜ΈμŠ€νŒ… 쑴은 Record 의 Container 이닀.
  • Domain κ³Ό subDomain 으둜 κ°€λŠ” Traffic 의 Routing 방식을 μ •μ˜ν•œλ‹€.

  • ν˜ΈμŠ€νŒ… μ‘΄ 2가지 μ’…λ₯˜
    • Public Hosted Zones
      • 퍼블릭 도메인 이름을 μ‚΄ λ•Œλ§ˆλ‹€, mypublicdomain.com이 퍼블릭 도메인 이름이라면,
        퍼블릭 ν˜ΈμŠ€νŒ… 쑴을 λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.
      • 퍼블릭 쑴은 쿼리에 도메인 이름 app1.mypublicdomainname.com의 IPκ°€ 무엇인지 μ•Œ 수 μžˆλ‹€.
    • Private Hosted Zones
      • κ³΅κ°œλ˜μ§€ μ•Šμ€ 도메인 이름을 μ§€μ›ν•œλ‹€.
      • 가상 프라이빗 ν΄λΌμš°λ“œ(VPC) 만이 URL을 Resolve ν•  수 μžˆλ‹€.
      • app1.company.internal 같은 경우
      • κΈ°μ—…μ—μ„œλŠ” λ•Œλ•Œλ‘œ νšŒμ‚¬ λ„€νŠΈμ›Œν¬ λ‚΄μ—μ„œλ§Œ μ ‘κ·Όν•  수 μžˆλŠ” URL이 μžˆλ‹€.
      • λΉ„κ³΅κ°œ URL 이기 λ•Œλ¬Έμ— λΉ„κ³΅κ°œλ˜μ–΄ μžˆλ‹€. μ΄λ©΄μ—λŠ” Private DNS Record κ°€ μžˆλ‹€
  • AWSμ—μ„œ λ§Œλ“œλŠ” μ–΄λ–€ ν˜ΈμŠ€νŒ…μ‘΄μ΄λ“  월에 0.5 λ‹¬λŸ¬λ₯Ό μ§€λΆˆν•΄μ•Ό ν•œλ‹€.
    • Route53 μ‚¬μš©μ€ λ¬΄λ£Œκ°€ μ•„λ‹ˆλ‹€.
    • 도메인 이름을 등둝 및 κ΅¬μž…ν•˜λ©΄ 1년에 μ΅œμ†Œ 12$ λ₯Ό μ§€λΆˆν•΄μ•Ό ν•œλ‹€. (ex) renine94.com

Public vs Private Hosted Zones

image-20220703145944285

  • Public Hosted Zone
    • 곡개된 Client λ‘œλΆ€ν„° 온 Query에 응닡할 수 μžˆλ‹€.
    • μ›Ή λΈŒλΌμš°μ €μ—μ„œ example.com 을 μš”μ²­ν•˜λ©΄ IPλ₯Ό λ°˜ν™˜ν•œλ‹€.
  • Private Hosted Zone
    • ν•΄λ‹Ή VPC μ—μ„œλ§Œ λ™μž‘ν•œλ‹€.
    • λΉ„κ³΅κ°œ 도메인 μ΄λ¦„μ˜ Private Resourceλ₯Ό 식별할 수 있게 ν•œλ‹€.
    • ex)
      • EC2 κ°€ 1개 μžˆλ‹€. webapp.example.internal 을 μ‹λ³„ν•˜κ³ μž ν•œλ‹€.
      • 또 λ‹€λ₯Έ EC2 μ—μ„œλŠ” api.example.internal 을 μ‹λ³„ν•˜κΈ° μ›ν•˜κ³ 
      • DB μ—μ„œλŠ” db.example.internal 을 μ‹λ³„ν•˜κ³ μž ν•œλ‹€.
      • Private Host Zone에 λ“±λ‘ν•˜λ €κ³  ν•˜λŠ”λ°, 첫 번째 EC2 κ°€ api.example.internal 을 μš”μ²­ν•˜λŠ” 경우
      • private Host Zone은 Private IP 10.0.0.10 μ΄λΌλŠ” 닡을 κ°–κ³  μžˆλ‹€.
      • EC2 λŠ” DB에 연결이 ν•„μš”ν•  μˆ˜λ„ μžˆλŠ” 2번째 EC2 에 μ—°κ²°ν•œλ‹€.
      • db.example.internal 이 무엇인지 물어보면 private hosted zone 은 private IPλ₯Ό μ•Œλ €μ€€λ‹€.
      • EC2 μΈμŠ€ν„΄μŠ€λŠ” DB에 μ§μ ‘μ μœΌλ‘œ μ—°κ²°ν•  수 μžˆλ‹€
    • 였직 private resource, 예컨데 VPC μ—μ„œλ§Œ Query μ§ˆμ˜ν•  수 μžˆλ‹€.
  • public host zone은 private host zoneκ³Ό λ˜‘κ°™μ΄ λ™μž‘ν•˜μ§€λ§Œ,
    public hosted zone은 λˆ„κ΅¬λ“  μš°λ¦¬λ“€μ˜ Record λ₯Ό 쿼리 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

νƒœκ·Έ: , ,

μΉ΄ν…Œκ³ λ¦¬:

μ—…λ°μ΄νŠΈ:

λŒ“κΈ€λ‚¨κΈ°κΈ°