ArcGIS分布式部署方案

编写不易,转载还请注明出处,感谢!

arcgis

服务器规划

共使用四台Linux服务器,系统为 CentOS7.5

服务器ip 域名 软件
192.168.192.100 base.esri.com Portal For ArcGIS
ArcGIS Server
Datastore
WebAdaptor
192.168.192.101 ga1.esri.com GeoAnalytics Server
GA站点nfs共享目录
192.168.192.102 ga2.esri.com GeoAnalytics Server
192.168.192.103 datastore.esri.com DataStore(时空大数据存储)

各服务器安装说明

base.esri.com[192.168.192.100]

安装ArcGIS Server

系统要求

  1. 内存>8G
  2. 硬盘可用空间>20G

准备工作

修改系统时间

目前的授权文件只到2018年7月,为个人学习使用,暂时以修改时间的方式规避,商业用途请支持正版。

1
2
3
[root@base ~]# date -s 20160101
[root@base ~]# hwclock -w
Fri Jan 1 00:00:00 EST 2016
关闭防火墙

关闭并禁用开机启动

1
2
[root@base ~]# systemctl stop firewalld.service
[root@base ~]# systemctl disable firewalld.service
用户和组的创建
1
2
3
[root@base ~]# groupadd esrichina
[root@base ~]# useradd -g esrichina -m arcgis
[root@base ~]# passwd arcgis
设置主机名
1
[root@base ~]# hostnamectl set-hostname base.esri.com
修改hosts
1
2
3
4
5
[root@base ~]# vim /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.192.100 base.esri.com base

注意如果存在多个网卡,建议删除localhost所在行
查看网卡:

1
2
[root@base ~]# lspci | grep -i eth
02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)
修改系统参数
  1. 编辑 limits.conf文件
    编辑/etc/security/limits.conf文件,添加如下内容:
    1
    2
    3
    4
    arcgis soft nofile 65535
    arcgis hard nofile 65535
    arcgis soft nproc 25059
    arcgis hard nproc 25059

开始安装

准备安装包

将安装包放入/home/arcgis/setup 并将ArcGIS Server的压缩包解压

1
2
3
4
5
-rwxr-xr-x. 1 arcgis esrichina  132907649 Feb 20 04:11 ArcGIS_License_Manager_Linux_105_154034.tar.gz
drwxr-sr-x. 5 arcgis esrichina 100 Feb 20 04:18 ArcGISServer
-rwxr-xr-x. 1 arcgis esrichina 2544647382 Feb 20 04:12 ArcGIS_Server_Linux_105_154052.tar.gz
-rwxr-xr-x. 1 arcgis esrichina 1863558498 Feb 20 04:12 Portal_for_ArcGIS_Linux_105_154053.tar.gz
-rwxr-xr-x. 1 arcgis esrichina 97511317 Feb 20 04:12 Web_Adaptor_Java_Linux_105_154055.tar.gz
检验系统是否符合要求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[arcgis@base ~]$ cd /home/arcgis/setup/ArcGISServer/serverdiag
[arcgis@base serverdiag]$ ./serverdiag
========================================================================
ArcGIS Server 10.5 Diagnostic Tool

Hostname: base.esri.com
========================================================================

DIAG000: Check for installation as root [PASSED]
DIAG001: Check for 64-bit architecture [PASSED]
DIAG002: Check OS version [PASSED]
DIAG003: Check hostname for invalid characters [PASSED]
DIAG024: Check /etc/hosts for hostname entry [PASSED]
DIAG004: Check installed packages [PASSED]
DIAG005: Check system limits [PASSED]
DIAG008: Check HTTP port [PASSED]
DIAG009: Check HTTPS port [PASSED]
DIAG010: Check Xvfb ports [PASSED]
DIAG020: Check hostname IP address mismatches [PASSED]
DIAG026: Check processes for ArcGIS core services [N/A]

------------------------------------------------------------------------
There were 0 failure(s) and 0 warning(s) found:

出现There were 0 failure(s) and 0 warning(s) found:即为通过

执行安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[arcgis@base setup]$ cd ArcGISServer
[arcgis@base ArcGISServer]$ ./Setup -m silent -l yes -a /home/arcgis/setup/Server10.5.ecp
========================================================================
ArcGIS Server 10.5 Diagnostic Tool

