Azure ポータルから、AlwaysOn 可用性グループの環境をテンプレート展開することができます。
ポータルから選択できるイメージは、「クラシック」モデルとなっているため、「Azure Service Management」(ASM) 環境で作成がされます。
今回はリソースグループ名に「ASMAG」という設定を使用していますが、この設定でテンプレートから展開を行うと、以下のような環境が作成されます。
ILB ではなく外部向けのロードバランサーを使用した、AlwaysOn の構成が組まれています。
現状、ポータル検索をして、直接デプロイすることはできないのですが、GitHub で公開されている sql-server-2014-alwayson-dsc のテンプレートは ARM の環境で展開されるため、こちらを使用することでリソースマネージャーモデルの AlwaysOn の環境を構築することができます。
GitHub の Deploy to Azure をクリックすると、公開されている JSON のテンプレートを使用して、ポータルからデプロイをすることができます。
クラシックモデルのテンプレートでは、既存のドメインに参加することができますが、GitHub のテンプレートでは、新規の構築のみとなっているため、既存 AD を使用したい場合は、テンプレートではなく個別に構築をする必要が出てくるかと。
また、このテンプレートは Premium ストレージを使用した構成を想定して組まれているため、初期の設定では、
- Active Directory : DS1
- SQL Server : DS3
- ウィットネス : DS1
で構築されるようになっています。
OS のディスクとして P10/DB 用のディスクとして、P30 が使用されるようですが、今回は Premium ストレージではなく、Standard ストレージを使用して構成してみたいと思います。
JSON のテンプレートに選択できるサイズで Standard を追加しても、エラーとなってしまってうまく展開できなかったので、サイズを変更したい場合は、構築後に変更した方がよさそうです。
Standard や Basic を使用したい場合は、D シリーズで作っておく形でしょうか。
# DS シリーズで作った場合、DS シリーズ内での変更しかできないようでしたので。
テンプレートから展開した場合は、以下のような環境が構築されます。
AD の DNS はリソースの設定としては Azure DNS を使用する設定となっているのですが、仮想マシンでは「127.0.0.1」が設定されている状態となっています。
# AD をインストールした際の設定変更が利用されているのかと思います。
ASM の場合は、クラウドサービスの下に各仮想マシンが作成されていましたので、どの環境もパブリック IP を持っていましたが、ARM の場合は、仮想マシン v2 で構築されますので、パブリック IP リソースがない場合は、内部 IP アドレスのみとなります。
AD の仮想マシンをバックエンドアドレスプールとして、設定しているロードバランサーについては、パブリック IP が付与されているのですが、SQL Server で使用しているロードバランサーは内部向けのロードバランサーとして機能しているため、パブリック IP は付与されていません。
そのため、RDP で接続するためには「AD → SQL Server」というように、パブリック IP 経由でアクセスできる環境に一度ログインをしてから、アクセスをすることになります。
基本的な環境としては同等と思いますが、クラウドサービスが入っていない分、構成としてはシンプルになっているように感じますね。