安装与部署概述
安装 Aras Innovator 不只是运行一个 MSI。 一个可维护的环境还包括版本匹配、网络与证书、SQL Server、Vault、OAuth、服务账户、 备份恢复和最小权限验证。
本文提供部署决策与验收框架,不复制某个 Release 的完整向导。 安装程序字段、组件版本和支持矩阵必须以目标安装介质内的官方文档为准。
适用版本与资料基线
- 部署原则适用于常见的 Aras Innovator 本地安装环境。
- 安装组件和向导概念以官方 R35 Installation Guide 为现代基线。
- R31 培训资料用于安装后的管理界面验证;R31 自身属于 .NET 6.0 服务器运行时基线。
- R35 官方资料列出 .NET 8.0.1;R39 Release Notes 明确平台迁移到 .NET 10。
- R39 的完整 OS、SQL Server、浏览器和补丁要求,应以 R39 安装介质中的 Installation Guide 与 Platform Specifications 为准。
最小心智模型
一个最小可用环境至少要连通以下组件:
把部署分成三类依赖更容易排错:
| 依赖类型 | 示例 | 失败时的常见表现 |
|---|---|---|
| 运行时 | .NET、托管模块、Windows 服务 | 站点或服务无法启动 |
| 连接 | DNS、端口、证书、数据库凭据 | 登录、查询或文件操作失败 |
| 平台配置 | 数据库条目、Vault URL、OAuth 客户端、License | 组件可启动但业务功能不可用 |
部署前决策
1. 锁定目标 Release
先记录:
- Aras Innovator Release;
- 安装介质构建号与补丁;
- 要安装的 Aras 应用和平台组件版本;
- 目标环境是开发、测试、验证还是生产;
- 新装、迁移还是升级。
不要把“新装”和“升级”混为一谈。 R35 Installation Guide 明确指出,标准安装器不能用于直接升级旧代码树或旧数据库, 且数据库与代码树 Release 必须匹配。
2. 获取目标版本支持矩阵
为目标 Release 保存以下官方资料:
- Installation Guide;
- Platform Specifications;
- Release Notes;
- 各应用或组件自己的安装指南;
- 需要的 Hotfix 或升级说明。
支持矩阵应作为变更记录的附件,而不是凭经验写成“SQL Server 2016+”或“.NET Framework 4.8”。 这类范围会随 Release 改变。
3. 选择部署拓扑
开发环境可以同机部署;生产环境通常要评估组件分离:
- Innovator Server 与 Web 入口;
- SQL Server;
- Vault Server 及其物理存储;
- OAuth Server;
- Conversion Server;
- Agent Service;
- Scheduler 或其他应用服务。
官方指南的入门流程可能假设多个组件同机, 但该假设不是生产架构要求。
4. 设计名称与地址
安装前确定并评审:
- 正式 DNS 名称和 HTTPS URL;
- Web Alias;
- SQL Server 实例和数据库名称;
- Vault 名称、URL 与物理路径;
- OAuth 地址、客户端和证书;
- 服务端口、防火墙方向和代理规则。
R35 官方指南建议正式环境使用受信任证书, 并提醒完整 URL 中的下划线可能干扰会话 Cookie。 因此不要用临时主机名完成安装后再随意改名。
5. 设计账户与秘密
至少区分:
- 执行安装的临时管理员;
- Innovator 运行身份;
- Vault 或共享存储访问身份;
- 数据库所有者/连接账号;
- Agent、Conversion、Scheduler 等服务身份;
- 日常 Innovator 管理用户。
服务账户应遵循最小权限,不应统一使用个人管理员账号。 密码、私钥和连接秘密应进入组织批准的秘密管理流程。
核心机制
Web 托管与 .NET 运行时
现代版本不能按传统 ASP.NET 应用简单理解。 R31 官方 Programmer's Guide 说明服务器组件运行在 .NET 6.0, 其 Platform Specifications/Installation Guide 同时列出 .NET 4.7.2 与 ASP.NET Core/.NET Runtime and Hosting Bundle 6.0.6。
这两项并不矛盾:支持矩阵可能同时要求兼容组件所需的 .NET Framework 与承载 Innovator 服务器的现代 .NET/ASP.NET Core Hosting Bundle。 因此,“先决条件列表出现 .NET Framework 4.7.2”不能推导出 Innovator Server 主运行时仍是 .NET Framework。 安装时两项都应按 R31 官方矩阵满足,也不能擅自用更高版本替换精确要求。
R35 官方 Programmer's Guide 说明:
- Innovator 服务器组件运行在 .NET 8.0.1;
- Kestrel 是主要 Web 服务器;
- MSI 安装时 IIS 作为反向代理,并通过 ASP.NET Core Module 与应用配合。
R39 Release Notes 说明 Innovator 已迁移到 .NET 10。
这意味着:
- 运行时和 Hosting Bundle 必须与目标 Release 匹配;
web.config错误不一定表示应用本身仍运行于 .NET Framework;- 旧版服务器 Method 使用的 API 或 DLL 需要做运行时兼容性检查;
- 不应从 R35 的 .NET 版本推断 R39 仍使用同一版本。
数据库
SQL Server 保存平台元数据与结构化业务数据。 安装前需要确认:
- 目标 SQL Server 版本位于该 Release 支持范围内;
- 网络协议、DNS 和防火墙允许应用服务器连接;
- 新建数据库、填充现有数据库或仅配置连接的策略明确;
- 安装身份具有安装阶段所需权限;
- 运行账号不会长期持有不必要的服务器级权限;
- 备份、恢复、维护和监控由 DBA 接管。
R35 标准安装流程要求能够配置至少一个数据库连接, 并区分 DBA 登录与 Innovator 数据库运行账号。 不要让 Innovator 日常连接长期使用 sa。
不要自行发明密码编码规则
旧稿中“pwd 必须是 32 位小写 MD5”的结论不成立,也不能跨版本使用。 安装器、OAuth 和不同服务的秘密格式并不相同。 应由目标 Release 的安装器或官方工具写入配置;确需手工维护时,严格按该版本指南执行。
Vault 与文件存储
Vault 管理文件内容,SQL Server 管理文件元数据和引用。 部署 Vault 时需要同时验证:
- Vault URL 从客户端和服务器所需网络区域可达;
- 服务身份对物理存储具有恰当的读写权限;
- 存储容量、增长率、杀毒排除与备份策略已评审;
- HTTPS 证书链可信;
- 数据库记录与 Vault 文件可以按一致恢复点恢复。
不要机械地把目录授予 Everyone、IIS_IUSRS 或完全控制。 实际 ACL 应授予安装配置中真正运行该服务的身份,并只给需要的权限。
OAuth 与认证
现代安装包含 OAuth Server 配置。 它与 Innovator 数据库、应用 URL、证书和客户端注册共同决定登录与 API 认证是否成功。
部署时应验证:
- 浏览器与服务器使用的 URL 完全一致;
- 证书名称、有效期和信任链正确;
- 时钟同步正常;
- 数据库选择和认证提供程序映射正确;
- 本地认证与外部身份提供程序的回退策略符合安全要求。
License
R35 本地安装指南使用与服务器标识相关的 Framework License 流程, 安装向导会要求准备相应 License 信息。 订阅、社区版、迁移和新 Release 的实际流程可能不同。
部署前应从 Aras 支持、下载门户或账号团队获取目标环境适用的授权, 不要从另一台服务器复制 License 并假定可用。
推荐安装流程
阶段一:准备
- 冻结 Release、应用版本和安装介质。
- 阅读该 Release 的 Installation Guide、Platform Specifications 和 Release Notes。
- 完成服务器、DNS、证书、端口、账号和存储清单。
- 安装并补齐受支持的 SQL Server 与 .NET/Hosting 依赖。
- 申请 License,准备数据库和服务账号。
- 建立回滚点,并记录安装前系统状态。
阶段二:安装平台组件
R35 自定义安装向导可选择的组件包括 Innovator Server、Vault、Databases、 Conversion Server、Agent Service 和 OAuth Server。 实际选择应服从拓扑设计,不应默认“全部装在一台机器”。
安装过程中:
- 使用正式 URL 和 Web Alias;
- 只选择已规划的组件;
- 使用目标环境专用 License;
- 通过向导验证数据库连接;
- 记录所有非默认端口与路径;
- 不把截图中的示例密码用于真实环境。
阶段三:配置组件连接
安装完成后逐一核对:
- Innovator Server 能连接目标数据库;
- 数据库内 Vault 定义指向正确 Vault;
- OAuth 配置与应用 URL、数据库和证书一致;
- Agent/Conversion 等独立服务指向正确的 Innovator Server;
- 代理和防火墙只开放需要的流量。
配置文件的元素名称和位置可能随 Release 变化。 本页不提供可复制的 InnovatorServerConfig.xml 密码片段, 以免把旧格式写入新环境。
阶段四:安装解决方案包
平台可登录后,再按产品文档安装应用和定制包:
- 记录数据库与代码树基线。
- 按依赖顺序导入平台组件和业务包。
- 保存导入日志,处理所有错误而不是忽略。
- 重启或刷新目标文档要求的服务与缓存。
- 执行应用级冒烟测试。
验证清单
基础健康检查
| 检查项 | 通过标准 |
|---|---|
| Web 入口 | 正式 HTTPS URL 可访问,证书可信,无重定向循环 |
| OAuth | 预期登录方式可选择并成功返回应用 |
| 数据库 | 正确数据库可选,登录、查询和保存无连接错误 |
| 普通用户 | 非管理员用户能够完成被授权的最小操作 |
| Vault | 可上传、下载并再次打开测试文件 |
| 服务 | 已规划的 Agent、Conversion 等服务运行正常 |
| 日志 | Windows、IIS/Kestrel、应用与 SQL 日志无持续错误 |
| 时间 | 各服务器时区与时钟同步符合组织标准 |
安全验证
至少使用两个独立测试用户:一个有权,一个无权。
- 无 TOC Access 的用户看不到相应入口。
- 无 Get 的用户不能通过收藏、直接 URL 或 API 读取 Item。
- 无 Can Add 的用户不能新增 Item。
- 无 Update 的用户不能通过直接请求写入。
- 无文件访问权的用户不能下载受控文件。
- 管理员操作和失败登录能够被审计。
恢复验证
生产前至少完成一次恢复演练:
- 恢复数据库;
- 恢复 Vault;
- 恢复配置、证书和秘密引用;
- 校验数据库与代码树 Release 匹配;
- 打开历史 Item 并下载历史文件;
- 验证登录、权限、生命周期和工作流。
没有经过恢复验证的备份不能视为已完成的恢复方案。
常见问题定位
HTTP 500.19 或站点无法启动
先确认目标 Release,再检查:
- 对应 .NET Runtime / Hosting Bundle 是否安装;
- IIS ASP.NET Core Module 是否与该 Release 的托管方式匹配;
- 应用池、文件 ACL 与服务身份是否正确;
web.config是否被手工混入旧版节点;- Kestrel 应用日志是否给出更直接的启动异常。
不要只执行重启就结束排查;应保存首个错误和配置变更记录。
数据库连接失败
按顺序检查:
- DNS 和端口是否可达;
- SQL Server 服务与网络协议是否启用;
- 目标数据库名和 Release 是否正确;
- 账号是否被锁定或密码已轮换;
- 登录映射和数据库所有者配置是否符合指南;
- 配置秘密是否由当前 Release 支持的方式生成。
不要默认所有 SQL Server 都使用 1433;命名实例或组织网络策略可能不同。
登录循环或 OAuth 错误
检查正式 URL、代理头、证书、回调地址、数据库选择、时钟与 Cookie 域。 如果主机名或 Web Alias 安装后发生变化,应系统性更新关联配置, 而不是只改浏览器地址。
文件上传或下载失败
同时检查:
- Vault 服务是否可达;
- 客户端访问 URL 与服务器内部 URL 是否正确;
- 运行身份对物理目录的 ACL;
- 存储空间、配额和文件名限制;
- 证书及反向代理上传大小限制;
- File/Vault 元数据是否指向当前环境。
版本差异
| 基线 | 运行时/安装事实 | 迁移影响 |
|---|---|---|
| R31 | 服务器组件运行在 .NET 6.0;官方前置表同时列 .NET 4.7.2 与 Hosting Bundle 6.0.6 | Framework 是并列先决条件,不代表主服务器运行时回到 .NET Framework |
| R35 | .NET 8.0.1;Kestrel 主承载;MSI 下 IIS 为反向代理 | 旧 .NET Framework 定制需兼容性评估 |
| R39 | 平台迁移到 .NET 10 | 自定义服务器代码和依赖必须重新验证 |
R39 Release Notes 还要求升级前检查依赖区域性日期或数字格式的自定义 SQL, 并使用中性的日期表示。 这类“客户操作要求”应进入升级测试计划,而不是只由安装人员口头确认。
风险与最佳实践
- 不要用旧 Release 的先决条件安装新 Release。
- 不要把安装器用于覆盖升级旧代码树或数据库。
- 不要在文档、脚本或版本库中保存明文密码、私钥或可用 License。
- 不要手工把密码转成 MD5 后写入配置。
- 不要给 Vault 目录授予过宽的共享或 NTFS 权限。
- 不要让开发、测试、生产共用同一数据库账号、OAuth 证书或 Vault 路径。
- 不要只备份数据库;Vault、配置、证书和代码树都要纳入恢复方案。
- 保留原始安装介质、Release 文档、导入日志和最终配置清单。
- 在生产变更前用可恢复的副本完成全流程演练。
