Skip To Content

CloudFormation を使用した高可用性 ArcGIS Notebook Server サイトの配置

Esri arcgis-notebook-server-ha.template.json Amazon Web Services (AWS) CloudFormation テンプレートは、高可用性を提供するために複数の Linux Amazon Elastic Compute Cloud (EC2) インスタンス上に ArcGIS Notebook Server サイトを作成します。

EC2 インスタンスは AWS 自動スケーリング グループに配置されます。これは、一定の条件に基づく容量計画、優れた耐障害性、高い可用性、より効果的なコスト管理などのメリットをもたらします。

AWSArcGIS Notebook Server サイトは、Linux インスタンスでのみサポートされています。

特定のオペレーティング システムのバージョンについては、「CloudFormation を使用して AWS に ArcGIS を配置する際にサポートされているオペレーティング システム」をご参照ください。

このテンプレートは、Amazon Web Services で次のアーキテクチャを作成します。

自動スケーリング グループに EC2 インスタンスと、クラウド ストレージに構成ストアを持つ ArcGIS Notebook Server サイト

ライセンス:

図内の特定のアイコンは、Amazon Web Services の許可を得て使用されています。

前提条件

CloudFormation テンプレートを実行する前に取得する必要があるアイテム (ファイル、アカウントなど) や、実行する必要があるタスクごとに、前提条件がグループ化されています。

必須アイテム

このテンプレートを実行する前に、次のアイテムが必要です。

  • Amazon Web Services アカウント。

    アカウントを使用して、CloudFormationAmazon Elastic Compute Cloud (EC2)Amazon Virtual Private Cloud (VPC)Amazon Simple Storage Service (S3)Systems ManagerAmazon CloudWatchLambdaAWS Identity and Access Management (IAM)Amazon DynamoDBSecrets ManagerAWS Certificate ManagerAmazon Relational Database Service (RDS) などの基本的な AWS サービスにアクセスできる必要があります。

  • ArcGIS Notebook Server ライセンス ファイル (*.ecp または *.prvc)。
  • SSL 認証ファイル (.pfx 形式) およびそれに対応するパスワード

    証明書は証明局から取得する必要があります。

  • AWS GovCloudUbuntu EC2 インスタンスにデプロイメントを作成する場合は、AMI ID が必要です。 Canonical によるベース Ubuntu AMI を使用する場合は、Esri Amazon Web Services CloudFormation テンプレートの手順に従って ID を特定します。
  • Amazon Virtual Private Cloud (VPC) とサブネット。

    同じ ArcGIS Enterprise デプロイメントのすべてのコンポーネントは、同じ VPC で実行される必要があります。 ポータルが存在する場合は、ポータルに使用したのと同じ VPC およびサブネットを使用します。 まだポータルを作成しておらず、既存の VPC が存在しない場合は、2 つのパブリック サブネットを含む VPC、または NAT ゲートウェイを備えた 2 つのパブリック サブネットおよびプライベート サブネットを含む VPC のいずれかの CloudFormation テンプレートを使用して VPC を作成できます。

  • arcgis-notebook-server-ha.template.json CloudFormation テンプレート

必須タスク

