ArcGIS for Server入门教程_第四章_规划ArcGIS for Server站点

规划ArcGIS for Server站点

完整的ArcGIS for Server安装称为创建了一个ArcGIS for Server的站点(Site),站点的结构如下图所示:


一个站点内可以包含单个或多个GIS服务器,也就是安装了ArcGIS for Server的机器。GIS服务器们用来完成客户端的请求,比如绘制地图、计算路线等。关于站点的所有基本属性,比如站点内所有GIS服务器和服务的属性等信息会保存在一个名为配置存储(config-store)的文件夹内,这个文件夹对于站点的良好运行十分重要。ArcGIS for Server在进行作业时还会用到一系列的文件夹,称为服务器目录(server directories),包括缓存目录(arcgiscache)、作业目录(arcgisjobs)、输出目录(arcgisoutput)和系统目录(arcgissystem)。在安装时需要创建或指定一个操作系统级别的账户,叫做ArcGIS Server账户,这个账户与我们平时开机登录Windows操作系统时使用的账号是类似的。ArcGIS for Server站点的运行需要启动和停止服务器上的进程、读写数据、在机器间进行通信,为了安全的执行这些任务,站点会使用这个操作系统级别的ArcGIS Server账户来进行所有的操作,所以必须确保这个账户具有适当的权限,可以正常的使用上面提到的config-store、server directories和发布服务用的数据等文件目录。

对于小型的应用来说,数据量不太大也不太复杂,可以在本地存储数据,但是对于海量的数据来说一般无法放在本地存储,而是放在专门的数据库服务器上进行统一的存储和管理,也就是图中的数据服务器的部分。ArcGIS for Server站点可以通过网络连接到数据库服务器上,将数据库上的GIS资源发布为服务。

Web Adaptor是站点安装时的可选组件,它可以使GIS服务器和已有的Web服务器相结合,提供更丰富的功能和更高的安全性,在后面的章节会做进一步的介绍。

ArcGIS for Desktop用户、GIS服务器管理员和各种客户端虽然不能算作是站点内的部分,但是如果没有这些人员角色,那么无论多么强大的GIS服务器都将无用武之地。ArcGIS for Desktop的用户是最主要的GIS资源创建者和发布者,GIS服务器管理员负责确保站点和服务都能正常运行,各种终端的用户是这些服务的消费者、使用者。还有一些其他人员,比如开发人员可以对功能做进一步的定制和扩展、IT人员协调整个站点和Web服务器的设置等等。

了解ArcGIS for Server的技术架构就好比从宜家买回一套家具,先看看组装说明书,心里有个底,才好开始安装。知道了站点的架构,下面我们就可以开始规划符合自己使用需求的站点了。

部署场景分析:单机还是多机?
最简单的站点部署方案,也就是安装ArcGIS for Server的方案,就是单机部署了,即只在一台机器上安装ArcGIS for Server软件。这台机器作为GIS服务器,可以发布众多类型的Web GIS服务,每一个服务都可以理解成运行在这台机器上的一个程序,客户端通过浏览器输入服务的url地址,就可以对程序提出请求,程序在这台机器上进行运算,再把结果通过浏览器,也就是通过网络,返回给客户端。单机部署的优势很明显,就是简单,安装起来简单,维护起来也简单。因为只有一台机器安装了ArcGIS for Server的软件,config-store和server directories也都是本地的文件夹,这样读取数据都是在本地的操作而不需要通过网络通信,速度和可靠性也比较好。但是这种部署方式的缺点更加明显,一台机器能处理的任务量是很有限的,而且如果这台机器有了故障或没有联网,整个站点就瘫痪了,所有服务都没法使用了。所以这种部署方式比较适合用来试用,体验和了解一下ArcGIS for Server的功能都有什么,或者是开发人员使用的测试环境,而不太适用于真实的生产环境。