Hostname: base.esri.com
========================================================================

DIAG000: Check for installation as root [PASSED]
DIAG001: Check for 64-bit architecture [PASSED]
DIAG002: Check OS version [PASSED]
DIAG003: Check hostname for invalid characters [PASSED]
DIAG024: Check /etc/hosts for hostname entry [PASSED]
DIAG004: Check installed packages [PASSED]
DIAG005: Check system limits [PASSED]
DIAG008: Check HTTP port [PASSED]
DIAG009: Check HTTPS port [PASSED]
DIAG010: Check Xvfb ports [PASSED]

------------------------------------------------------------------------
There were 0 failure(s) and 0 warning(s) found:

[ArcGIS Server 10.5 Installation Details]
UI Mode..................silent
Agreed to Esri License...yes
Authorization File......./home/arcgis/setup/Server10.5.ecp
Installation Directory.../home/arcgis/server

Starting installation of ArcGIS Server 10.5...
...ArcGIS Server 10.5 installation is complete.

You will be able to access ArcGIS Server Manager by navigating to http://base.esri.com:6080/arcgis/manager.

当出现You will be able to access ArcGIS Server Manager by navigating to http://base.esri.com:6080/arcgis/manager.说明安装成功。

安装Portal for ArcGIS

系统要求

  1. 处理器:4 核(适用于 100 个并发用户)
  2. 内存/RAM:8 GB
  3. 磁盘空间:10 GB

安装过程

portal端需要安装dos2unix

1
[arcgis@base portaldiag]$ sudo yum install dos2unix

其他与安装Server相同,另外需要portal端的ecp授权文件进行授权即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[arcgis@base portaldiag]$ pwd
/home/arcgis/setup/PortalForArcGIS/portaldiag
[arcgis@base portaldiag]$ ./portaldiag
========================================================================
Portal for ArcGIS 10.5 Diagnostic Tool

Hostname: base.esri.com
========================================================================

DIAG000: Check for installation as root [PASSED]
DIAG001: Check for 64-bit architecture [PASSED]
DIAG002: Check OS version [PASSED]
DIAG003: Check hostname for invalid characters [PASSED]
DIAG005: Check system limits [PASSED]
DIAG004: Check installed packages [PASSED]
DIAG016: Check Portal for ArcGIS ports [PASSED]
DIAG024: Check localhost resolution [PASSED]
DIAG029: Check file system type [PASSED]
DIAG020: Check hostname IP address mismatches [PASSED]
DIAG026: Check processes of Portal for ArcGIS core services [N/A]
DIAG028: Check data directory [N/A]

------------------------------------------------------------------------
There were 0 failure(s) and 0 warning(s) found:

portal端所涉及到的端口

Portal for ArcGIS 使用特定的端口进行通信。以下是可能需要防火墙允许的端口的描述。

  • HTTP 端口 7080

