cli53 とシェルを使って AWS Route 53 に複数レコードを追加してみた

  • このエントリーをはてなブックマークに追加
  • Pocket

こんにちは、SREチーム エンジニアの綿引です。

Route 53 に大量のレコードを登録する時、ホストゾーンに作成したレコードがなければ 「ゾーンファイルのインポート」 が使えますが、1レコードでも作ってしまうと使えないため、大量のレコードを泣く泣く手で登録したという経験がある方もいらっしゃるのではないでしょうか?

そこで Route 53cli53 とシェルを使って複数のレコードを登録してみました。

既存のホストゾーンに大量のレコードを追加したいが手動は嫌だ! という方のご参考になればと思います。

cli53 とは

cli53 は GitHub で公開されている Route 53 へのレコード登録・削除・更新ができるツールです。

他にもホストゾーンの作成・削除・一覧表示や、フェイルオーバー、加重レコード など細かい設定もできるようです。

検証準備

検証の準備として以下を用意します。
実際に使用する際はホストゾーンを対象のものに読み替えていただければと思います。

  • ホストゾーンはテスト用に 「test.example」 を作成
  • 自端末(Mac)に AWS CLI をインストールし credentials の設定も行う

cli53 インストール方法

では cli53 を Mac にインストールしていきます。
Linux、Mac、Windows で使えるようですが、今回は Mac にインストールしたいと思います。

Mac から Route 53 に対して更新を行うので認証情報設定ファイルも用意しておきます。

レコード登録

追加コマンドの書式は以下です。

では実際に1レコード追加してみましょう。これが追加前のホストゾーンです。

以下のコマンドで追加を行います。

想定のレコードが追加されました。

シェルで複数レコードを登録してみる

次はシェルを使って複数のレコードを登録していきます。
今回はサブドメインだけ異なる Value は同じレコードを 5 つほど登録します。

実行ファイルのシェルとは別に、登録するサブドメインに関しては conf ファイルを別で作成し read で読み込む形にします。

まずは実行ファイルである cli53_test.sh を Mac に作成します。

cli53_test.sh

次にサブドメインを一覧にした conf ファイルを作成します。

name.conf

あとは、シェルに実行権限を付与し、実行します。

完了しました。

実際に対象のレコードが追加されました。
name.conf にサブドメインを追記していけば、大量のレコード追加も可能です。

最後に

今回は cli53 とシェルを使ってレコードを追加してみましたが、レコードをさくっと追加できていいツールでした。
シェルで Value 部分も変えたい場合は、read する conf ファイルを分けたり、cut などで必要なフィールドを取得すれば問題なさそうです。

エンジニア募集中

Wedding Parkでは一緒に技術のウエディングパークを創っていくエンジニアを募集しています。
興味のある方はぜひ一度気軽にオフィスに遊びにいらして頂ければと思います。
株式会社ウエディングパークwantedly

  • このエントリーをはてなブックマークに追加
  • Pocket

SNSでもご購読できます。

コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください