AWS S3 を ArcGIS Server のデータソースとして利用する(マップサービスキャッシュ)

はじめに

ArcGIS Server にてクラウドのデータソースをデータストアとして登録できます。

Amazon Simple Storage Service (Amazon S3) は、スケーラビリティ、データ可用性、セキュリティ、およびパフォーマンスを提供するオブジェクトストレージサービスです。

利用するストレージリソースを自由にスケールアップ・ダウンすることができます。

保存したデータを自動的に3つのデータセンターに複製し、99.999999999%の高いデータ耐久性を実現します。そのため、万一の障害やエラー、脅威などからデータを保護することができます。

ここでは、ArcGIS Server 単体として利用して、マップサービスの大容量のキャッシュをAWSのS3にアップロードして、ArcGIS Server のキャッシュディレクトリとして利用したいと思います。

ArcGIS Serverにてクラウドストア利用の流れは以下の通りです。

  • ArcGIS Server Manager にてクラウドストア登録
  • ArcGIS Pro から ArcGIS Server に接続
  • ArcGIS Pro にてマップ作成
  • ArcGIS Server Manager にてデータストアにフォルダー登録
  • マップサービス公開
  • AWS S3 にキャッシュデータをアップロード
  • マップサービスの地図表示

試してみる構成

ArcGIS Server を単体で利用することを想定しています。

ロードバランサーを利用して、ArcGIS Server を構成する内容は別のブログを参照ください。

データストアとして、AWS S3 を利用し、キャッシュディレクトリをS3に指定することで、ArcGIS Server にて予期せぬ障害が発生した場合でも、ArcGIS Server を再構築することでサービスを復旧させることが可能です。

(キャッシュディレクトリをローカルフォルダに設定している場合はデータも同時に復旧する必要が出てきます。)

また、AWS EBS よりもAWS S3 の方が安価に利用できます。

ここでは、ArcGIS Server をセットアップし、データストアとしてAWS S3を指定します。

その後、あらかじめ作成しておいた地図キャッシュを登録されたクラウドのS3にアップロードして、地図が正常に表示されるか確認をします。

ArcGIS Server Manager にてクラウドストアを登録

ArcGIS Server Manager のサイト → データストア にて、クラウドストアを登録します。

事前にAWS S3へアクセスできるアカウントをAWS IAM にて作成しておく必要があります。

アクセスキー、シークレットアクセスキー、S3バケット名、フォルダーなどを入力して登録します。

ArcGIS Pro から ArcGIS Server に接続

ArcGIS Pro のバージョンは3.0を利用しています。

挿入 → 接続 → サーバー → 新しい ArcGIS Server を選択して、ArcGIS Server と接続します。

詳細はヘルプページを参照ください。

また、マップサービスを公開したいデータのマップをあらかじめ作成しておきます。

ここでは、弊社コンテンツ製品であるスターターパックの公共地図を利用しています。

マッププロパティの座標系がWebメルカトル図法になっていることを確認しておきます。

ArcGIS Server Manager にてデータストアにフォルダー登録

ArcGIS Server Manager にて、サイト → データストアを選択して、フォルダーの登録をします。

ここでは、公開者のフォルダーパスは、C:\dataとし、サーバー側のフォルダーパスを D:\data としています。また、ホスト名も入力が必要です。

マップサービスの公開

ArcGIS Pro にて、公開先のサーバーを選択し、右クリックして、公開>マップサービスを選択します。

公開するマップを選び、OKボタンをクリックすると、マップサービスの公開パネルが起動します。

名前、概要、タグなどに必要事項を記入し、「登録済みデータを参照」を選択します。

(※データストアにフォルダーを登録しておけば、あらかじめサーバーにデータをコピーした状態で、データの参照が可能です。データのコピー先は公開側と同じ相対パスにしておきましょう。

マップサービスの公開パネルの構成タブを選択し、マップサービスの編集ボタンをクリックします。

レイヤーの描画にて、「新しいキャッシュからのタイルを使用」を選択し、詳細レベルを設定します。

(※詳細レベルは、事前に作成済みの地図キャッシュのレベルを指定します。ここでは、L0~L17を指定しています。)

ここでは、あらかじめ作成した地図キャッシュを手動で配置するため、

「サーバー上に手動でキャッシュ」を選択し、キャッシュディレクトリとして、事前に登録したクラウドストアを選択します。

マップサービスの公開の詳細な情報はヘルプページを参照ください。

AWS S3 にキャッシュデータをアップロード

あらかじめ登録されたデータストアのS3のバケットに、さきほど公開したマップサービスの定義ファイルなどが作成されています。

マッププロパティ名である「Layers」の下に、「_alllayers」というフォルダーを作成し、L00 ~ L17 の地図キャッシュデータを手動でアップロードします。

マップサービスの地図表示

ArcGIS Server Manager から、公開したマップサービスのサムネイルにカーソルをあて、表示をクリックすると公開したマップが地図表示されます。

ArcGIS Server にてクラウドストアを登録すればAmazon S3 などのオブジェクトストレージサービスを利用することができます。

GIS活用の中でのDX推進のヒントにしてみてください。

※参考ページ