Portal for ArcGIS 通过端口 7080 进行通信,必须确保防火墙允许通过此端口进行 HTTP 通信。配置 Web Adaptor 以用于门户时,将引用 HTTP URL(例如,http://portal.domain.com:7080)。

  • HTTPS 端口 7443

默认情况下,Portal for ArcGIS 使用 HTTPS 端口 7443 为需要用户凭据的通信进行加密。如不需要凭据,则使用 HTTP。如果已将门户配置为在所有通信中使用 HTTPS,则仅使用 HTTPS。有关详细信息,请参阅配置 HTTPS

  • 内部使用的端口

Portal for ArcGIS 使用端口 5701、7005、7099、7199、7654、7120 和 7220 进行计算机间通信。必须确保防火墙允许在这些端口上进行本地通信,并且其当前未被其他应用程序使用。

配置高可用性门户时,索引服务使用端口 5701 和 5801 在两个门户计算机之间保持用户和项目搜索的同步。

Portal for ArcGIS 可能还需要使用临时端口(有时称为动态端口)进行计算机间通信。临时端口通常是一个范围(通常介于 1024 和 5000 之间或 49152 到 65535 之间,而系统管理员可以自定义该范围)。您必须确保防火墙允许在这些特定端口和临时端口范围上进行计算机间通信。

安装ArcGIS DataStore

系统要求

要安装和配置 ArcGIS Data Store,系统驱动器上至少需要有 13 GB 的可用磁盘空间。这是对具有一个空数据存储类型的计算机的最低磁盘空间要求;它没有将您要在该计算机上可能存储的数据存储或备份文件中存储的数据考虑在内。鉴于此,您应计划在具有大量可用磁盘空间的计算机上安装 ArcGIS Data Store。

注:

当该计算机的可用磁盘空间少于 10 GB 时,ArcGIS Data Store 便会开始记录磁盘空间不足的警告。硬盘驱动器的可用空间低于 1 GB 时,关系数据存储便会以只读模式存储,并且切片缓存和时空大数据存储会被关闭。

为了确定在一台 ArcGIS Data Store 专用计算机上需要的磁盘空间量,需要考虑以下方面:

  • 软件安装使用 900 MB 的磁盘空间。

  • 每新建一个数据存储(即使是空白的)都会占用额外的空间:

    • 切片缓存数据存储 = 1 MB
    • 时空大数据存储 = 200 MB
    • 关系数据存储 = 2.5 GB*

    *随着时间的推移,一个空的关系数据存储将最多使用 2.5 GB 磁盘空间,以支持高可用性和可靠备份策略。配置关系数据存储后,将使用大约 200 MB 磁盘空间。一个空的关系数据存储所使用的磁盘空间量在 11 小时内将以大约 200 MB/小时的速度增长,直到那时稳定在 2.5 GB。在使用过程中存储在系统中的数据是对此基线存储要求的补充。

  • 您需要估算将数据存储在数据存储中时所需的磁盘空间量。

  • 将备份文件存储在数据存储计算机上时也需要消耗磁盘空间。如果您没有将备份配置为写入共享系统驱动中,则必须考虑这部分额外使用的磁盘空间。

安装过程

解压
1
[arcgis@base setup]$ tar -zxvf ArcGIS_DataStore_Linux_105_154054.tar.gz
检验系统环境
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
[arcgis@base ArcGISDataStore_Linux]$ cd datastorediag/
[arcgis@base datastorediag]$ ./datastorediag
========================================================================
ArcGIS Data Store 10.5 Diagnostic Tool

Hostname: base.esri.com
========================================================================

Check for installation as root [PASSED]
Check for 64-bit architecture [PASSED]
Check OS version [PASSED]
Check hostname for invalid characters [PASSED]
Check installed packages [PASSED]
Check ArcGIS Data Store ports [PASSED]
Check hostname IP address mismatches [PASSED]
Check Spatiotemporal big data store requirements [WARNING]

------------------------------------------------------------------------
There were 0 failure(s) and 1 warning(s) found:

WARNINGS:
------------------------------------------------------------------------
*** Check Spatiotemporal big data store requirements: If you will
be using Spatiotemporal big data store, please check the system
requirements. One or more Spatiotemporal big data store requirements
were not met:

1.) The vm.max_map_count is set too low (65530). Run sysctl -w
vm.max_map_count=262144 or set vm.max_map_count to at least 262144
in /etc/sysctl.conf:

vm.max_map_count = 262144

2.) Memory swappiness is set to 30. Set vm.swappiness to 1 in
/etc/sysctl.conf:

vm.swappiness = 1

根据提示,需要修改相关系统参数,切换为root用户,执行

1
2
3
4
[root@base ~]# sysctl -w vm.swappiness=1
[root@base ~]# sysctl -w vm.max_map_count=262144
[root@base ~]# echo vm.swappiness = 1 >> /etc/sysctl.conf
[root@base ~]# echo vm.max_map_count=262144 >> /etc/sysctl.conf
执行安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[arcgis@base ArcGISDataStore_Linux]$ ./Setup -m silent -l Yes
========================================================================
ArcGIS Data Store 10.5 Diagnostic Tool

Hostname: base.esri.com
========================================================================