このテンプレートを実行する前に、次のタスクを実行する必要があります。

  • AWS アカウントにデプロイメントの Amazon Simple Storage Service (S3) バケットを準備します。 スタックを起動するときに、テンプレートのバケット名を指定します。
    1. バケットを作成するか、既存の S3 バケットを使用します。 ユーザーはバケットの所有者でなくてはなりません。
    2. バケットに ArcGIS Notebook Server 認証ファイルをアップロードします。
    3. SSL 証明書ファイルをバケットにアップロードします。
  • AWS Secrets Manager でのパスワードの構成 (オプション、推奨)

    サイト管理者のユーザー名や Windows の arcgis ユーザーのパスワードなどのアカウントのパスワードは、AWS Secrets Manager で構成できます。 これにより、シークレットの Amazon Resource Name (ARN) が提供されます。 スタックを起動するときに、テンプレートのパラメーターにパスワードの代わりに ARN を使用します。 パスワードの格納に AWS Secrets Manager を使用しない場合は、スタックの起動時にテンプレートのパラメーターにパスワードをプレーン テキストで入力する必要があります。

    注意:

    Esri CloudFormation テンプレートで使用するパスワードのために AWS Secrets Manager でシークレットの ARN を作成する場合、シークレット タイプに [Other type of secrets (他の種類のシークレット)] を使用し、[Plaintext (プレーンテキスト)] オプションを使用する必要があります。 パスワード用の Amazon Resource Name を作成する方法については、「AWS CloudFormation および ArcGIS」をご参照ください。

  • DNS (ドメイン名システム) を構成します。

    ArcGIS Notebook Server サイトの完全修飾ドメイン名が必要です。 このスタックを起動する前にドメイン名が存在しており、解決可能である必要があります。 完全修飾ドメイン名の取得と、DNS の構成の方法がわからない場合は、IT 部門にお問い合わせください。

    ArcGIS Notebook Server 配置で ELB (Elastic Load Balancer) を使用する場合 (オプション)、ArcGIS Notebook Server サイトを作成する前に ELB を作成する必要があります。 アプリケーション ロード バランサーのみがサポートされています。 アプリケーション ロード バランサー テンプレートを使用して作成します。

  • Red Hat Enterprise Linux Server EC2 インスタンスに配置した場合、Docker をインストールして構成する必要があります。 手順については、ArcGIS Notebook Server Linux インストール ガイドをご参照ください。

ヒント:

デフォルトでは、スタックの作成に失敗すると、CloudFormation は部分的に作成されたリソースを削除します。 これにより、使用できないデプロイメントがアカウントから削除されるため便利ですが、トラブルシューティングが難しくなる可能性もあります。 スタックを失敗した状態で保持するには、スタックを起動する前に CloudFormation スタック作成オプションの [Rollback on failure (失敗時にロールバックする)] を無効にします。 詳細については、AWS ヘルプの「Setting AWS CloudFormation options (AWS CloudFormation オプションの設定)」をご参照ください。

パラメーター

この CloudFormation テンプレートで使用されるパラメーターの説明については、次の表をご参照ください。 表はパラメーターのタイプ別に分けられています。

Amazon EC2 Configuration

パラメーター名必須パラメーターの説明

EC2 Instance AMI ID

オプション

このパラメーター値は空のままにしておいてもかまいません。 その場合、CloudFormation テンプレートでは、Ubuntu Server 20.0.4 LTS 用の最新の Amazon Machine Image (AMI) ID を使用します。

注意:

Linux プラットフォームの AWS GovCloud に配置する場合は、このパラメーターは空のままにしておくことはできません。 Canonical から基本の Ubuntu AMI ID を検索する方法については、Esri Amazon Web Services CloudFormation テンプレートをご参照ください。 Ubuntu 以外のサポート対象の Linux オペレーティング システムを配置する場合は、AWS Management Console を使用して AMI ID を検索できます。

独自のカスタム AMI を使用するには、次のいずれかの方法で AMI ID を入力します。

  • 'ami-xxxxx'」の形式で AMI ID を指定します。
  • AWS SSM パラメーター ストアに AMI ID を格納している場合は、「AWS'{{resolve:ssm:[a-zA-Z0-9_.-/]+:\d+}}'」の形式で SSM パラメーター名を指定します。

カスタム AMI を使用する場合は、次の要件を満たしていることを確認します。

  • EC2 インスタンス メタデータ サービス (バージョン V2 または V1) が有効化されている必要があります。
  • 最新バージョンの AWS Systems Manager (SSM) Agent がインストールされている必要があります。
  • カスタム AMIWindows オペレーティング システムを使用する場合、AWS Tools for PowerShell をインストールする必要があります。

EC2 Instance Keypair Name

必須

EC2 インスタンスへのリモート アクセスを許可するため、EC2 キーペア名を選択します。

Amazon VPC Configuration

パラメーター名必須パラメーターの説明

VPC ID

必須

VPC ID を選択します。

注意:

同じデプロイメントを構成するすべての ArcGIS Enterprise コンポーネントは、同じ VPC にデプロイする必要があります。

