본문 바로가기

퍼블릭 클라우드

Amazon Route 53(cli53) 명령어 도구

728x90

Amazon Route 53(cli53) 명령 도구

Amazon Route 53 CLI(Command Line Interface) 도구인 cli53는 Route 53 DNS 서비스를 명령 줄에서 관리하기 위한 강력한 도구입니다. cli53를 사용하면 DNS 레코드를 생성, 수정, 삭제하고, 호스트 존 설정 및 관리, 호스트존 스냅샷 생성 등 다양한 DNS 관리 작업을 수행할 수 있습니다.

 

1. Homebrew 설치

Homebrew는 macOS에서 패키지 관리를 쉽게 할 수 있도록 도와주는 패키지 관리자입니다. 만약 Homebrew가 설치되어 있지 않다면, 아래 명령을 사용하여 Homebrew를 설치합니다.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

 

2. cli53 설치

Homebrew를 사용하여 cli53를 설치합니다.

brew install cli53

이 명령을 실행하면 cli53 패키지와 종속성이 설치됩니다.

 

3. cli53 버전 확인

설치가 완료되면 cli53의 버전을 확인할 수 있습니다.

cli53 --version

버전 정보가 표시되면 설치가 성공적으로 완료된 것입니다.

 

이제 cli53를 사용하여 Route 53 DNS 서비스를 관리할 수 있습니다. 필요한 명령어를 실행하여 DNS 레코드를 관리하거나 호스트존 스냅샷을 생성하고 복원할 수 있습니다. CLI를 사용할 때 AWS 계정에 대한 액세스 권한이 설정되어 있는지 확인하고, 필요한 경우 AWS CLI를 구성해야 합니다.

 

728x90

cli53를 사용하여 주요 Route 53 작업을 수행하는 예시

1. Route 53 레코드 조회

cli53 list example.com

2. 새 레코드 생성

cli53 rrcreate example.com www A 1.2.3.4

3. 레코드 수정

cli53 rrcreate example.com www A 5.6.7.8 --replace

4. 레코드 삭제

cli53 rrdelete example.com www A

5. 호스트존 스냅샷 생성

cli53 create example.com --from example.com-backup-2023-09-20

6. 호스트존 스냅샷 복원

cli53 import example.com --file example.com-backup-2023-09-20

7. 호스트존 스냅샷 삭제

cli53 delete example.com-backup-2023-09-20

 

자세한 내용은 cli53의 공식 GitHub 페이지나 AWS Route 53 문서를 참조하십시오.

 

Route 53 호스트 존 목록 조회

cli53 list --profile default
$ cli53 list --profile default
ID                    Name        Record count Comment
A10374055IGHUBAG60ZYX scbyun.com. 9            scbyun.com domain

Route 53 호스트 존의 정보를 JSON 형식으로 가져옴

cli53 list -format json | jq .
$ cli53 list -format json | jq .
[
  {
    "CallerReference": "dd5fb3aa-61b8-900a-8z78-d88974ec0d99",
    "Config": {
      "Comment": "scbyun.com - hosting.kr domain",
      "PrivateZone": false
    },
    "Id": "/hostedzone/A10374055IGHUBAG60ZYX",
    "LinkedService": null,
    "Name": "scbyun.com.",
    "ResourceRecordSetCount": 9
  }
]

Route 53 호스트 존 목록을 가져오는 명령

aws --profile default route53 list-hosted-zones | jq .
$ aws --profile default route53 list-hosted-zones | jq .
{
  "HostedZones": [
    {
      "Id": "/hostedzone/A10374055IGHUBAG60ZYX",
      "Name": "scbyun.com.",
      "CallerReference": "dd5fb3aa-61b8-900a-8z78-d88974ec0d99",
      "Config": {
        "Comment": "scbyun.com domain",
        "PrivateZone": false
      },
      "ResourceRecordSetCount": 9
    }
  ]
}

Route 53 호스트 존 ID(A10374055IGHUBAG60ZYX)목록을 가져오는 명령

aws --profile default route53 list-resource-record-sets --hosted-zone-id A10374055IGHUBAG60ZYX
$ aws --profile default route53 list-resource-record-sets --hosted-zone-id A10374055IGHUBAG60ZYX | jq .
{
  "ResourceRecordSets": [
    {
      "Name": "scbyun.com.",
      "Type": "A",
      "TTL": 300,
      "ResourceRecords": [
        {
          "Value": "127.100.236.140"
        }
      ]
    },
    {
      "Name": "scbyun.com.",
      "Type": "NS",
      "TTL": 86400,
      "ResourceRecords": [
        {
          "Value": "ns-11.awsdns-02.com."
        },
        {
          "Value": "ns-1775.awsdns-26.co.uk."
        },
        {
          "Value": "ns-1487.awsdns-24.org."
        },
        {
          "Value": "ns-8630.awsdns-13.net."
        }
      ]
    },
    {
      "Name": "scbyun.com.",
      "Type": "SOA",
      "TTL": 900,
      "ResourceRecords": [
        {
          "Value": "ns-10.awsdns-01.com. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400"
        }
      ]
    },
    ...
          ]
    }
  ]
}

 

참고URL

- githubl : https://github.com/barnybug/cli53

 

728x90