为了避免单独一台机器作为GIS服务器的弊端,可以采用多机部署的方案,也就是在多台机器上安装ArcGIS for Server软件:



我们可以看到在多机部署时,客户端不是直接与GIS服务器沟通了,而是通过Web Adaptor。 Web Adaptor是一个独立的软件,可以安装在GIS服务器上,也可以安装在单独的一台机器上,只要能够通过网络与GIS服务器进行通信就行。Web Adaptor可以作为站点的单一入口,接收客户端发来的请求,然后把请求转发给站点内的GIS服务器。可以把Web Adaptor想象成银行门口的取号机,当有人来银行办业务时,取号机会根据当前排队的人数,将客人分配到合适的窗口等待。在多机部署中,所有的GIS服务器都必须具有相同的环境,即相同版本的操作系统和ArcGIS for Server软件及许可,并且必须能够访问到config-store、server directories和数据等文件夹,所以需要把这些共同访问的文件夹设置为共享文件夹。由于同一个站点内的所有GIS服务器都必须使用相同的ArcGIS Server账户,即操作系统级别的账户,所以只要保证这个账户对共享文件夹具有适当的读写权限,就可以保证每台GIS服务器都能正常访问这些共享文件夹了,而不需要在每台机器上分别设置。使用Web Adaptor还有其他一些优势,比如可以使站点更加安全、可以与现有的Web服务器集成提供Web应用等等,如果想进一步了解可以在帮助文档中找到详细的说明。

在多机部署时还可以设置集群(Cluster),一个集群就是一个服务器小组,用来运行某一特定类别的服务。假如集群A中只有一台GIS服务器,而集群B中有两台GIS服务器,集群B的计算能力要比集群A强,那么就可以把一些复杂的任务,比如地理处理服务专门分配给集群B来运行,这样就可以将集群A释放出来运行一些比较简单的服务,比如地图服务等等。但是如果在大型站点中有多台机器多个集群,那么请求有可能在站点中被再次转发,增加了网络通信量,从而对性能有不利的影响,所以目前官方推荐的方式是站点中使用单个集群,这也是10.4版本安装时的默认设置,只有default一个集群,所有GIS服务器都属于这一个集群中。如果有一些耗资源高的服务,可以单独新建一个站点来运行,也就是把大型的、多集群的站点,拆分成小型的、单集群的多个站点。这样做虽然会增加一些配置和管理的工作,但是不仅可以减少服务器间的通信量,降低网络上的负载,还可以更好的监控所有GIS服务器的工作情况。

多机部署的方式适用于访问量大的、企业级的应用中,具有很多强大的优势。首先,整个站点的规模可以按照需求扩大或缩小,也就是可以方便的向站点内添加或者删除GIS服务器,并且可以通过Server Manager统一管理。另外,站点具有故障转移和负载平衡的能力。故障转移是指当一个服务器发生故障或离网时,站点能自动或人工的把请求转移到另一个服务器上。负载平衡指的是能够将用户的请求分配给多个服务器,让多个服务器共同协作,来分担整个站点的工作量。虽然很多Web GIS服务是公开的,但有些政府和公司还是对数据和服务的安全性有很高的要求,Web Adaptor可以使站点与Web Server相结合,提供多种安全认证的方式。需要注意的是,Web Adaptor不单单只能用在多机部署上,在单机部署中也可以安装Web Adaptor来获得更好的安全性。多机部署的缺点首先就是它需要投入更多的硬件资源,管理和维护起来也要比单机部署复杂。另外由于多台服务器间的通信、访问共享文件夹等都是需要通过网络来传输的,如果数据传输量过大对性能会造成一定的影响。

还有其他的一些部署方式,比如使用多个Web Adaptor、使用第三方反向代理服务器或网络负载平衡器、单机高可用性部署等方法,可以提供更多更灵活的配置选项,如果想要进一步了解可以参考官方的帮助文档。