VPC を作成する必要がある場合は、VPC のサンプル テンプレートのいずれか (パブリック サブネットを持つ VPC またはパブリックおよびプライベート サブネット、および NAT Gateway を持つ VPC) を使用できます。

Subnet ID 1

必須

サブネット ID を選択します。 選択したサブネット ID は、上記で選択した VPC 内に含まれている必要があります。

Esri CloudFormation テンプレートを使用して VPC を作成した場合は、そのテンプレートの出力パラメーターからサブネット ID を取得できます。

Subnet ID 2

必須

2 つ目のサブネット ID を選択します。 これは、サブネット ID 1 パラメーターとは異なるサブネット ID でなくてはなりません。 選択したサブネット ID は、この配置に対して指定した VPC 内に含まれている必要があります。

Esri CloudFormation テンプレートを使用して VPC を作成した場合は、そのテンプレートの出力パラメーターからサブネット ID を取得できます。

Domain Name System (DNS) Configuration

パラメーター名必須パラメーターの説明

ArcGIS Notebook Server Site Domain Name

必須

ArcGIS Notebook Server サイトの完全修飾ドメイン名を指定します。 ドメイン名が存在しており、解決可能である必要があります。 使用するドメイン名が不明な場合は、IT 管理者にお問い合わせください。

Elastic Load Balancer DNS Name

オプション

サイトで ELB を使用するには、アプリケーションまたは ELB の DNS 名の値を指定します。 既存の ELB でなくてはなりません。

ELB を使用したくない場合、または後から自分で構成したい場合は、このパラメーター値を空のままにしておきます。

ELB DNS 名を取得するには、AWS Management Console 内の Amazon EC2 サービスの [Load Balancers (ロード バランサー)] セクションを参照します。あるいは、Esri CloudFormation テンプレートを使用して ELB を作成した場合は、テンプレートの出力パラメーターから取得することもできます。 有効な ELB DNS 名の末尾は .elb.amazonaws.com です。

ArcGIS Notebook Server Configuration

パラメーター名必須パラメーターの説明

EC2 Instance Type

必須

EC2 のインスタンス タイプを指定します。 デフォルトは m5.2xlarge です。

ArcGIS Notebook Server コンピューターで使用するインスタンス タイプです。

EC2 インスタンスは AWS 自動スケーリング グループに構成されます。 これらのインスタンスは、ArcGIS Notebook Server 構成ストアにアクセスすることで ArcGIS Notebook Server サイトに参加します。

EC2 Instance Root Drive Disk Space

必須

ArcGIS Notebook Server EC2 インスタンスのルート ドライブのディスク容量のサイズです。

ルート ドライブのサイズを GB 単位で指定します。 デフォルトは 100 GB です。 最小は 100 GB です。 最大は 1024 GB です。

Number of EC2 Instances

必須

サイトに追加する EC2 インスタンスの数を指定します。 デフォルトは 2 です。 最大は 10 です。 最小は 1 です。

EC2 インスタンスは AWS 自動スケーリング グループに構成されます。 自動スケーリング グループのサイズ変更に関する詳細については、以下の「検討事項」のセクションをご参照ください。

Deployment Bucket Name

必須

ソフトウェア ライセンス ファイルと SSL 証明書を含む Amazon S3 バケットの名前を指定します。 このバケットがすでに存在することと、配置用のライセンス ファイルおよび SSL 証明書が含まれていることが必要です。

ユーザーはバケットの所有者でなくてはならず、バケットは配置と同じ AWS アカウントにある必要があります。

License File Name

必須

ArcGIS Notebook Server 認証ファイル オブジェクト キー名を指定します。 このスタックを起動する前に、デプロイメント バケットにライセンス ファイル (.ecp または .prvc) をアップロードする必要があります。

Amazon S3 コンソールの配置バケット内にあるファイルを参照することで、ファイル オブジェクト キー名を取得できます。 たとえば、notebook.prvcresources/licenses/server/notebook.prvc などがあります。

ライセンス ファイル名では大文字と小文字が区別されます。 名前が正しく入力されていることを確認します。

