可以使用多种方法在 AWS 上部署 ArcGIS Enterprise 和 ArcGIS Server。本主题将介绍如何解决每种类型的部署选项可能遇到的问题。
ArcGIS Enterprise Cloud Builder Command Line Interface for Amazon Web Services 疑难解答
在 Logs 文件夹下提取了 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序和文件的位置有两个文件夹。
Logs 文件夹包含以下两个子文件夹:
- Log - 此文件夹包含控制台日志,每次运行实用程序时都会创建该日志。Log 文件夹还包含每次运行 CREATE 命令时作为部署的一部分而创建的每个堆栈的 CloudFormation 事件日志。
- ErrorLog - 此文件夹包含日志文件,用于记录运行 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序时发生的所有错误。请阅读这些错误日志以进行有效的故障排除。
使用 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序时遇到的错误
以下是使用 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序时可能遇到的一些常见消息或问题,以及如何解决这些问题的建议。
我收到权限错误消息。
运行 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序的用户必须具有 Logs 和 Output 文件夹的递归写入权限。确保已授予这些权限。
我收到消息找不到文件 <文件名>。
您必须将 JSON 配置文件置于 Configuration 文件夹或其子文件夹之一。如果您的配置文件不在此位置,请将其移至 Configuration,然后再次运行该实用程序。
我收到消息部署配置文件扩展名无效。扩展名必须为 ".json"。
您使用的配置文件必须具有 .json 扩展名。如果没有,请对其进行重命名以包含此文件扩展名,然后再次运行该实用程序。
我收到消息文件 <文件名> 的 JSON 格式无效。
确保配置文件包含有效的 JSON 格式。
提示:
您可以使用 JSON 验证器(例如 JSONLint)来验证格式。
我收到消息无法使用提供的凭据访问 AWS 帐户。
请确保您在 JSON 配置文件中提供了有效的 AWS 凭据,以便该实用程序连接到 AWS。如果凭据有效,请确保可以从您运行 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序的计算机访问您的帐户。
我收到一条错误消息,提示使用 PREP 命令运行 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序时访问被拒绝。
如果您使用部署文件的现有 S3 存储段,请确保您具有访问和写入存储段的相应权限。
使用 CREATE 命令运行 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序后,当我打开输出文件时,没有显示我期望的所有组件。
使用 CREATE 命令创建的输出文件包含实用程序在 AWS 上创建的每个组件的标题。这些标题对应于 JSON 配置文件中包含的节点。配置文件中的节点会告知实用程序要创建的组件。如果配置文件中缺少某节点,则实用程序将不会创建该组件。
您在配置文件中包含的每个节点必须至少包含一个参数。即使在 "Default" 节点下设置了所有参数,也必须为要创建的部署的每个部分包含一个节点,并且该节点必须至少包含一个参数和值。如果节点存在于配置文件中,但不包含参数,则实用程序将跳过该节点。例如,您无法在 "Default" 中为 ArcGIS GIS Server 站点设置参数,并在配置文件中放置一个空的 "Server" 节点。如果这样做,则实用程序将不会创建 ArcGIS GIS Server 站点。
检查配置文件,以确保已经为部署的每个组件添加了所有必需的节点和至少一个参数。有关配置文件中每个节点的所需参数列表,请参阅 ArcGIS Enterprise Cloud Builder CLI for AWS 参数。
当我运行 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序时,将显示停止运行的命令提示。
如果您发现在 Microsoft Windows 命令窗口中运行的 ArcGIS Enterprise Cloud Builder CLI for AWS 实用程序或任何实用程序停止运行,请禁用该命令窗口的快速编辑模式。
解决 AWS CloudFormation 堆栈创建相关问题
使用 AWS CloudFormation 控制台监视 AWS CloudFormation 堆栈的状态,并检测堆栈创建是否失败。登录到 AWS CloudFormation 控制台(该控制台为 AWS 管理控制台的组成部分),然后打开事件选项卡,以查找有关堆栈创建、更新和删除的信息。如果堆栈创建失败,您可通过事件选项卡的相关信息大概了解出错的环节。
Esri CloudFormation 模板还会在虚拟机上创建日志文件,以帮助您解决相关问题。要确保即使部署启动失败仍保留文件,请登录到 AWS CloudFormation 控制台,然后禁用失败时回滚。
如果从 Esri 模板启动时部署失败,请将远程桌面或 SSH 连接到 EC2 实例以查看日志。下表中列出了日志类型和位置:
EC2 实例类型 | EC2 实例的日志文件和位置 | 日志文件描述 |
---|---|---|
Ubuntu | /var/log/cfn-init.log | 用于检索和解释资源元数据、安装包、创建文件和启动服务的 CloudFormation 帮助器脚本的日志文件 |
/var/log/chef-run.log | Chef 配置管理工具日志文件 | |
/var/lib/tomcat7/logs/catalina.out | Apache Tomcat 应用程序服务器日志文件 | |
Windows | C:\cfn\log\cfn-init.log | 用于检索和解释资源元数据、安装包、创建文件和启动服务的 CloudFormation 帮助器脚本的日志文件 |
C:\chef\chef-run.log | Chef 配置管理工具日志文件 |
注:
如果 CloudFormation 堆栈创建成功,则堆栈输出参数会提供一个到 AWS 管理控制台中日志组的链接。如果堆栈创建失败,则请转至 AWS 管理控制台中的 CloudFormation 资源列表,以查找日志组。请注意,如果在启动任何实例之前堆栈创建失败,则系统可能不会创建日志组。
启动 AWS CloudFormation 堆栈时遇到的错误
以下是使用 AWS CloudFormation 模板进行部署时可能遇到的一些常见消息或问题,以及如何解决这些问题的建议。
单击启动来启动实例时,为什么会显示有关容量不足的错误?
此错误来源于 Amazon EC2,表示没有足够容量来满足新实例的需求。如果部署架构允许,您可以通过在另一可用区域请求实例来解决问题,或允许 EC2 为您选择可用区域。还可以选择尝试启动不同大小的实例或稍后再尝试启动实例。
cfn-init.log 中的消息构建配置过程中出错:检索 https:// .s3.amazonaws.com/ 失败的含义是什么?
如果 cfn-init.log 文件中显示该消息,请确保部署 S3 存储段名称正确,并且授权文件的 S3 对象关键名称和 SSL 证书均正确无误。
catalina.out 日志文件中的消息无法连接至 WebAdaptor URL:https://agsportalssl.esri.com/server/webadaptor 的含义是什么?
如果 Ubuntu 实例上的 catalina.out 日志文件中显示该消息,请确保部署 S3 存储段中的 SSL 证书有效,且证书为 PKCS 12 格式。同时请确保所提供的 SSL 证书密码正确。
chef-run.log 文件中的消息 OpenSSL::PKCS12::PKCS12Error: PKCS12_parse: mac 验证失败的含义是什么?
如果 Windows 实例上的 chef-run.log 文件中显示该消息,请确保部署 S3 存储段中的 SSL 证书有效,且证书为 PKCS 12 格式。同时请确保所提供的 SSL 证书密码正确。
AWS 管理控制台疑难解答
当您使用 AWS 管理控制台和 Esri Amazon 机器映像手动创建站点时,可能会遇到以下错误消息之一:
当我尝试在 Windows 上的 EC2 实例中检索管理员密码时,为什么会收到消息未找到任何密码。?
在您停止并启动 EC2 实例后尝试使用获取 Windows 密码时,会显示以上消息。要避免出现此错误,请在首次登录时将管理员密码更改为易于记忆的值。
从 AWS 管理控制台获取的信息称我的实例已安排退出使用。这表示什么?
当您的实例恰巧运行在 Amazon 需要更换的已降级硬件上时,您可能会收到以上消息。当您看到此消息时,应停止站点然后重新启动。
请注意,如果您是使用 ArcGIS Server Cloud Builder on Amazon Web Services 创建的站点,请用 Cloud Builder 停止站点,然后重新启动。
重新启动站点后,消息即会消失。
ArcGIS Server Cloud Builder on Amazon Web Services 疑难解答
如果您在使用 ArcGIS Server Cloud Builder on Amazon Web Services 时遇到问题,您可创建能够捕获错误日志和其他信息的文本文件以帮助您解决问题。
按照以下步骤启用 ArcGIS Server Cloud Builder on Amazon Web Services 的调试级别记录:
- 如果 ArcGIS Server Cloud Builder on Amazon Web Services 正在运行,请将其关闭。
- 在安装 ArcGIS Server Cloud Builder on Amazon Web Services 的计算机上,在 loglevel 文件夹中创建名为 %USERPROFILE%\documents\ArcGISCloudBuilder 的纯文本文件。
请勿在文件名中包含任何扩展名;例如,文件名必须命名为 loglevel,而非 loglevel.txt。
- 在文本编辑器中打开此文件,然后在第一行中输入 DEBUG。
- 保存并关闭文件。
- 重新启动 ArcGIS Server Cloud Builder on Amazon Web Services 并重复导致您正尝试解决的问题的步骤。
调试级别日志现在将写入到日志文件中。当 ArcGIS Server Cloud Builder on Amazon Web Services 写入到日志文件中时,日期将以 YYYY-MM-DD 格式追加到文件名末尾。
每天使用 ArcGIS Server Cloud Builder on Amazon Web Services 时都将创建新的日志文件。确保删除旧日志文件。
使用 ArcGIS Server Cloud Builder on Amazon Web Services 时遇到的错误
以下是使用 ArcGIS Server Cloud Builder on Amazon Web Services 创建 ArcGIS Server 站点时可能遇到的一些常见消息或问题,以及如何解决这些问题的建议。
为什么不能与在 Windows 上新创建的 ArcGIS Server 建立远程桌面连接?
首先,站点启动需要一些时间。如果使用 ArcGIS Server Cloud Builder on Amazon Web Services 创建站点,等到我的站点窗口中显示了所有站点信息并显示类似用于停止、更新、删除站点的按钮后再进行操作。
如果通过 AWS 管理控制台或 CloudFormation 模板启动站点,请右键单击 AWS 管理控制台中的实例,然后单击获取系统日志。显示 Windows 就绪的消息后,等待 5 分钟再登录。
其次,确保您已向站点的安全组中添加了一条规则,允许通过端口 3389 进行远程桌面连接。这一点在打开 ArcGIS 的 Amazon EC2 安全组中进行了说明。
但登录之后,ArcGIS Server Cloud Builder on Amazon Web Services 会显示以下消息:无法获取自定义配置模板的列表。已被禁止。 这表示什么?
显示此消息的原因可能有多种,例如系统时间与当前时间不同步。例如,当您所在区域夏季时间会提前一小时,而计算机却始终没有同步变更时,ArcGIS Server Cloud Builder on Amazon Web Services 无法执行 Amazon EC2 的某些操作。