安装ArcGIS for Server
如果对下面几个问题已经有了答案,那么就可以开始安装ArcGIS for Server了:
· 我希望提供哪些功能?
· 我希望能为多少客户端提供服务?
· 我的硬件、软件是否符合ArcGIS for Server的系统需求?

第一个问题的答案决定了站点使用的ArcGIS for Server的许可级别。第二个问题的答案决定了站点的工作量,也就是要采用单机部署还是多机部署的方式。第三个问题的答案是确保站点的安装和运作能够顺利进行的基础中的基础。10.4版本的系统需求可以在官网上查看:http://server.arcgis.com/en/server/latest/install/windows/arcgis-for-server-system-requirements.htm

需要注意的是由于ArcGIS for Server是64位的程序,只能安装在64位的操作系统上,系统需求中列出的操作系统都指的是64位的版本。

安装ArcGIS for Server软件的步骤比较简单,双击安装光盘中的Setup.exe后会启动安装程序,首先要求选择是否安装.NET扩展支持,如果不安装,将无法使用服务器对象扩展(SOE)和服务器对象拦截器(SOI),也就是无法对Server进行自定义的开发扩展。



如果出现了下面的对话框说明当前系统上没有安装.NET FRAMEWORK 3.5 SP1,想启用SOE和SOI功能还需要先安装了.NET FRAMEWORK 3.5 SP1后(不同操作系统安装的方式会稍有区别,比如Windows2008R2中可以通过 “服务器管理器”--“功能”--“添加功能”--选中“.NET Framework 3.5.1”来开启,如果其他操作系统可以在网上自行搜索一下)再安装.NET扩展支持:



接下来会安装Python 2.7.10:



然后会要求创建或输入ArcGIS Server账户,也就是操作系统级别的账户。创建本地账户默认账户名为arcgis(下图左),或输入一个已经存在的域账户(下图右):





另外,如果有之前安装ArcGIS for Server时所生成的服务器配置文件,可以选择“I have a configuration file”将配置文件导入。设置完ArcGIS Server账户后可以选择是否将配置信息导出:



导出的config.xml配置文件可以在下次安装时直接导入,比如如果要进行多机部署,需要在多台机器上安装,所有机器必须使用相同的ArcGIS Serve账户,那么在安装时直接导入配置文件即可以省一点事也可以避免出错,或者在用脚本自动执行静默安装的时候,可以读取配置文件来设置账户。

安装完成后会自动弹出授权向导,如果还没有准备好授权,以后可以通过Start > Program Files > ArcGIS > Software Authorization开启授权向导。授权有两种方式:一种是直接通过互联网授权,非常简单,在联网的条件下根据向导提示的内容,填写必要信息,一直下一步就可以了。如果服务器不能够接入互联网,只能在局域网内使用,也可以用离线授权的方式,先在服务器上导出一个txt文件,然后转移到可以联外网的机器上通过邮件或ESRI网站上传的方式获取ecp授权文件,再转移回不能联外网的服务器上直接使用,具体的操作步骤可以参考附件中的《ArcGIS for Server 10.x 许可授权手册》。

安装好ArcGIS for Server的软件后需要通过Server Manager创建一个新的站点。可以通过Start > Program Files > ArcGIS > ArcGIS Server Manager的快捷方式打开Manager,也可以通过在浏览器中输入Manager的url地址来打开。url地址的格式为:http://gisserver.domain.com:6080/arcgis/manager/, 如果是安装在本机可以通过

http://localhost:6080/arcgis/manager/ 来访问。首次打开Manager会提示是要创建一个新站点,还是加入已有站点(如果不是这个界面而是要求输入用户名和密码,说明这台机器已经加入过某个站点了,也就是之前已经有人对这台机器进行过配置了):



选择创建新站点后会要求创建一个站点管理员的账户,这个账户不同于之前用到的ArcGIS Server账户,并不是操作系统级别的账户,而是应用程序级别的、用来对站点进行管理的账户。这个账户可以控制站点内部的机器配置、服务的属性、或者分配权限给其他能够访问站点的人员。管理员账户的默认用户名为siteadmin:



