AWS のロードバランサーを利用して ArcGIS Server を活用する

はじめに

AWS に ArcGIS Server を構築する場合は、ArcGIS Web Adaptor は利用せず、ロードバランサーに ArcGIS Server への転送先を設定することで、直接アクセスを想定する FQDN 名での利用が可能となります。

本ブログのようにロードバランサーを利用するには、事前に AWS VPC (仮想ネットワーク) を作成している、また、EC2 にて ArcGIS Server のセットアップを完了している、サーバー証明書を Certification Manager でインポートしておくことなどが必要です。

 ロードバランサー利用時の流れ

  • VPC とインターネットゲートウェイをルートに持つサブネットを2つ作成しておく
  • EC2 インスタンスに事前に ArcGIS Server をセットアップしておく (ここではバージョン 10.9.1 を利用しています。)
  • サーバー証明書を Certification Manager に登録しておく
  • ターゲットグループの作成
  • ロードバランサーの作成

ターゲットグループの作成

はじめにターゲットグループを作成します。

「Create target group」をクリックします。

[Specify group details] の画面にて、以下の通り設定し [Next] をクリックします。

  • [Choose a target type]:Instances
  • [Target group name]:server-tg
  • [Protocol]:HTTPS:6443
  • [VPC]:test-vpc01  IPv4 : 10.10.0.0/16
  • [Protocol version]:HTTP1
  • [Health check protocol]:HTTPS
  • [Health check path]:/arcgis/rest/info/healthCheck

デフォルトのヘルスチェックのパスはルート「/」になっています。このままではヘルスチェックエラーとなりますので、「/arcgis/rest/info/healthCheck」に変更します。

※ArcGIS REST APIs Health Check ページ

[Register targets] にて、ArcGIS Server のインスタンスを選択し、[Include as pending below] をクリックします。

[Review targets] を確認し、[Create target group] をクリックします。

ロードバランサーの作成

[Load balancer types] として「Application Load Balancer」の [Create] をクリックします。

[Create Application Load Balancer] にて、以下の通り設定を行い [Create load balancer] をクリックします。

<Basic configuration>

  • [Load balancer name]:enterprise-lb
  • [Scheme]:Internet-facing
  • [IP address type]:IPv4

<Network mapping>

  • [VPC]:test-vpc01 IPv4: 10.10.0.0/16
  • [Mappings]:ap-southeast-1a (test-pub-subnet01) と ap-southeast-1b (test-pub-subnet02) にチェックします。インターネットフェイシングのロードバランサー作成時に、サブネットはインターネットゲートウェイへのルートを保持している必要があります。

  • [Security groups]:Load Balancer
  • [Listener]:Protocol – HTTPS, Port – 443, Default action – server-tg
  • [Security policy]:ELBSecurityPolicy-2016-08
  • [Default SSL/TLS certificate]:From ACM / Certification Manager 使用してリクエストした証明書を選択

正常に作成が完了すると、「ロードバランサーを正常に作成しました。」と表示されます。

Windows Server であれば IIS などを利用して、ArcGIS Web Adaptor (※Linux Server であれば Apache Tomcat など) の利用も考えられますが、IaaS 上に ArcGIS Server を構築できる環境でしたら直接ロードバランサーとつなげて ArcGIS Server を利用することが可能となります。

フォローする