Check for installation as root [PASSED]
Check for 64-bit architecture [PASSED]
Check OS version [PASSED]
Check hostname for invalid characters [PASSED]
Check installed packages [PASSED]
Check ArcGIS Data Store ports [PASSED]
Check hostname IP address mismatches [PASSED]
Check Spatiotemporal big data store requirements [PASSED]

------------------------------------------------------------------------
There were 0 failure(s) and 0 warning(s) found:

[ArcGIS Data Store 10.5 Installation Details]
UI Mode..................silent
Agreed to Esri License...yes
Installation Directory.../home/arcgis/arcgis/datastore

Starting installation of ArcGIS Data Store 10.5...
...ArcGIS Data Store 10.5 installation is complete.

You will be able to configure ArcGIS Data Store 10.5 by navigating to https://localhost:2443/arcgis/datastore.
配置ArcGIS Server

datastore-setting

安装ArcGIS Web Adaptor

系统要求

安装过程

删除CentOS7自带的OpenJDK

执行java -version,发现

1
2
3
4
[arcgis@base ArcGISDataStore_Linux]$ java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

使用的是自带的OpenJDK,所以要先卸载掉,用Oracle JDK1.8。

执行

1
2
3
4
5
6
7
8
[arcgis@base ArcGISDataStore_Linux]$ rpm -qa|grep java
javapackages-tools-3.4.1-11.el7.noarch
java-1.7.0-openjdk-headless-1.7.0.201-2.6.16.1.el7_6.x86_64
java-1.7.0-openjdk-1.7.0.201-2.6.16.1.el7_6.x86_64
java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64
tzdata-java-2018i-1.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.191.b12-1.el7_6.x86_64
python-javapackages-3.4.1-11.el7.noarch

执行

1
2
3
4
rpm -e --nodeps java-1.7.0-openjdk-headless
rpm -e --nodeps java-1.7.0-openjdk
rpm -e --nodeps java-1.8.0-openjdk
rpm -e --nodeps java-1.8.0-openjdk-headless
安装Oracle JDK

解压Oracle的jdk到/usr/local/java目录下,并配置环境变量

1
2
3
4
echo 'export JAVA_HOME=/usr/local/java' >> /etc/profile.d/java.sh
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile.d/java.sh
echo 'export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' >> /etc/profile.d/java.sh
source /etc/profile
解压tomcat

把tomcat解压到/usr/local/tomcat8