设置好管理员账户后需要指定server directories和config-store的位置,需要注意的是如果是在多机部署中,这些文件夹应该是共享的(如\\192.168.220.100\arcgisserver\directories),站点中的所有机器应该都能够访问到这些文件夹,并且ArcGIS Server账户对这些文件夹都具有适当的读写权限。


最后确认站点配置的路径都没有问题以后,点击完成就可以创建一个ArcGIS for Server站点了:



创建完站点后再次打开Server Manager,会显示要求登录的页面:



使用刚才创建的站点管理员账户(默认为siteadmin)登录后,可以显示站点根目录下的内容,说明站点创建成功:



如果是多机部署,需要在每台机器上重复上面的安装步骤,也就是安装ArcGIS for Server软件,但是安装后首次打开Manager时不选择新建站点,而是选择加入已有站点就可以了。

小结
完整的ArcGIS for Server安装称为创建了一个ArcGIS for Server的站点(Site),站点内包括GIS服务器、数据服务器、可选的Web Adaptor组件、客户端和人员等部分。最简单的部署方式是单机部署,即只使用一台计算机作为GIS服务器,比较适合一开始阶段的试用和开发人员用来调试。当单机部署的方式不能满足需求时,可以采用多机部署,即在多台机器上都安装ArcGIS for Server软件,统一作为GIS服务器来使用。

多台GIS服务器还可以进行分组,每个组称为一个集群(Cluster),用来运行某个特定类型的服务。如果站点内存在多个集群,会增加服务器间的通信量,降低整体的性能,所以10.4版本中默认使用单个集群的方式。对复杂的任务可以采用多个站点的方式来部署,用专门的站点来运行占用资源较高的服务类型,比如地理处理服务,在性能和稳定性上要强于单个站点内建立多个集群的方式。多机部署时必须安装Web Adaptor,以便将客户端的请求转发给各个GIS服务器。多机部署时必须安装Web Adaptor,以便将客户端的请求转发给各个GIS服务器。

规划站点时首先需要考虑用到的许可级别、部署方式、和系统需求几个问题。安装完ArcGIS for Server软件后可以在Server Manager中创建一个新的站点,并创建站点管理员账户。多机部署时首先在每台计算机上都要安装好ArcGIS for Server软件,之后在Manager中选择加入一个已有的站点。创建完新站点或加入已有站点后,使用站点管理员账户登录Manager,如果能正常显示站点内的服务和管理的界面,则表示站点配置成功。

思考题
1. 某城市的警察局准备利用ArcGIS for Server搭建一个Web GIS平台,主要的功能包括分析犯罪高发的热点区域、警车日常巡逻的管理、突发警情时的应急指挥等。他们可以采用哪种部署方案?
2. 多机部署时有哪些文件夹必须共享出来?这样做的原因是什么?
 

本入门教程所有章节连接:
ArcGIS for Server入门教程_第一章_开始之前: http://zhihu.esrichina.com.cn/?/article/538
ArcGIS for Server入门教程_第二章_Web GIS入门: http://zhihu.esrichina.com.cn/?/article/539
ArcGIS for Server入门教程_第三章_认识ArcGIS for Server: http://zhihu.esrichina.com.cn/?/article/540
ArcGIS for Server入门教程_第四章_规划ArcGIS for Server站点: http://zhihu.esrichina.com.cn/?/article/541
ArcGIS for Server入门教程_第五章_发布及使用服务: http://zhihu.esrichina.com.cn/?/article/542
ArcGIS for Server入门教程_第六章_服务及站点管理: http://zhihu.esrichina.com.cn/?/article/543
ArcGIS for Server入门教程_第七章_案例分析: http://zhihu.esrichina.com.cn/?/article/544
 

0 个评论

要回复文章请先登录注册