このチュートリアルでは、ドメインを登録してサンプルのウェブサーバーを設定し、Cloud DNS を使用してそのウェブサーバーを指すドメイン URL を設定するプロセスについて説明します。
Google Cloud で Terraform を初めて使用する場合は、Terraform を使ってみるをご覧ください。
目標
このチュートリアルでは、次のタスクを実行する方法を説明します。- Cloud Domains を使用してドメイン名を登録する
- Compute Engine 仮想マシン(VM)インスタンスを作成します。
- 基本的な Apache ウェブサーバーを実行する
- Cloud DNS を使用してドメインを設定する
- ネームサーバーを更新する
- 設定を確認する
費用
ドメイン名の登録には費用がかかります。 Cloud Domains の料金については、Cloud Domains の料金をご覧ください。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
Compute Engine API を有効にします。
ドメイン名を登録します。
すでにドメインを登録している場合は、このセクションをスキップできます。
Cloud Domains を使用してドメインを登録できます。Cloud Domains では、始める前にで作成したものと同じ請求先アカウントをドメインに使用できます。Cloud Domains を使用してドメインを登録する方法については、ドメインの登録をご覧ください。
仮想マシン インスタンスを作成する
コンソール
Compute Engine で Linux 仮想マシン(VM)インスタンスを作成するには、次の手順に沿って操作します。
- In the Google Cloud console, go to the Create an instance page.
- In the Boot disk section, click Change to begin configuring your boot disk.
- On the Public images tab, choose Debian GNU/Linux.
- Click Select.
- In the Firewall section, select Allow HTTP traffic.
- To create the VM, click Create.
インスタンスが起動するまで、しばらくお待ちください。インスタンスの準備が整うと、[VM インスタンス] ページに緑色のステータス アイコン付きで表示されます。
インスタンスへの接続
- In the Google Cloud console, go to the VM instances page.
- In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.
Linux インスタンスとのやり取りに使用するターミナル ウィンドウが用意されています。
詳しくは、Linux VM の使用に関するクイックスタートをご覧ください。
基本的な Apache ウェブサーバーの実行
このセクションでは、Apache ウェブサーバーを実行してテストします。
SSH ウィンドウから、Debian パッケージ管理システムを使用して
apache2
パッケージをインストールします。sudo apt-get update && sudo apt-get install apache2 -y
Apache をインストールすると、オペレーティング システムにより Apache サーバーが自動的に起動します。
次のコマンドを使用して、Apache ウェブサーバーのデフォルトのウェブページを上書きします。
echo "<!doctype html><html><body><h1>Hello World!</h1></body></html>"
| sudo tee /var/www/html/index.html
サーバーをテストする
インスタンスの外部 IP でトラフィックが処理されているかどうかを確認します。
コンソール
- Google Cloud コンソールで [VM インスタンス] ページに移動します。
- [外部 IP] 列で、インスタンスの外部 IP アドレスをコピーします。
- ブラウザで、
http://[EXTERNAL_IP]
に移動します。サーバーがConnection Refused
エラーを返すため、接続にhttps
を使用しないでください。
「Hello World!」ページが表示されます。
詳しくは、基本的な Apache ウェブサーバーを実行するをご覧ください。
Cloud DNS を使用してドメインを設定する
既存のプロバイダから移行する場合は、既存のゾーンを Cloud DNS にインポートできます。手順については、既存のプロバイダから DNS 構成をエクスポートするをご覧ください。そうでない場合は、次の手順を使用して新しい一般公開ゾーンを作成してください。
コンソール
Google Cloud Console で、[DNS ゾーンの作成] ページに移動します。
[ゾーンのタイプ] で [公開] を選択します。
[ゾーン名] に「
my-new-zone
」と入力します。[DNS 名] に、登録したドメイン名を使用してゾーンの DNS 名のサフィックスを入力します(例:
example.com
)。[DNSSEC] で、
Off
の設定が選択されていることを確認します。[作成] をクリックして、NS レコードと SOA レコードが入力されたゾーンを作成します。
登録したドメイン名がホスティング サーバーの IP アドレスを指すようにするには、レコードをゾーンに追加する必要があります。
- [ゾーンの詳細] ページで、[標準を追加] をクリックします。
- [リソース レコードのタイプ] メニューで A を選択します。
- [IPv4 アドレス] に、インスタンスの外部 IP アドレスを入力します。
- [作成] をクリックして、ゾーンの A レコードを作成します。
(省略可)ドメイン名に接頭辞(
www.
など)を付ける場合は、CNAME レコードを追加します。- [標準を追加] をクリックします。
- [DNS 名] フィールドに、ドメインの接頭辞
www
を追加します。 - [リソース レコードのタイプ] で [CNAME] を選択します。
- [正規名] で、ドメイン名に続いてピリオドを入力します(例:
example.com.
)。 - [作成] をクリックします。
ネームサーバーを更新する
Cloud Domains のネームサーバーを更新するには、次の手順を行います。
Google Cloud コンソールで [Cloud Domains] ページに移動します。
編集するドメイン名をクリックします。ドメイン名の横にある
[その他の操作] をクリックして編集メニューを表示することもできます。DNS の詳細を編集するには、[DNS の詳細を編集] をクリックします。
[Cloud DNS を使用する(推奨)] を選択します。
[Cloud DNS ゾーン] リストで
my-new-zone
を選択します。[保存] をクリックします。
Terraform
Terraform リソースを使用すると、仮想マシン(VM)インスタンスの作成、Apache ウェブサーバーの実行、Cloud DNS を使用したドメインの設定、ネームサーバーの更新を行うことができます。
Terraform モジュールを使用して、一般公開ゾーン、限定公開ゾーン、ピアリング ゾーン、転送ゾーンで Cloud DNS を設定することもできます。ゾーンの詳細については、DNS ゾーンの概要をご覧ください。
設定を確認する
構成が機能していることを確認するには、ネームサーバーが更新された後、ドメイン名(example.com
など)に移動します。構成が機能していると、ドメインは自分の IP アドレスに解決され、基本的な Apache ウェブサーバーを実行するで作成した「Hello World!」ページを表示する Compute Engine VM を指します。
また、設定が正しいことを確認するには、ターミナル ウィンドウで dig +trace example.com
コマンドを実行することによっても行えます。example.com
は、登録したドメイン名に置き換えてください。
dig +trace example.com
出力の最後には次のものが含まれます。IP_ADDRESS
は、ウェブサーバーの IP アドレスです。
example.com. 300 IN A IP_ADDRESS ;; Received 62 bytes from 216.239.34.109#53(ns-cloud-d2.googledomains.com) in 62 ms
変更が成功したことを確認するには、次のコマンドを実行します。
example.com IN NS <your Cloud DNS name servers>
DNS 伝搬の完了を待機した後、nslookup
コマンドを実行して設定を確認することもできます。
nslookup example.com
出力は次のようになります。IP_ADDRESS
は、ウェブサーバーの IP アドレスです。
Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: Name: example.com Address: IP_ADDRESS
クリーンアップ
コンソール
Google Cloud Console で、Cloud DNS の [ゾーン] ページに移動します。
ゾーン名(例:
my-new-zone
)をクリックして、[ゾーンの詳細] ページに移動します。作成した A レコードと CNAME レコードを選択します。
[レコードセットを削除] をクリックします。
ゾーンを削除するには、ゾーン名
my-new-zone
の [delete ゾーンを削除] をクリックします。[VM インスタンス] ページに移動します。
削除するインスタンスを選択します。
インスタンスの行にある [more_vert その他] メニューで、[削除] をクリックします。
次のステップ
- レコードを追加、削除、更新については、レコードを管理するをご覧ください。
- マネージド ゾーンを操作するには、ゾーンの作成、変更、削除をご覧ください。
- Cloud DNS の使用時に発生する可能性のある一般的な問題の解決策については、トラブルシューティングをご覧ください。
- API のリファレンスについては、Cloud DNS REST API をご覧ください。
- 費用を確認するには、Cloud DNS の料金をご覧ください。
- Cloud DNS の概要については、Cloud DNS の概要をご覧ください。