创建私钥和证书请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[root@base tomcat8]# openssl req -newkey rsa:2048 -nodes -keyout /usr/local/tomcat8/esrixa.key -x509 -days 365 -out /usr/local/tomcat8/esrixa.crt
Generating a 2048 bit RSA private key
................................................................+++
........+++
writing new private key to '/usr/local/tomcat8/esrixa.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:cn
State or Province Name (full name) []:jiangsu
Locality Name (eg, city) [Default City]:nanjing
Organization Name (eg, company) [Default Company Ltd]:esri
Organizational Unit Name (eg, section) []:esri
Common Name (eg, your name or your server's hostname) []:base.esri.com
Email Address []:1029743469@qq.com
创建自签名证书
1
2
3
[root@base tomcat8]# openssl pkcs12 -inkey /usr/local/tomcat8/esrixa.key -in /usr/local/tomcat8/esrixa.crt -export -out /usr/local/tomcat8/esrixa.pfx
Enter Export Password:
Verifying - Enter Export Password:

此处密码为p@ssw0rd

使用自签名证书会出现的问题

创建自签名证书不应被视作生产环境的有效选项,因为这将导致异常结果以及所有门户用户的不良用户体验。

仅由网站所有者签名的证书称为自签名证书。自签名证书通常用于仅对组织内部 (LAN) 网络上的用户可用的网站上。如果与外部网络中的使用自签名证书的网站进行通信,您将无法验证颁发证书的站点是否确实代表其声称代表的一方。您可能实际上正与恶意方进行通信,使您的信息处于危险之中。

首次设置门户时,可能会使用自签名证书进行初步测试,以帮助您快速验证是否配置成功。但是,如果使用自签名证书,请注意在测试期间将遇到如下状况:

  • 有关不受信任站点的 Web 浏览器和 ArcGIS Desktop 警告。通常,Web 浏览器遇到自签名证书时将显示警告消息并要求您确认是否继续前往该站点。只要您使用自签名证书,许多浏览器就会显示警告图标或对地址栏标红。如果使用自签名证书配置门户,那么您就能够看到这些类型的警告。
  • 无法在门户地图查看器中打开联合服务、无法将受保护的服务项添加到门户、无法在联合服务器中登录到 ArcGIS Server Manager 以及无法从 Esri Maps for Office 连接到门户。
  • 打印托管服务以及从客户端应用程序中访问门户时出现异常行为。
  • 无法从 Esri Maps for Office 登录至门户,除非在运行 Esri Maps for Office 的计算机上将自签名证书安装到受信任根证书颁发机构证书库。
配置tomcat

开启https

1
[root@base tomcat8]# vim /usr/local/tomcat8/conf/server.xml

修改Connector的端口为80,443

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8"?>
<!-- 此处省略 -->
<Server port="8005" shutdown="SHUTDOWN">
<!-- 此处省略 -->
<Service name="Catalina">
<!-- 此处省略 -->
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/usr/local/tomcat8/esrixa.pfx" keystoreType="pkcs12" keystorePass="p@ssw0rd" >
</Connector>
<!-- A "Connector" using the shared thread pool-->
<!--
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- 此处省略 -->
</Service>
</Server>
启动和验证Tomcat

修改root启动tomcat的权限。

1
[root@base tomcat8]# chmod -R 777 /usr/local/tomcat8

启动tomcat

1
2
[root@base tomcat8]# cd bin
[root@base bin]# ./startup.sh
解压Web Adaptor
1
2
[arcgis@base ArcGISDataStore_Linux]$ cd /home/arcgis/setup
[arcgis@base setup]$ tar -zxvf Web_Adaptor_Java_Linux_105_154055.tar.gz
安装Web Adaptor
1
2
3
4
5
6
7
8
[arcgis@base WebAdaptor]$ ./Setup -m silent -l yes
[ArcGIS Web Adaptor (Java Platform) 10.5 Installation Details]
UI Mode..................silent
Agreed to Esri License...yes
Installation Directory.../home/arcgis/webadaptor10.5

Starting installation of ArcGIS Web Adaptor (Java Platform) 10.5...
...ArcGIS Web Adaptor (Java Platform) 10.5 installation is complete.
部署两个web adaptor的war包
1
2
3
4
5
6
7
8
9
10
11
12
13
[arcgis@base java]$ cd /home/arcgis/webadaptor10.5/java
[arcgis@base java]$ ll
total 23292
-rwxr-xr-x. 1 arcgis esrichina 23830437 Nov 3 2016 arcgis.war
-rwxr-xr-x. 1 arcgis esrichina 340 Nov 3 2016 clientaccesspolicy.xml
-rwxr-xr-x. 1 arcgis esrichina 224 Nov 3 2016 crossdomain.xml
-rwxr-xr-x. 1 arcgis esrichina 70 Jan 1 03:50 init_webadaptor.csh
-rwxr-xr-x. 1 arcgis esrichina 87 Jan 1 03:50 init_webadaptor.sh
drwxr-xr-x. 2 arcgis esrichina 22 Jan 1 03:50 License
drwxr-xr-x. 3 arcgis esrichina 122 Jan 1 03:50 Support
drwxrwxr-x. 2 arcgis esrichina 85 Jan 1 03:50 tools
-rwxr-xr-x. 1 arcgis esrichina 1549 Jan 1 03:50 uninstall_WebAdaptor
drwxrwxr-x. 10 arcgis esrichina 92 Jan 1 03:50 WebAdaptorHelp

这里有一个arcgis.war,待会作为portal端的web adaptor,另外,我们复制一份并并命名为server.war,用于server端的web adaptor。都放到之前所配置的tomcat的webapp目录中。

1
2
[arcgis@base java]$ cp /home/arcgis/webadaptor10.5/java/arcgis.war /usr/local/tomcat8/webapps/
[arcgis@base java]$ cp /home/arcgis/webadaptor10.5/java/arcgis.war /usr/local/tomcat8/webapps/server.war
配置web adaptor

过程记录如下

___注意:___访问web adaptor需要在其所在的主机进行操作

先配server的,访问base.esri.com/server

再配portal端的web adaptor,访问base.esri.com/arcgis

web-adaport-setting05

这里是portal的用户名及密码
user:admin
password:admin123

ga1.esri.com[192.168.192.101]

安装ArcGIS Server

操作过程同base.esri.com

此处遇到一个问题,出现了ArcGIS Server无法启动的情况,报错信息为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Thu Feb 21 21:52:42 EST 2019:java.lang.RuntimeException: Failed to start JMX Server
at com.esri.arcgis.discovery.util.JMXServerController.start(JMXServerController.java:49)
at com.esri.arcgis.discovery.nodeagent.impl.NodeAgent.startJMXServer(NodeAgent.java:415)
at com.esri.arcgis.discovery.nodeagent.impl.NodeAgent.start(NodeAgent.java:134)
at com.esri.arcgis.discovery.nodeagent.impl.Main.start(Main.java:56)
at com.esri.arcgis.discovery.nodeagent.impl.Main.main(Main.java:299)
Caused by: java.lang.IllegalArgumentException: Port value out of range: 65536
at java.net.ServerSocket.<init>(ServerSocket.java:232)
at java.net.ServerSocket.<init>(ServerSocket.java:181)
at com.esri.arcgis.discovery.util.IPUtil.isPortAvailable(IPUtil.java:668)
at com.esri.arcgis.discovery.util.JMXServerController.a(JMXServerController.java:213)
at com.esri.arcgis.discovery.util.JMXServerController.start(JMXServerController.java:38)
... 4 more
Exception in thread "main" com.esri.arcgis.discovery.nodeagent.NodeAgentException: Could not start RMI connector. An instance of NodeAgent may be running or the JMX-RMI port is in use by another process.
at com.esri.arcgis.discovery.nodeagent.impl.NodeAgent.start(NodeAgent.java:137)
at com.esri.arcgis.discovery.nodeagent.impl.Main.start(Main.java:56)
at com.esri.arcgis.discovery.nodeagent.impl.Main.main(Main.java:299)
Caused by: java.lang.RuntimeException: Failed to start JMX Server
at com.esri.arcgis.discovery.util.JMXServerController.start(JMXServerController.java:49)
at com.esri.arcgis.discovery.nodeagent.impl.NodeAgent.startJMXServer(NodeAgent.java:415)
at com.esri.arcgis.discovery.nodeagent.impl.NodeAgent.start(NodeAgent.java:134)
... 2 more
Caused by: java.lang.IllegalArgumentException: Port value out of range: 65536
at java.net.ServerSocket.<init>(ServerSocket.java:232)
at java.net.ServerSocket.<init>(ServerSocket.java:181)
at com.esri.arcgis.discovery.util.IPUtil.isPortAvailable(IPUtil.java:668)
at com.esri.arcgis.discovery.util.JMXServerController.a(JMXServerController.java:213)
at com.esri.arcgis.discovery.util.JMXServerController.start(JMXServerController.java:38)
... 4 more

通过测试发现,在使用虚拟机环境时,该101服务器虚拟机为同一个虚拟机模板复制过来的,无法在两台同源的虚拟机上同时启动ArcGIS Server,具体原因还没找到,暂时的解决办法是,不采用复制虚拟机的方法,而是重新建一个虚拟机并安装CentOS7,在全新的环境安装ArcGIS Server。

启动完成后创建新站点,

PS: 问题原因找到了,每台机器的网卡UUID不能相同,修改了之后重启网络服务就好了。不过按道理来说网卡的UUID只应该在应用层面有效才对,对于不同机器应该不影响。推测可能是arcgis对该变量有引用,会根据此扫描局域网内相关机器,所以导致查询端口查到另一台机器上了,最终端口出现溢出

nfs共享目录创建及本地目录挂载

nfs安装+创建共享目录

检查nfs依赖包是否安装
1
rpm -qa nfs-utils rpcbind
安装依赖包
1
yum install -y nfs-utils rpcbind
开启nfs以及rpcbind并设为开机启动
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[root@ga1 yum.repos.d]# systemctl start nfs
[root@ga1 yum.repos.d]# systemctl status nfs
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset: disabled)
Active: active (exited) since Fri 2019-02-22 01:14:36 EST; 2s ago
Process: 37844 ExecStartPost=/bin/sh -c if systemctl -q is-active gssproxy; then systemctl restart gssproxy ; fi (code=exited, status=0/SUCCESS)
Process: 37827 ExecStart=/usr/sbin/rpc.nfsd $RPCNFSDARGS (code=exited, status=0/SUCCESS)
Process: 37825 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)
Main PID: 37827 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/nfs-server.service

