各動作はAmazon Web Servicesより提供されているAWS CLIより実行されます。

起動処理(restore)

  1. 以下のコマンドにて、Route 53のAレコードに設定されているIPアドレスをAWS CLIで取得します。
    # aws --output text --cli-connect-timeout AWSCLI_CONNECT_TIMEOUT --cli-read-timeout AWSCLI_READ_TIMEOUT route53 list-resource-record-sets --hosted-zone-id $zoneId --query \"ResourceRecordSets[?Name == \'$fqdn.\']\" 2>&1
    

    上記コマンドの実行に失敗した場合は、起動処理はエラーで終了します。
    上記コマンドの実行に成功した場合は、次の項目2. の処理へ移行します。
  1. Route 53リソースと依存関係があるIPリソースからIPアドレスを取得します。
    Route 53のAレコードで設定されているIPアドレスとIPリソースのIPアドレスを比較して一致した場合は、正常と判断して起動処理は成功で終了します。

    一致しなかった場合は、次の項目3. の処理へ移行します。
  1. 以下のコマンドにて、Route 53のAレコードを更新します。何も設定されていない場合は、Aレコードを新規作成します。
    # aws --output text --cli-connect-timeout AWSCLI_CONNECT_TIMEOUT --cli-read-timeout AWSCLI_READ_TIMEOUT route53 change-resource-record-sets --hosted-zone-id $zoneId --change-batch \'$upsertJSON\' 2>&1
    

    更新および作成に失敗した場合は、異常と判断し起動処理はエラーで終了します。
    成功した場合は、次の項目4. の処理へ移行します。
  1. 以下のコマンドにて、Aレコードの更新、新規作成処理のステータスが“INSYNC”となっていることを確認します。
    INSYNCとなっていない場合は、ROUTE53_CHANGEID_INTERVALの値(デフォルト値:20秒)の間隔でで最大でROUTE53_CHANGEID_TRY_COUNTの値(デフォルト値:5回)の回数実施します。
    # aws --output text --cli-connect-timeout AWSCLI_CONNECT_TIMEOUT --cli-read-timeout AWSCLI_READ_TIMEOUT route53 get-change --id /change/$changeId 2>&1
    

    INSYNCとならなかった場合は、異常と判断し起動処理はエラーで終了します。
    INSYNCとなった場合は、次の項目5. の処理へ移行します。
  1. 再度、項目1. と同様の処理を行います。
  1. 再度、項目2. と同様の処理を行います。
    前の項目5. で取得したIPアドレスとIPリソースのIPアドレスが一致した場合は、正しいIPアドレスがAレコードに登録できたと判断し起動処理は成功で終了します。
    一致しなかった場合は、起動処理はエラーで終了します。

AWS CLIから応答がない場合はROUTE53_RESTORE_TIMEOUTの値(デフォルト値:140秒)でタイムアウトします。

停止処理(remove)

Route 53リソースに関する処理はありません。

監視処理(quickCheck)

  1. 以下のコマンドにて、Route 53のAレコードに設定されているIPアドレスをAWS CLIで取得します。
    # aws --output text --cli-connect-timeout AWSCLI_CONNECT_TIMEOUT --cli-read-timeout AWSCLI_READ_TIMEOUT route53 list-resource-record-sets --hosted-zone-id $zoneId --query \"ResourceRecordSets[?Name == \'$fqdn.\']\" 2>&1
    

    上記コマンドの実行に失敗した場合は、監視処理はエラーで終了します。
    上記コマンドの実行に成功した場合は、次の項目2. の処理へ移行します。
  1. Route 53リソースと依存関係があるIPリソースからIPアドレスを取得します。
    Route 53のAレコードで設定されているIPアドレスとIPリソースのIPアドレスを比較して一致した場合は、正常と判断して起動処理は成功で終了します。

    一致しなかった場合は、監視処理はエラーで終了します。

AWS CLIから応答がない場合はROUTE53_QUICKCHECK_TIMEOUTの値(デフォルト値:25秒)でタイムアウトします。ただし、タイムアウトではリソース障害とは判断しません。

回復処理(recover)

起動処理と同じ処理を実行します。
AWS CLIから応答がない場合はROUTE53_RECOVERY_TIMEOUTの値(デフォルト値:140秒)でタイムアウトします。

Recovery Kit for Route 53のパラメーターについて

処理概要の中で使用されているRecovery Kit for Route 53のパラメーターについては、Route53パラメータ一覧 をご参照ください。

フィードバック

お役に立ちましたか?

はい いいえ
お役に立ちましたか
理由をお聞かせください
フィードバックありがとうございました

このトピックへフィードバック

送信