自动化是指协调工具、流程和资源以实现自动高效的运行。 可用于简化管理或用户工作流并减少出错的可能性 ,并且每次通过重复执行以获得相同或者可预测的结果。
自动化示例
根据不同要求,在许多情况下可能都需要自动化,如下所示:
- 建立门户镜像,一个用于开发,一个用于生产。 保持内容、群组和用户同步。
- 将成员列表添加到门户并为每个成员分配一个角色。
- 在多个门户中发布相同的内容集、用户、群组等。
- 列出属于特定用户或群组或者满足特定条件(例如名称前缀)的所有项目。
- 列出在特定日期之前发布的内容。 例如,列出在去年的第一个季度创建的所有项目并创建包含其所有者名称和电子邮件地址的表格。
- 每次有新成员加入团队时,都会创建一个用户账户。 同样,删除旧用户并相应地转移其内容的所有权。
- 按照预先确定的时间定期更新内容。
- 检查所有 web 地图和场景,并更新已断开链接的 web 地图和场景。
- 如果删除了特定服务,确定将中断哪些 web 地图或场景。
- 监控和分析服务的使用度量并采取相应的措施。
无论您在何种情况下使用,自动化都能快速提高您的生产效率和工作效率。 Esri 提供两个广泛应用的解决方案来自动化您的 ArcGIS Enterprise,如下所述。
Esri 提供的自动化解决方案
以下为 Esri 自动化解决方案。
Chef cookbooks for ArcGIS
Chef 是一个开源信息技术 (IT) 自动化框架,可用于自动创建和维护 IT 基础架构。 Chef cookbook 是 Chef 的脚本编写语言。 提供一种可重复且灵活的机制来部署软件和硬件。
Esri 提供了可用于自动安装和配置 ArcGIS Enterprise 的 Chef cookbook。 可使用它们安装 ArcGIS Enterprise 软件组件(包括其他 ArcGIS Server 站点),并将这些组件配置为彼此配合使用。 有关详细信息,请参阅 ArcGIS Chef Cookbook。 运行 ArcGIS Cookbook 时,可以提供满足特定要求的配置信息。
ArcGIS cookbook 可帮助您快速恢复 ArcGIS Enterprise 部署或安装其他相同部署。
在部署 ArcGIS Enterprise 之后,可以使用 ArcGIS API for Python 继续自动化 GIS 工作流。
ArcGIS API for Python
按用户规范设置门户后,用户可以在门户中自动填充用户、群组和项目以及对其进行持续管理。 设置后,您可以自动执行许多任务,例如本主题开头提到的任务。 可以通过 ArcGIS API for Python 实现该操作。 API 允许 ArcGIS 管理员、发布者和用户使用 Python 环境通过脚本自动化其工作流和执行重复任务。 有关使用此 API 可执行的操作的详细信息,请参阅使用 ArcGIS API for Python 编写脚本。
其他自动化解决方案
Esri 可继续支持之前版本中的其他自动化解决方案。
ArcGIS Enterprise 门户命令行实用程序
其中包含的为数不多的几个命令行实用程序可帮助您执行常见管理任务。 必须在托管此门户的计算机上运行这些实用程序。 这些实用程序可立即使用,无需编程知识。 有关详细信息,请参阅 Portal for ArcGIS 命令行实用程序。
示例 Python 脚本
该门户包括一些 Python 脚本示例,可对命令行实用程序提供的功能进行扩展。 与命令行实用程序不同,您可以从任何配置了 Python 环境的计算机上运行这些脚本。 由于这些脚本已被写入,因此只要您具备最起码的 Python 知识即可运行它们。 您可以按原样运行这些脚本,或者使用这些脚本以了解如何与 ArcGIS REST API 进行交互、如何对其进行自定义或如何创建自己的脚本。 有关详细信息,请参阅 Python 脚本示例。
ArcGIS REST API 和门户
ArcGIS REST API 包括用于管理门户的资源和操作。 可通过此 API 调用门户所支持的每项管理任务。 事实上,ArcGIS 附带的所有管理工具(包括门户网站)均可使用此 API。
ArcGIS REST API 可以通过任何可调用 Web 服务的语言(如 Python、Java、JavaScript、PowerShell、C#、Ruby、Scala、Perl 以及其他语言)进行调用。 此帮助中所提供的示例使用的是 Python 语言。 您无需安装任何 Esri 软件即可运行一个使用 ArcGIS REST API 的脚本。
有关详细信息,请参阅使用 ArcGIS REST API 编写脚本。