【GCP入門編・第26回】 Cloud DNS でドメインの DNS レコードを作成しよう!

【GCP入門編・第26回】 Cloud DNS でドメインの DNS レコードを作成しよう!

GCP

投稿日:2018/12/10 | 最終更新日:2021/10/20

独自のドメインを使って、開発したサービスを公開したりメールサーバーを運用したりする際に必要となるのが DNS サーバーの設定です。ドメインをドメインレジストラで購入し、ドメインレジストラが提供する DNS サーバーで設定を行ったことがある方は多いのではないでしょうか。

GCP では Cloud DNS という名前で DNS のサービスが提供されています。信頼性が非常に高く、レイテンシーの低い Google の DNS サーバーを使用して、自分のドメインの名前解決を行うことが可能です。 Google の SLA は、Google の権威ネームサーバーについて 100% の可用性を保証しており、本番環境で使用する DNS サーバーとして安心して利用できるサービスとなっています。

さらに、 Cloud DNS は他のGCPのサービスと同様、コマンドラインや API 経由で DNS レコードの作成や編集を行うことが可能です。プログラマブルに DNS のレコードを編集可能なため、アプリケーションが自動的に DNS の設定を行うようなケースにも対応できます。

この記事では、 Cloud DNS を使用して、取得したドメインの DNS レコードを作成してみます。ウェブブラウザのコンソールと、 gcloud コマンドを使用した例を紹介します。

この記事の目的

  • Cloud DNS を使用して、取得したドメインの DNS レコードを作成しよう。

ゾーンを作成する

ゾーン (Cloud DNS での正式名称はマネージド ゾーン)とは、同じドメイン名(例: example.com)を共有する DNS レコードをすべて格納するコンテナのことを指します。

ゾーンを作成すると、そのゾーンに対する DNS クエリへのレスポンスを処理するためにネームサーバーのセットが自動的に割り当てられます。

まずはウェブブラウザで GCP のコンソールを開き、左側のメニューから [Network services] をクリックし、次に [Cloud DNS] をクリックします。

下の画面のように、 Cloud DNS のゾーン一覧ページが開きます。一つもゾーンを作成していない状態では、 [Create Zone] ボタンが表示されているのみとなっているでしょう。

[Create Zone] をクリックすることで、新規ゾーンの作成画面に移動します。下の画面に表示されているように、 Zone name に “my-example-zone” と入力し、 DNS name に取得したドメイン名を入力します。 DNS SEC は off のままに、 Description は空白のままにします。

入力が完了したら、 [Create] をクリックします。これでゾーンの作成は完了です。Zone details のページにリダイレクトされ、作成されたゾーンの情報が閲覧できます。

ここまでの操作を行ったら、次にドメインレジストラに移動してネームサーバーを設定します。ネームサーバーの設定はドメインレジストラごとに異なりますが、指定するネームサーバーの一覧は Zone details のページの [Registrar Setup] をクリックすると表示されます。ネームサーバーの一覧は下の画面のように表示されます。

ドメインレジストラでのネームサーバー設定が完了したら、レコードの追加を行いましょう。

レコードの追加を行う

レコードの追加は Zone details ページの [Add Record set] ボタンをクリックすると行うことができます。ボタンをクリックすると、下の画面のようにレコードの情報を入力する画面が表示されます。

この例では、 gcp.design というゾーンに、 www.gcp.design というドメイン名のAレコードを追加しています。 [Resource Record Type] をクリックするとレコードのタイプを選択することが可能です。

情報の入力が完了したら、 [Create] をクリックします。10分ほど時間が経ったら、ターミナルを開き、以下のコマンドで名前解決が行えるかどうか試してみましょう。

nsloookup www.gcp.design

上のコマンドを実行すると、以下の画面のように設定した IP アドレスが表示されるでしょう。

gcloud コマンドを利用して、レコードの追加を行う

Cloud DNS では gcloud コマンドを利用してゾーンの管理を行うことが可能です。ここでは、 gcloud コマンドを利用してレコードの追加を行ってみましょう。

まず、ゾーンの一覧を gcloud コマンドで表示してみます。以下のコマンドを実行すると、先ほど作成したゾーンが表示されます。

gcloud dns managed-zones list

次に、このゾーンに登録されているレコードの一覧を表示します。以下のコマンドを実行します。

gcloud dns record-sets list --zone=my-example-zone

それでは、このゾーンに新規にレコードを追加します。ゾーンの追加は、トランザクションを開き、レコードの操作を行い、トランザクションを閉じるという手順で行われます。

トランザクションは、一緒に伝播すべき 1 つ以上のレコード変更のグループです。したがって、トランザクション全体が成功または失敗のいずれかになるため、データが中間状態のままになることはありません。

まず、以下のコマンドでトランザクションを開始します。実行後は以下の画面のように、メッセージのみが表示されます。

gcloud dns record-sets transaction start -z=my-example-zone

次に例として、app.gcp.designを追加します。以下のコマンドでトランザクションにレコードを作成する操作が追加されます。

gcloud dns record-sets transaction add -z=my-example-zone \
--name="app.gcp.design." --type A --ttl=300 "IPアドレス"

この時点ではまだ、操作は実行されていません。次のコマンドを実行することで、トランザクションが実行されます。

gcloud dns record-sets transaction execute -z=my-example-zone

上の画面のように、トランザクションID, 開始時間、状態が表示されます。record-set list コマンドで追加が正常に行われたかどうか確認してみましょう。

gcloud dns record-sets list --zone=my-example-zone

おわりに

いかがでしたか。 Cloud DNS では コンソールからでも、 gcloud コマンドでも DNS ゾーンの管理を簡単に行うことが可能です。
GCP 上で独自ドメインを用いた各種サービス開発を行なっている場合には、 DNS 管理を一元化でき、 Google の高い可用性と低いレイテンシの恩恵を受けることが可能な Cloud DNS を一度検討してみてはいかがでしょうか。



弊社トップゲートでは、 Google Cloud (GCP) 、または 20ID以上の Google Workspace(旧G Suite) 導入をご検討をされているお客様へ「Google Meet で無料個別相談会」を実施いたします。導入前に懸念点を解決したい方、そもそも導入した方がいいのかをお聞きしたい方はお気軽にお申し込みください!

トップゲート経由でGoogle Cloud (GCP) をご契約いただけるとGoogle Cloud (GCP) の利用料金はずっと3%オフとお得になります!

お申込みはこちら

弊社トップゲートでは、GCPを活用したトレーニングも開催しておりますので、ご興味ございましたらお気軽にお問い合わせください!

GCPトレーニングのご相談はこちら

メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
GCP、G Suite、TOPGATEの最新情報満載!

メルマガ登録はこちら

同じシリーズの記事

記事を探す

GCP のメリットを最大限に活用しよう!

Google Cloud・Google Workspace のご相談・
お見積り依頼はお気軽に
お問合せフォーム