Feb 22 01:14:36 ga1.esri.com systemd[1]: Starting NFS server and services...
Feb 22 01:14:36 ga1.esri.com systemd[1]: Started NFS server and services.
[root@ga1 yum.repos.d]# systemctl start rpcbind
[root@ga1 yum.repos.d]# systemctl status rpcbind
● rpcbind.service - RPC bind service
Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-02-22 01:14:31 EST; 26s ago
Process: 37802 ExecStart=/sbin/rpcbind -w $RPCBIND_ARGS (code=exited, status=0/SUCCESS)
Main PID: 37803 (rpcbind)
CGroup: /system.slice/rpcbind.service
└─37803 /sbin/rpcbind -w

Feb 22 01:14:31 ga1.esri.com systemd[1]: Starting RPC bind service...
Feb 22 01:14:31 ga1.esri.com systemd[1]: Started RPC bind service.
[root@ga1 yum.repos.d]# systemctl enable nfs
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
[root@ga1 yum.repos.d]# systemctl enable rpcbind
配置nfs
1
2
3
4
5
[root@ga1 yum.repos.d]# mkdir -p /home/data/gaserver
[root@ga1 yum.repos.d]# chown -R arcgis:esrichina /home/data
[root@ga1 yum.repos.d]# mkdir -p /usr/local/nfsShareFiles
[root@ga1 yum.repos.d]# chmod o+w /usr/local/nfsShareFiles
[root@ga1 yum.repos.d]# vi etc/exports

