ハンズオン事前準備(簡易版): 前日まで (独自ドメインを利用する場合)

1. Route53 委任セットの作成

手順の目的 [why]

Route53 委任セットを作成します。

設定値の指定

設定値の指定

手順に必要な設定値を変数に格納をします。

1. Route53委任セット識別子

Route53委任セット識別子を指定します。

変数の設定:

ROUTE53_REUSABLE_DELEGATION_SET_CALLER_PREFIX='handson-cli-route53-before-dgset'

変数の設定:

ROUTE53_REUSABLE_DELEGATION_SET_CALLER="${ROUTE53_REUSABLE_DELEGATION_SET_CALLER_PREFIX}-$(date +%s)" \
  && echo ${ROUTE53_REUSABLE_DELEGATION_SET_CALLER}

結果(例):

handson-cli-route53-before-dgset-XXXXXXXXXX

2. 一時ファイル用ディレクトリ名

一時ファイル用ディレクトリ名を指定します。

変数の設定:

DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET="${HOME}/environment/tmp-handson-cli-route53-before"

ディレクトリが存在することを確認します。

コマンド:

ls -d ${DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET}

結果(例:存在する場合):

${HOME}/environment/tmp-handson-cli-route53-before

存在しない場合は作成します。

コマンド:

mkdir -p ${DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET}

3. 一時ファイル名

一時ファイル名を指定します。

変数の設定:

FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET="${DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET}/handson-cli-route53-reusable_delegation_set.tmp" \
  && echo ${FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET}

結果(例):

${HOME}/environment/tmp-handson-cli-route53-before/handson-cli-route53-reusable_delegation_set.tmp

設定値の確認

各変数に正しい設定値が格納されていることを確認しながら保存します。

変数の確認:

cat << END

  # 1. ROUTE53_REUSABLE_DELEGATION_SET_CALLER:"handson-cli-route53-before-dgset-XXXXXXXXXX"
       ROUTE53_REUSABLE_DELEGATION_SET_CALLER="${ROUTE53_REUSABLE_DELEGATION_SET_CALLER}"
  # 2. DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET:"${HOME}/environment/tmp-handson-cli-route53-before"
       DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET="${DIR_TMP_ROUTE53_REUSABLE_DELEGATION_SET}"
  # 3. FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET:"${HOME}/environment/tmp-handson-cli-route53-before/handson-cli-route53-reusable_delegation_set.tmp"
       FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET="${FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET}"

END

下段の変数が入っていない、もしくは上段と同等の値が入っていない場合は、それぞれの手順番号に戻って変数の設定を行います。

処理の実行

Route53委任セットの作成

Route53委任セットを作成します。

変数の確認:

cat << END

  # ROUTE53_REUSABLE_DELEGATION_SET_CALLER:"handson-cli-route53-before-dgset-XXXXXXXXXX"
    ROUTE53_REUSABLE_DELEGATION_SET_CALLER="${ROUTE53_REUSABLE_DELEGATION_SET_CALLER}"

END

コマンド:

aws route53 create-reusable-delegation-set \
  --caller-reference ${ROUTE53_REUSABLE_DELEGATION_SET_CALLER}

結果(例):

{
  "Location": "https://route53.amazonaws.com/2013-04-01/delegationset/NXXXXXXXXXXXXXXXXXXXX",
  "DelegationSet": {
    "NameServers": [
        "ns-xxx.awsdns-xx.org",
        "ns-xxx.awsdns-xx.com",
        "ns-xxx.awsdns-xx.co.uk",
        "ns-xxx.awsdns-xx.net"
    ],
    "CallerReference": "handson-cli-route53-before-dgset-XXXXXXXXXX",
    "Id": "/delegationset/NXXXXXXXXXXXXXXXXXXXX"
  }
}

Route53委任セット識別子の保存

Route53委任セット識別子を一時ファイルに保存します。

コマンド:

echo "ROUTE53_REUSABLE_DELEGATION_SET_CALLER='${ROUTE53_REUSABLE_DELEGATION_SET_CALLER}'" \
  > ${FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET}

cat ${FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET}

結果(例):

ROUTE53_REUSABLE_DELEGATION_SET_CALLER='handson-cli-route53-before-dgset-XXXXXXXXXX'

完了確認

「Route53委任セット"handson-cli-route53-before-dgset-XXXXXXXXXX"が存在する。」ことを確認します。

コマンド:

aws route53 list-reusable-delegation-sets \
  --query "DelegationSets[?CallerReference == \`${ROUTE53_REUSABLE_DELEGATION_SET_CALLER}\`].CallerReference" \
  --output text

結果(例):

handson-cli-route53-before-dgset-XXXXXXXXXX

「一時ファイルファイル名"${HOME}/environment/tmp-handson-cli-route53-before/handson-cli-domain.tmp"にRoute53委任セット識別子の変数定義が存在する。」ことを確認します。

コマンド:

ls ${FILE_TMP_ROUTE53_REUSABLE_DELEGATION_SET}

結果(例):

${HOME}/environment/tmp-handson-cli-route53-before/handson-cli-route53-reusable_delegation_set.tmp

手順の完了

(参考) マネジメントコンソールの確認

マネジメントコンソールでは、Route委任セットの表示ができないため、本手順に対する確認手順はありません。