License Level

必須

ArcGIS Notebook Server ライセンス レベルを選択します。 次のようなオプションがあります。

  • Standard
  • 高度な設定

Site Administrator User Name

必須

ArcGIS Notebook Server サイトのプライマリ サイト管理者のユーザー名を指定します。

名前は 6 文字以上の英数字またはアンダースコア (_) を含み、先頭は文字にする必要があります。

Site Administrator User Password

必須

ArcGIS Notebook Server サイトのプライマリ サイト管理者のパスワードを指定します。 プレーン テキストのパスワードを入力することも、AWS Secrets Manager のシークレット ID の ARN を入力することもできます。 パスワード用の Amazon Resource Name を作成する方法については、「AWS CloudFormation および ArcGIS」をご参照ください。

パスワードには 8 文字以上の英数字を使用する必要があり、ドット (.) も使用できます。 パスワードには、その他の特殊文字やスペースは使用できません。

Configuration Store Type

必須

ArcGIS Notebook Server 構成ストア タイプを選択します。 デフォルトは [FileSystem] です。

  • [FileSystem] - ArcGIS Notebook Server 構成ストアは EC2 インスタンス (ファイル サーバー) に格納されます。
  • [CloudStore] - ArcGIS Notebook Server 構成ストアは Amazon DynamoDB と、このテンプレートで作成された S3 バケットに格納されます。

注意:
[CloudStore] を選択した場合でも、ArcGIS Notebook Server 共有ディレクトリをホスティングするために、ファイル サーバーが別途作成されます。

Web Adaptor Name

必須

ArcGIS Notebook Server サイトの Web Adaptor の名前を入力します。 ArcGIS Notebook Server サイトにアクセスするには、https://<fully qualified domain name>/<web adaptor name> という形式の URL を使用します。 名前の先頭は文字で、英数字のみで指定する必要があります。

SSL Certificate File Name

必須

証明機関から取得した SSL 証明書 (.pfx ファイル) を指定します。 このスタックを起動する前に、配置バケットに証明書をアップロードする必要があります。 AWS S3 コンソールの配置バケット内にあるファイルを参照することで、ファイル オブジェクト キー名を取得できます (domainname.pfxresources/sslcerts/domainname.pfx など)。

SSL Certificate Password

必須

SSL 証明書のパスワードを指定します。 プレーン テキストのパスワードを入力することも、AWS Secrets Manager のシークレット ID の ARN を入力することもできます。 パスワード用の Amazon Resource Name を作成する方法については、「AWS CloudFormation および ArcGIS」をご参照ください。

出力

スタックの作成が成功した場合は、AWS Management ConsoleCloudFormation スタックの [Outputs (出力)] タブに、次の出力パラメーターが表示されます。

出力名出力の説明

DeploymentLogsURL

これは、すべての配置ログが格納される Amazon CloudWatch ログの URL です。 配置が失敗した場合は、これらのログをトラブルシューティングの際に参照できます。

ServerAdminURL

ArcGIS Notebook Server Administrator Directory の URL。

ServerServicesURL

ArcGIS Notebook Server サービスの URL。

この URL をフェデレート サーバー テンプレートの入力パラメーターとして使用できます。

StopStackFunctionName

これは、[Stop Stack Lambda (スタック ラムダ停止)] 関数の URL です。 このラムダ関数を使用し、スタック内のすべての EC2 インスタンスを停止できます。

StartStackFunctionName

これは、[Start Stack Lambda (スタック ラムダ開始)] 関数の URL です。 このラムダ関数を使用し、以前に停止したスタック内のすべての EC2 インスタンスを開始できます。

検討事項