添加:/usr/local/nfsShareFiles 192.168.192.0/24(rw,sync,all_squash)

其中/usr/local/nfsShareFiles即为需要共享的目录

重启nfs

1
exportfs -r

查看本机挂在情况

1
2
3
[root@ga1 yum.repos.d]# showmount -e 127.0.0.1
Export list for 127.0.0.1:
/usr/local/nfsShareFiles 192.168.192.0/24

挂载

执行挂载
1
2
3
4
5
6
7
8
9
10
11
12
[root@ga1 yum.repos.d]# mount -t nfs 192.168.192.101:/usr/local/nfsShareFiles /home/data/gaserver
[root@ga1 yum.repos.d]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 22G 12G 9.6G 56% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 17M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 1014M 169M 846M 17% /boot
tmpfs 378M 0 378M 0% /run/user/0
tmpfs 378M 0 378M 0% /run/user/1000
192.168.192.101:/usr/local/nfsShareFiles 22G 12G 9.6G 56% /home/data/gaserver
重启自动挂载
1
2
3
4
[root@ga2 ~]# chmod +x /etc/rc.d/rc.local
[root@ga2 ~]# vim /etc/rc.local
#添加下面一行
bin/mount -t nfs 192.168.192.101:/usr/local/nfsShareFiles /home/data/gaserver

[相关参考资料]

