LoginSignup
1
0

More than 1 year has passed since last update.

Azureで基本的な構成を構築してみる②(ALB、DNS作成)

Last updated at Posted at 2021-09-10

1. 背景

前回の記事続きになります。Azureの基本的な構成を作ってみました。

Azureで基本的な構成を構築してみる①(前提、ネットワーク・VM作成)
Azureで基本的な構成を構築してみる②(ALB、DNS作成) ←今ここ
Azureで基本的な構成を構築してみる③(MySQL作成, VMからのSSL接続)

2. アーキテクチャ図

今回はアプリケーションLBの作成と、DNSを用いて独自ドメインによるアクセスを可能にしていきます。
image.png

4. 構築手順

4.5 ApplicationGateway作成

Azureポータルで「LB」と打つと「ロードバランサー」がヒットします。
image.png

自分は最初、これがAWSでいうALBだと勘違いして作成してしまいましたが、Azureの「ロードバランサー」は第4層で動作するNLBになります。
今回、記事には書いてませんが要件でロードバランサーでSSLオフロードする必要があるため、NLBだと要件が満たせません…。
第7層で動作するALBは、Azureでは「Application Gateway」になります。初見だと分かりづらいですね。。
image.png
Azureポータルで「ロードバランサー」の画面に移動 → 「Application Gateway」 → 「+作成」

ApplicationGatewayのレベルとしてv1とv2がありますが、公式サイト見て料金計算してみたところ、v2だと固定コストだけでも、¥約2万/月もかかります…。
一方v1だと固定コストで最低 ¥約2千/月みたいです。
Azureとしてはv2が推奨されていますが、アプリケーションは運用初期でコストを抑えたいプラス冗長性不要なので、今回はv1を選択しました。

【基本】タブ
リソースグループ:VMを同じグループ選択
レベル:Standard
インスタンス数:1
SKUサイズ:S
HTTP2:有効
仮想ネットワーク:VMと同じVnet選択
サブネット:Vnet作成時に作った、AGW専用のサブネット選択
image.png

image.png

【フロントエンドの数】
ApplicationGatewayに割り当てるIPを設定します。
・フロントエンドの種類:両方
・パブリックIP:新規作成(Standardレベルでは動的IPしか選べない)
・プライベートIPの指定:任意
image.png

【バックエンドの数】
LBの背後に置くVMを設定します。
・バックエンドプールを新規作成。ターゲットに前記事で作成したVMを選択。
image.png

image.png

【構成】
ここではリスナー、(AWSでいう)ターゲットグループを設定します。
「ルーティング規則の追加」を押下」
image.png

○「リスナー」タブ
LBが外部からリッスンするポートを設定します。
・フロントエンドIP:パブリック
  ・プロトコル:HTTP(SSL化する場合はHTTPSを選択するが、その前に一旦HTTPで接続を試す)
  ・ポート:80(SSL化するなら443)
  ・リスナーの種類:Basic
  ・エラーページのURL:いいえ
image.png

○「バックエンドターゲット」タブ
どのバックエンドプールを使うか、バックエンドプールのVMの何番ポートに接続するか等をここで設定します。
HTTP設定を新規作成↓
  ・設定名:任意
  ・バックエンドプロトコル:HTTP
  ・バックエンドポート:80
  ・追加設定はデフォルトのまま
image.png

image.png

 →作成
 (ApplicationGatewayのデプロイには20~30分ほどかかりました。)

作成後、ALBのパブリックIPから、ブラウザよりVMのWebサーバ画面確認できればOK。

4.6 VMのセキュリティグループ設定

ALBが作れたので、クライアントからはバックエンドのVMに直接アクセスできないように設定します。
Azureポータルで「Virtual Machines」 → 前記事で作成したVM → 「ネットワーク」と移動 → 「受信ポートの規則」タブ
HTTP規則を編集します。
・ソース:IP Adress
・ソースIPアドレス:ApplicationGroupの所属するサブネットのCIDR
image.png

→保存
これで、VMのパブリックIPではブラウザでアクセスできなくなります。

4.7 DNS作成

お名前ドットコムから取得した独自ドメインをAzureで管理するための設定をしていきます。
DNSゾーンやAレコード作成は、AWSのRoute53が使えていれば難なくできると思います。

DNSゾーン作成

Azureポータルで「DNSゾーン」に移動 → 「+作成」
【基本】タブ
・リソースグループ:VM, AGW等と同じリソースグループ選択
・名前:使用する独自ドメインを入力(ここがゾーン名となる)
image.png
→作成

Aレコード登録

作成したゾーンに移動し、Aレコード(エイリアスレコード)として、ターゲットに上記で作成したAGWのパブリックIPを選択して保存します。
image.png

NSレコードのメモ

後述の手順で、お名前.com側でAzureDNSのNSレコードを設定する必要があるため、このゾーン名のNSレコード4つをメモしておきます。
image.png

4.8 お名前.com側のネームサーバ設定

お名前ドットコムにログインして独自ドメインの管理するネームサーバをAzureDNSのものに変更します。
上記でメモしたNSレコードを4つ入力して更新します。
image.png

30分〜1時間ほど経ってから、ドメインに対してAzure DNSのネームサーバが登録反映されているか確認してみます。
以下のコマンドにより、AzureのNSが表示されればOKです(場合によっては反映にもっと時間を要するかもしれません。)

$ dig -t NS <ドメイン名> +short   
nsx-xx.xxxxxxxxxxx.xxx.
nsx-xx.xxxxxxxxxxx.xxx.
nsx-xx.xxxxxxxxxxx.xxx.
nsx-xx.xxxxxxxxxxx.xxx.

最後にブラウザを開き、http://<ドメイン名>/でページ見れるか確認してみましょう。

次の記事では、DBとしてMySQLを構築していきます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0