ArcGIS デプロイメントを含む CloudFormation スタックを作成した後に検討すべき重要な点は次のとおりです。

  • 高可用性 ArcGIS Notebook Server 配置では、EC2 インスタンスは AWS の自動スケーリング グループに構成されます。 ArcGIS Notebook Server サイトが作成されると、自動スケーリング グループのサイズを調整することで、サイトにコンピューター (EC2 インスタンス) を追加できます。 AWS Management Console を使用して自動スケーリング グループの容量を増やし、コンピューターを追加できるようにします。 コンピューターを削除するには、容量を削減します。 ArcGIS Notebook Server サイトでコンピューターの追加と削除を行うために、自動スケーリング グループの容量制限を変更する手順については、AWS のドキュメントをご参照ください。

    ヒント:

    CloudFormation スタックに対して作成された AWS 自動スケーリング グループを見つけるには、関連する CloudFormation スタックの [Resources (リソース)] タブを確認してください。 リソースの論理 ID は [AutoScalingGroup] です。

    技術的には、AWS 自動スケーリング グループのサイズをゼロに変更することは可能ですが、少なくとも 1 つのインスタンスを自動スケーリング グループで実行しておく必要があります。そうでなければ、ArcGIS Notebook Server サイトは正常に機能しない可能性があります。

    グループの容量を変更すると、コンピューターの追加には最大で 1 時間、コンピューターの削除には最大で 15 分かかることがあります。 変更を適用したら、ArcGIS Server 管理者 API を使用し、ArcGIS Server サイトのコンピューター数が適切に増減されていることを確認します。

  • ArcGIS Notebook Server サイトの構成ストアは S3 バケットと Amazon DynamoDB に格納されます。 DynamoDB プロビジョニング容量の単位は、次のように設定されます。
    • 読み込み容量単位 = 250 テーブル
    • 書き込み容量単位 = 25 テーブル

    Esri のテストでは、これらの設定では約 500 件のサービスの公開に適しています。 AWS Management Console でこの設定を編集し、単位を減らしてコストを削減したり、単位を増やして対応できるサービスを増やしたりできます。 十分な容量がなければ、公開などの機能は失敗することに注意してください。

  • この CloudFormation テンプレートで作成された AWS リソースを削除しないでください。 このテンプレートで作成された AWS リソースを知りたい場合は、AWS Management Console のこのスタックの [Resource (リソース)] タブをご参照ください。 Esri CloudFormation テンプレートで作成された各リソースには、メタデータ タグも含まれています。 ただし、AWS Management Console では一部のリソースのタグが表示されません。
  • サイト管理者のユーザー パスワードや Windows の arcgis ユーザー パスワードなどのパスワードを AWS Secrets Manager を使用して設定し、後で (デプロイメントの作成後に) それらのパスワードを変更する場合は、必ず、更新したパスワードを使用して適切な AWS Secrets Manager の ARN のパスワードを更新します。
  • デプロイメントでアプリケーション ロード バランサーを使用する場合は、デプロイメントの作成後に、アプリケーション ロード バランサーのアイドル タイムアウトを調整できます。 たとえば、デプロイメント内のいずれかのコンピューターで、時間のかかる操作を確実に完了できるよう、アイドル タイムアウトを増やす必要があります。 AWS Management Console で、アプリケーション ロード バランサーのアイドル タイムアウトの値を調整します。
  • スタックの出力 (このページの「出力」セクションを参照) に表示される AWS Lambda 関数を使用して、このスタックの EC2 インスタンスを使用していないときに停止し、必要に応じて再起動することができます。 これらの関数はコストの管理に役立ちます。

    Lambda 関数を実行してデプロイメント内の EC2 インスタンスを停止すると、関数はインスタンスが停止されたことを示すメッセージを返します。 ただし、インスタンスが自動スケーリング グループに含まれている場合は、そのグループからインスタンスをデタッチする必要があります。 これには最大 10 分かかる場合があります。 このため、Lambda start 関数を実行してデプロイメントを再起動する前に、少なくとも 10 分待機してください。

注意:

自動スケーリング グループに含まれる EC2 インスタンスを停止および起動するには、Lambda 関数を使用する必要があります。 自動スケーリング グループでは、設定した容量に基づいてコンピューターが追加されるため、AWS Management Console を使用して自動スケーリング グループの EC2 インスタンスを停止すると、新しいインスタンスが追加されます。

トラブルシューティング

この CloudFormation スタックの作成時に障害が発生した場合は、「AWS における ArcGIS デプロイメントのトラブルシューティング」をご参照ください。