输入本机名称或“localhost”后,点击确认后即可连接。此时可能出现的错误是提示无法连接,很有可能是由于用户权限问题造成,可检测一下当前桌面登录用户是否隶属于agsadmin组和agsusers组。
连接成功后可对该服务器进行配置,通过Server Properties选项激活配置界面,如下图所示:
可设置分布式SOC(Host标签)、url出图虚拟目录(Directories标签)等,请参考后续章节和相关文档了解详情。
配置域用户安全策略
域用户安全策略可由下图进行概括(图中各个Server为逻辑划分):
n 将ArcGIS Web Services Account提升为Domain ArcGIS Web Services Account域用户。
n 将SOM Account提升为Domain SOM Account域用户。
n 将SOC Account提升为Domain SOC Account域用户
n 在部署有WebServer的服务器上,将Domain ArcGIS Web Services Account域用户和Domain Admin Users Group域管理用户组加入到本地Administrators组中。
n 在部署有SOMServer的服务器上,将Domain ArcGIS Web Services Account域用户、Domain SOM Account域用户和Domain Admin Users Group域管理用户组加入到本地agsadmin组。
将Domain ArcGIS Web Services Account域用户、Domain SOC Account域用户和Domain Users Group域管理用户组加入到本地agsusers组。
配置对应的目录访问权限和DCOM访问权限,关于DCOM访问权限的配置见后续章节。
n 在部署有SOCServer的服务器上,将Domain ArcGIS Web Services Account域用户、Domain SOM Account域用户和Domain Admin Users Group域管理用户组加入到本地agsadmin组。
将Domain ArcGIS Web Services Account域用户、Domain SOC Account域用户和Domain Users Group域
管理用户组加入到本地agsusers组。
配置对应的目录访问权限和DCOM访问权限,关于DCOM访问权限的配置见后续章节。
在A服务器上,作为域控制器,可使用“管理工具”中的“Active Directory用户和计算机工具”进行域用户安全策略的配置。如下图所示:
Windows域中,具有域管理员权限的用户可以在任何一台安装Windows2000以上版本操作系统和管理工具包的计算机上对域中的用户和计算机权限进行设置。关于域的配置问题请参考MCSE 相关文档。
如需要在域控制器上直接修改域中某台计算机的本地用户权限,例如在A上直接修改B服务器的本地用户权限,将Domain SOM Account加入到B本地的agsadmin组中,方法如下图所示:
配置DCOM安全策略
域用户安全策略图中显示,在SOMServer和SOCServer中需要将对应的DCOM组件访问权限授予合法用户和组。
整个ArcGIS Server基于DCOM架构,从表现来说,建立Windows域就是为了能够通过域集成权限管理DCOM访问安全性。
在SOMServer和SOCServer服务器上,分别存在名为ArcSOM和ArcSOC的DCOM组件。通过“管理工具”中的“组件服务”工具进行权限配置(或在“运行”中输入“dcomcnfg”激活该工具)。工具界面如下图所示:
通过设置DCOM组件的访问权限,可为域用户赋予合法的身份。在基于DCOM的分布式环境中核心安全问题即是如何为DCOM组件设置访问权限,配置合理的域用户和组是这一设置过程的前提。在ArcGIS Server部署成功后,也可能在应用过程中遇到DCOM权限问题,可参考本文处理。
连接ArcGIS Server
域用户和DCOM安全策略配置成功后,可通过ArcGIS Catalog连接ArcGIS Server。连接成功后,可通过设置ArcGIS Server SOM属性来添加异地的SOC。请注意一个SOM可以同时管理多个SOC,但一个SOC只能同时被一个SOM管理。例如在A B服务器上都安装了SOM和SOC,如果A SOM要管理B SOC,就必须先将B SOM默认管理的B SOC删除。配置界面如下图所示:
点击确认后,如系统提示“访问受限制”类似的消息,请检查目标服务器的DCOM访问权限是否授予了本地运行SOM的帐户和运行Arc Catalog的帐户。
结论
通过安装和权限配置,可将ArcGIS Server部署于分布式环境中。多台服务器上运行SOC能够有效分担负载,提高系统性能。
思考
实现了SOM和SOC在Windows域中的分布式部署,基于DCOM的程序能够顺利运行。但分布式部署中还有很多具体问题需要设计和处理,例如如何保证所有的SOC访问数据的一致性,访问ArcSDE或者访问本地文件都应有各自的处理方式。这些问题目前尚未能一一进行实践处理,在后续的开发过程中还将继续总结。
加油,哥们,现在开始!