📝

[Route53]ホストゾーンリソース削除メモ

2025/02/13に公開

きっかけ


CostExplolerにて、毎月地味に「Route53」に0.5(USD)課金されていたためチェック

0.5(USD)という値は以下からくるようです

https://aws.amazon.com/jp/route53/pricing/

Route53のHostedZoneの削除に失敗した際に行う事

Route53を見に行ったところ、何等かのハンズオンで作成したホストゾーンが残っていたため削除を試みた。
その際、エラーとなったためGPTにききつつすすめた削除方法をメモ:

・ネームスペースの削除コマンドの実施

PS C:\Users\hogehoge> aws servicediscovery delete-namespace --id ns-hugahugapiyopiyo

・削除用コマンド
https://docs.aws.amazon.com/cli/latest/reference/servicediscovery/delete-namespace.html

aws servicediscovery delete-namespace --id ns-hugahugapiyopiyo

・エラーメッセージ

An error occurred (ResourceInUse) when calling the DeleteNamespace operation: Namespace has associated services; delete the services before deleting the namespace
PS C:\Users\hogehoge> aws servicediscovery delete-namespace --id ns-hugahugapiyopiyo
An error occurred (ResourceInUse) when calling the DeleteNamespace operation: Namespace has associated services; delete the services before deleting the namespace

・エラーの意味
このエラーは、Z00111222333444555666 という Route 53 Hosted Zone が AWS Cloud Map によって管理されているため、手動で削除できない ことを意味しています。
CloudMapから名前空間を削除することが必要とのこと

(1)サービス一覧の確認

PS C:\Users\hogehoge> aws servicediscovery list-services --filters Name=NAMESPACE_ID,Values=ns-hugahugapiyopiyo
{
    "Services": [
        {
            "Id": "srv-aaabbbcccdddeeef",
            "Arn": "arn:aws:servicediscovery:ap-northeast-1:111222333444:service/srv-aaabbbcccdddeeef",
            "Name": "ctn-cloud-hdon-servForCicd",
            "Type": "DNS_HTTP",
            "DnsConfig": {
                "RoutingPolicy": "MULTIVALUE",
                "DnsRecords": [
                    {
                        "Type": "A",
                        "TTL": 15
                    }
                ]
            },
            "HealthCheckCustomConfig": {
                "FailureThreshold": 1
            },
            "CreateDate": 1726589837.324
        }
    ]
}

(2)ServiceIdの確認

aws servicediscovery list-instances --service-id srv-aaabbbcccdddeeef
PS C:\Users\hogehoge> aws servicediscovery list-instances --service-id srv-aaabbbcccdddeeef
{
    "Instances": []
}

(3)サービスの削除:"Instances": [] ということは、このサービスには登録済みのインスタンスがない ので、そのまま サービスの削除 に進む

aws servicediscovery delete-service --id srv-aaabbbcccdddeeef

(4)サービス削除が完了したら、CloudMapの名前空間の削除も可能

PS C:\Users\hogehoge> aws servicediscovery delete-namespace --id ns-hugahugapiyopiyo
{
    "OperationId": "oncepv65dqmq6ijkq5t75fbc7leojxyb-a123b456z"
}

OperationId が返ってきたので、名前空間の削除プロセスが開始
しかし、Cloud Map の削除は非同期処理なので、完了するまで少し時間がかかることがある
[確認]

aws servicediscovery get-operation --operation-id oncepv65dqmq6ijkq5t75fbc7leojxyb-a123b456z

このコマンドの出力に Status が含まれている

PS C:\Users\hogehoge> aws servicediscovery get-operation --operation-id oncepv65dqmq6ijkq5t75fbc7leojxyb-a123b456z
{
    "Operation": {
        "Id": "oncepv65dqmq6ijkq5t75fbc7leojxyb-a123b456z",
        "Type": "DELETE_NAMESPACE",
        "Status": "SUCCESS",
        "CreateDate": 1738286869.951,
        "UpdateDate": 1738286906.263,
        "Targets": {
            "NAMESPACE": "ns-hugahugapiyopiyo",
            "ROUTE_53_CHANGE_ID": "C042823034RFHTUWRQJKJ"
        }
    }
}
Status: SUCCESS → 名前空間の削除完了 ✅
Status: PENDING → まだ削除処理中 ⏳(少し待つ)
Status: FAIL → 削除に失敗 ❌(エラー内容を確認)

(5)ホストゾーンの削除

aws route53 delete-hosted-zone --id Z00111222333444555666

(6)削除確認

aws route53 list-hosted-zones
PS C:\Users\hogehoge> aws route53 list-hosted-zones
{
    "HostedZones": []
}

削除完了
"HostedZones": [] になっているので、Route 53 の Hosted Zone も完全に削除済みであることが確認できた

以上で、
・Cloud Map の名前空間 (ns-hugahugapiyopiyo)
・関連する Route 53 Hosted Zone (Z00111222333444555666)
の削除は無事に完了

✅ 最終結果:
✔ Cloud Map の名前空間 → 削除済み
✔ Route 53 の Hosted Zone → 削除済み

結果

現在は毎月0.5(USD)課金され続けていた「Route53」で絞ってみたらきちんと
課金無しになっていました。
めでたしめでたし👏

Discussion