Esri arcgis-workflow-manager-ha.template.json Amazon Web Services (AWS) CloudFormation テンプレートは、高可用性を提供するために、複数の Amazon Elastic Compute Cloud (EC2) インスタンス上に ArcGIS Workflow Manager サイトを作成します。
EC2 インスタンスは AWS 自動スケーリング グループに配置されます。これは、一定の条件に基づく容量計画、優れた耐障害性、高い可用性、より効果的なコスト管理などのメリットをもたらします。
このテンプレートは、Amazon Web Services で次のアーキテクチャを作成します。
ライセンス:
図内の特定のアイコンは、Amazon Web Services の許可を得て使用されています。
前提条件
CloudFormation テンプレートを実行する前に取得する必要があるアイテム (ファイル、アカウントなど) や、実行する必要があるタスクごとに、前提条件がグループ化されています。
必須アイテム
このテンプレートを実行する前に、次のアイテムが必要です。
- Amazon Web Services アカウント。
アカウントを使用して、CloudFormation、Amazon Elastic Compute Cloud (EC2)、Amazon Virtual Private Cloud (VPC)、Amazon Simple Storage Service (S3)、Systems Manager、Amazon CloudWatch、Lambda、AWS Identity and Access Management (IAM)、Amazon DynamoDB、Secrets Manager、AWS Certificate Manager、Amazon Relational Database Service (RDS) などの基本的な AWS サービスにアクセスできる必要があります。
- ArcGIS Workflow Manager ライセンス ファイル (.ecp または .prvc)。
- SSL 認証ファイル (.pfx 形式) およびそれに対応するパスワード
証明書は証明局から取得する必要があります。
- AWS GovCloud の Ubuntu 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-workflow-manager-ha.template.json CloudFormation テンプレート
必須タスク
このテンプレートを実行する前に、次のタスクを実行する必要があります。
- AWS アカウントにデプロイメントの Amazon Simple Storage Service (S3) バケットを準備します。 スタックを起動するときに、テンプレートのバケット名を指定します。
- バケットを作成するか、既存の S3 バケットを使用します。 ユーザーはバケットの所有者でなくてはなりません。
- バケットに ArcGIS Workflow Manager 認証ファイルをアップロードします。
- SSL 証明書ファイルをバケットにアップロードします。
- この配置で Elastic IP アドレスを使用する場合 (オプション)、このテンプレートを実行する前に Elastic IP アドレスを作成する必要があります。
Elastic IP アドレスを作成するには、AWS Management Console を使用できます。
- 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 Workflow Manager サイトの完全修飾ドメイン名が必要です。 このスタックを起動する前にドメイン名が存在しており、解決可能である必要があります。 完全修飾ドメイン名の取得と、DNS の構成の方法がわからない場合は、IT 部門にお問い合わせください。
ヒント:
デフォルトでは、スタックの作成に失敗すると、CloudFormation は部分的に作成されたリソースを削除します。 これにより、使用できないデプロイメントがアカウントから削除されるため便利ですが、トラブルシューティングが難しくなる可能性もあります。 スタックを失敗した状態で保持するには、スタックを起動する前に CloudFormation スタック作成オプションの [Rollback on failure (失敗時にロールバックする)] を無効にします。 詳細については、AWS ヘルプの「Setting AWS CloudFormation options (AWS CloudFormation オプションの設定)」をご参照ください。
パラメーター
この CloudFormation テンプレートで使用されるパラメーターの説明については、次の表をご参照ください。 表はパラメーターのタイプ別に分けられています。
Amazon EC2 Configuration
パラメーター名 | 必須 | パラメーターの説明 |
---|---|---|
Platform Type | 必須 | オペレーティング システム プラットフォームを選択してください。 サポートされているタイプは次のとおりです。
特定のオペレーティング システムのバージョンについては、「CloudFormation を使用して AWS に ArcGIS を配置する際にサポートされているオペレーティング システム」をご参照ください。 |
EC2 Instance AMI ID | オプション | このパラメーター値は空のままにしておいてもかまいません。 その場合、CloudFormation テンプレートでは、選択したプラットフォームのタイプに応じて、Microsoft Windows Server 2019 または Ubuntu Server 20.04 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 を使用する場合は、次の要件を満たしていることを確認します。
|
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 Workflow Manager Server Site Domain Name | 必須 | ArcGIS Workflow Manager サイトの完全修飾ドメイン名を指定します。 ドメイン名が存在しており、解決可能である必要があります。 使用するドメイン名が不明な場合は、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 Workflow Manager Configuration
パラメーター名 | 必須 | パラメーターの説明 |
---|---|---|
Number of EC2 Instances | 必須 | サイトに追加する EC2 インスタンスの数を指定します。 デフォルトは 2 です。 最大は 10 です。 最小は 1 です。 EC2 インスタンスは AWS 自動スケーリング グループに構成されます。 自動スケーリング グループのサイズ変更に関する詳細については、以下の「検討事項」のセクションをご参照ください。 |
EC2 Instance Type | 必須 | EC2 のインスタンス タイプを指定します。 デフォルトは m5.2xlarge です。 ArcGIS Workflow Manager コンピューターで使用するインスタンス タイプです。 EC2 インスタンスは AWS 自動スケーリング グループに構成されます。 これらのインスタンスは、ArcGIS Workflow Manager 構成ストアにアクセスすることで ArcGIS Workflow Manager サイトに参加します。 |
EC2 Instance Root Drive Disk Space | 必須 | ArcGIS Workflow Manager EC2 インスタンスのルート ドライブのディスク容量のサイズです。 ルート ドライブのサイズを GB 単位で指定します。 デフォルトは 100 GB です。 最小は 100 GB です。 最大は 1024 GB です。 |
Deployment Bucket Name | 必須 | ソフトウェア ライセンス ファイルと SSL 証明書を含む Amazon S3 バケットの名前を指定します。 このバケットがすでに存在することと、配置用のライセンス ファイルおよび SSL 証明書が含まれていることが必要です。 ユーザーはバケットの所有者でなくてはならず、バケットは配置と同じ AWS アカウントにある必要があります。 |
ライセンス ファイル名 | 必須 | ArcGIS Workflow Manager 認証ファイル オブジェクト キー名を指定します。 このスタックを起動する前に、デプロイメント バケットにライセンス ファイル (.ecp または .prvc) をアップロードする必要があります。 ファイル オブジェクト キー名を取得するには、Amazon S3 コンソールのデプロイメント バケットでファイルを参照します (workflow.prvc や resources/licenses/server/workflow.prvc など)。 ライセンス ファイル名では大文字と小文字が区別されます。 名前が正しく入力されていることを確認します。 |
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 文字以上の英数字を使用する必要があり、ドット (.) も使用できます。 パスワードには、その他の特殊文字やスペースは使用できません。 |
Windows arcgis user password | 条件 | arcgis ユーザーのパスワードを指定します。 arcgis ユーザーは、ArcGIS ソフトウェア サービスの実行に使用されるローカルの Windows ログインです。したがって、このパスワードは、Windows に配置する場合にのみ必須です。 プレーン テキストのパスワードを入力することも、AWS Secrets Manager のシークレット ID の ARN を入力することもできます。 パスワードは AWS Secrets Manager で管理することをお勧めします。 パスワード用の Amazon Resource Name を作成する方法については、「AWS CloudFormation および ArcGIS」をご参照ください。 |
Configuration Store Type | 必須 | ArcGIS Workflow Manager 構成ストアを格納する場所を選択します。 デフォルトは [FileSystem] です。
注意:[CloudStore] を選択した場合でも、ArcGIS Workflow Manager 共有ディレクトリをホスティングするために、ファイル サーバーが別途作成されます。 |
ArcGIS File Server Instance Type | 必須 | ArcGIS ファイル サーバーの EC2 インスタンス タイプを選択します。 デフォルトのインスタンス タイプは m5.2xlarge です。 |
ArcGIS File Server EC2 Instance Root Drive Disk Space | 必須 | ルート ドライブのサイズを GB 単位で指定します。 デフォルトは 100 GB です。 最小は 100 GB です。 最大は 1024 GB です。 ArcGIS ファイル サーバーの EC2 インスタンスのルート ドライブのディスク容量のサイズ。 |
Web Adaptor Name | 必須 | ArcGIS Workflow Manager サイトの Web Adaptor の名前を入力し、Web Adaptor 名を入力します。 ArcGIS Workflow Manager サイトにアクセスするには、https://<fully qualified domain name>/<web adaptor name> という形式の URL を使用します。 名前の先頭は文字で、英数字のみで指定する必要があります。 ArcGIS Web Adaptor を使用しない場合や、サイトの URL の形式が https://<fully qualified domain name><PortNumber>/arcgis である場合は、このパラメーター値は空のままにしておきます。 |
SSL Certificate File Name | 必須 | 証明機関から取得した SSL 証明書 (.pfx ファイル) を指定します。 このスタックを起動する前に、配置バケットにファイルをアップロードする必要があります。 AWS S3 コンソールの配置バケット内にあるファイルを参照することで、ファイル オブジェクト キー名を取得できます。 証明書名の例として、配置バケットのルート レベルに格納される証明書ファイルである domainname.pfx や、配置バケットのフォルダーに格納される証明書ファイルである resources/sslcerts/domainname.pfx が挙げられます。 Web Adaptor を使用するときに、このパラメーター値を空のままにしておくと、Web Adaptor では自動生成された自己署名証明書が使用されます。 |
SSL Certificate Password | 必須 | SSL 証明書のパスワードを指定します。 プレーン テキストのパスワードを入力することも、AWS Secrets Manager のシークレット ID の ARN を入力することもできます。 パスワード用の Amazon Resource Name を作成する方法については、「AWS CloudFormation および ArcGIS」をご参照ください。 |
出力
スタックの作成が成功した場合は、AWS Management Console の CloudFormation スタックの [Outputs (出力)] タブに、次の出力パラメーターが表示されます。
出力名 | 出力の説明 |
---|---|
DeploymentLogsURL | これは、すべての配置ログが格納される Amazon CloudWatch ログの URL です。 配置が失敗した場合は、これらのログをトラブルシューティングの際に参照できます。 |
ServerAdminDirURL | ArcGIS Workflow Manager Administrator Directory の URL。 |
ServerRestDirURL | ArcGIS Workflow Manager REST サービス URL。 この URL をフェデレート サーバー テンプレートの入力パラメーターとして使用できます。 |
StopStackFunctionName | これは、[Stop Stack Lambda (スタック ラムダ停止)] 関数の URL です。 このラムダ関数を使用し、スタック内のすべての EC2 インスタンスを停止できます。 |
StartStackFunctionName | これは、[Start Stack Lambda (スタック ラムダ開始)] 関数の URL です。 このラムダ関数を使用し、以前に停止したスタック内のすべての EC2 インスタンスを開始できます。 |
検討事項
ArcGIS デプロイメントを含む CloudFormation スタックを作成した後に検討すべき重要な点は次のとおりです。
- 高可用性 ArcGIS Workflow Manager 配置では、EC2 インスタンスは AWS の自動スケーリング グループに構成されます。 ArcGIS Workflow Manager サイトが作成されると、自動スケーリング グループのサイズを調整することで、サイトにコンピューター (EC2 インスタンス) を追加できます。 AWS Management Console を使用して自動スケーリング グループの容量を増やし、コンピューターを追加できるようにします。 コンピューターを削除するには、容量を削減します。 ArcGIS Workflow Manager サイトでコンピューターの追加と削除を行うために、自動スケーリング グループの容量制限を変更する手順については、AWS のドキュメントをご参照ください。
ヒント:
CloudFormation スタックに対して作成された AWS 自動スケーリング グループを見つけるには、関連する CloudFormation スタックの [Resources (リソース)] タブを確認してください。 リソースの論理 ID は [AutoScalingGroup] です。
技術的には、AWS 自動スケーリング グループのサイズをゼロに変更することは可能ですが、少なくとも 1 つのインスタンスを自動スケーリング グループで実行しておく必要があります。そうでなければ、ArcGIS Workflow Manager サイトは正常に機能しない可能性があります。
グループの容量を変更すると、コンピューターの追加には最大で 1 時間、コンピューターの削除には最大で 15 分かかることがあります。 変更を適用したら、ArcGIS Server 管理者 API を使用し、ArcGIS Workflow Manager サイトのコンピューター数が適切に増減されていることを確認します。
- このテンプレートで作成された ArcGIS Server サイトは、suspendedMachineUnregisterThreshold プロパティが無効になっています。つまり、サイト内のコンピューターが非アクティブの場合、そのコンピューターは自動的に登録解除されません。 サイトを配置したら、ArcGIS Server サイトの ArcGIS REST API の suspendedMachineUnregisterThreshold 値を変更して、操作が行われなかった期間を定義し、この期間 (分) が経過した時点で、コンピューターがサイトから登録解除されるようすることができます。 このプロパティの設定については、開発者ヘルプの「サーバー プロパティ」をご参照ください。
- この CloudFormation テンプレートで作成された AWS リソースを削除しないでください。 このテンプレートで作成された AWS リソースを知りたい場合は、AWS Management Console のこのスタックの [Resource (リソース)] タブをご参照ください。 Esri CloudFormation テンプレートで作成された各リソースには、メタデータ タグも含まれています。 ただし、AWS Management Console では一部のリソースのタグが表示されません。
- ArcGIS Workflow Manager サイトは、常にフェデレーション サーバーです (スタンドアロン サイトではありません)。 次のいずれかのテンプレートを使用して ArcGIS Enterprise ポータルを作成し、それを ArcGIS Workflow Manager サイトとフェデレートできます。
- 1 台のコンピューターにデプロイされた ArcGIS Enterprise の基本コンポーネント
- 高可用性を実現するために ArcGIS Enterprise の基本コンポーネントを 2 台のコンピューターに複製
- 1 台のコンピューターにデプロイされた Portal for ArcGIS
- 高可用性を実現するために 2 台のコンピューターにデプロイされた Portal for ArcGIS
ArcGIS Enterprise の基本配置と ArcGIS Workflow Manager サイトを作成したら、フェデレーション テンプレートを使用して ArcGIS Workflow Manager サイトとポータルをフェデレートできます。
ArcGIS Enterprise と ArcGIS Workflow Manager サイトをフェデレートした後、すべての EC2 インスタンス上で ArcGIS Workflow Manager を再起動する必要があります。 詳細については、「ArcGIS Enterprise ポータルでの Workflow Manager の構成」をご参照ください。
- サイト管理者のユーザー パスワードや 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 デプロイメントのトラブルシューティング」をご参照ください。