[nfs服务权限配置][https://blog.51cto.com/12332766/2126316]

[CentOS7上实现NFS共享][https://www.linuxidc.com/Linux/2017-06/144467.htm]

服务器配置

将/home/data/gaserver作为配置目录

一直下一步直到完成。

进入服务器->站点->GIS服务器>目录,可见:

nfs配置完成

ga2.esri.com[192.168.192.102]

nfs挂载

作为nfs所配置的网段下的客户端,需要进行挂载

nfs相关软件安装及启动可参照101服务器,下面是挂载操作,也与101服务器相同。

1
2
3
4
5
6
[root@ga1 yum.repos.d]# mkdir -p /home/data/gaserver
[root@ga1 yum.repos.d]# chown -R arcgis:esrichina /home/data
[root@ga1 yum.repos.d]# mkdir -p /usr/local/nfsShareFiles
[root@ga1 yum.repos.d]# chmod o+w /home/data/gaserver
[root@ga1 yum.repos.d]# chmod o+w /usr/local/nfsShareFiles
[root@ga1 yum.repos.d]# mount -t nfs 192.168.192.101:/usr/local/nfsShareFiles /home/data/gaserver

安装ArcGIS Server

操作过程同base.esri.com,但

此处ArcGIS Server在首次访问/arcgis/manager时,选择加入现有站点

URL填写https://ga1.esri.com:6443

注意:各台服务器的hosts文件都需要加上相应配置,不然访问不到。

之后一直下一步即可。

完成后可登陆ga1中,查看[集群]下是否存在ga2,以及[计算机]选项中的ga2是否处于启动状态。

ga集群02

datastore.esri.com[192.168.192.103]

安装ArcGIS DataStore

安装过程与100服务器中的datastore相同

此处的datastore需要配置为时空大数据存储,服务器URL填写100服务器的url

时空大数据datastore04

[参考资料]

[ArcGIS Server和Data Store的注销与重新配置][https://blog.csdn.net/smss007/article/details/76154962]

服务器配置

登录https://base.esri.com/arcgis/home门户入口

user:admin password:admin123

联合ArcGIS Server

需要进入My Organization->Edit Settings->Servers->Federated Servers->add server进行编辑。

通过web adaptor访问portal端后发现,无法进行编辑设置?

查阅资料:https://community.esri.com/thread/189808-edit-settings-is-disabled-when-accessing-portal-using-the-web-adaptor

解决方法是:

访问https://base.esri.com/arcgis/portaladmin/federation/servers/federate

通过其REST API来完成联合

Service Url为webadaptor的访问地址

Admin Url为不通过webadaptor访问arcgis server的地址

原因: https://support.esri.com/zh-cn/bugs/nimbus/QlVHLTAwMDEwMjU0NA==

配置托管服务器

由于web adaptor不知道啥原因,没办法进入edit setting界面,所以这里通过访问https://base.esri.com:7443/arcgis/home来绕过web adaptor。

如图所示,上面一个框就是刚刚已经配置好的联合服务器,而下面一个框则是需要将hosting server(托管服务器)选择为之前配置的联合服务器中的base.esri.com/arcgis即可

联合ArcGIS GeoAnalytics Server

什么是ArcGIS GeoAnalytics Server?

ArcGIS GeoAnalytics Server 引入了基于矢量的要素数据的分布式计算,可用于分析大数据或通过 ArcGIS Pro 和 Portal for ArcGIS 提高传统 ArcGIS Desktop 分析工作流的速度。还可以从 GeoAnalytics Server 应用程序中使用 Insights for ArcGIS 功能。

如何部署ArcGIS GeoAnalytics Server?

需要三个站点:

  • 站点 1:基础 ArcGIS Enterprise 部署 base.esri.com[192.168.192.100]
    其中包括以下组件:

    • Portal for ArcGIS

    • 已授权为 GIS 服务器并设置为门户托管服务器的 ArcGIS Server

    • 两个 ArcGIS Web Adaptor 安装程序 - 一个配置在门户中,另一个配置在 GIS 服务器中。

    • 至少两个 ArcGIS Data Store 安装程序 - 一个配置为关系数据存储,另一个配置为时空大数据存储(站点3)。您应该将时空大数据存储部署在与其他任何 ArcGIS Enterprise 组件所位于计算机不同的计算机上。您可以在时空大数据存储中包含多台计算机。有关站点架构建议的详细信息,请参阅其他服务器部署

  • 站点2:ArcGIS GeoAnalytics Server ga1.esri.com[192.168.192.101/102]

    此站点需要许可为 ArcGIS Server 并使用以下步骤进行配置的 ArcGIS GeoAnalytics Server 站点。

  • 站点3:时空大数据 ArcGIS DataStore datastore.esri.com[192.168.192.103]

ArcGIS 相关文档连接

[SDK&Documents][https://developers.arcgis.com/downloads/apis-and-sdks]

[https://developers.arcgis.com/downloads/apis-and-sdks]: https://developers.arcgis.com/downloads/apis-and-sdks “SDK&Documents”