葡萄城报表支持1+N的负载均衡架构,即1台主服务器(Core)与N台代理服务器(Agent)构成一个分布式物理架构,以应对高用户并发量的挑战。
在局域网环境中,只需从拟做代理服务器的电脑上浏览主服务器的管理页面(http://x.x.x.x:8080/admin),点击页面右下角的代理服务器安装按钮,即可完成这种部署。
在阿里云环境中,由于阿里云在网络基础设施层面禁止了UDP组播,安装葡萄城报表的代理服务器时不能使用默认方式。
以下是在阿里云主机上部署多个代理服务器的要点:
(1)建立多台云主机之间的VPN
默认情况下,云主机之间的互相访问是被禁止的,只有显式开放的端口(如80,3389等)才可以访问。而葡萄城报表的主服务器与代理服务器之间需要互相访问很多端口,因此,需要在云主机之间创建VPN,使之看起来位于同一个局域网之内。
建立VPN的具体操作请咨询阿里云服务人员。
(2)创建hosts记录
云主机的DNS设置是针对外网的,为了便于使用计算机名互相访问,请在云主机的hosts中登记其他云主机的IP地址和主机名。
以管理员身份运行记事本(Notepad),打开 C:\Windows\System32\drivers\etc 文件夹下的 hosts 文件。
在主服务器上登记代理服务器的IP与主机名记录。比如:
192.168.1.23 myagent1
如下图:
同样,在代理服务器上,登记主服务器的IP与主机名记录。比如:
192.168.1.21 myhost
(3)设置阿里云安全组策略
请在阿里云的管理页面上添加多个安全组策略,具体操作请参考:
https://www.alibabacloud.com/help/zh/doc-detail/25471.htm
安全组策略的内容为开放葡萄城报表所使用的端口,具体需要开放的端口参见:
具体需要开放的端口:
TCP:
主服务器: 4040
代理服务器:5050
UDP:
主服务器:7923, 26637, 57323, 7979, 37637, 15377
(4)安装过程中手工输入中心服务器信息
安装代理服务器的操作步骤参见:
在阿里云主机上,特殊性在于:【指定主服务器信息】的画面上,下拉框中本应列出同一网络内的主服务器,但是由于阿里云的网络设置阻止了UDP组播,下拉框将不会列出任何内容。
为此,请手工添加中心服务器,请注意使用【主机名:4040】的形式,不要使用【IP地址:4040】的形式。例如:
MyServer1:4040
其中:4040是中心服务器监听的固定端口号。
(5)手工修改配置文件
安装完成后,请在主服务器管理页面上(http://x.x.x.x:8080/admin/agents)查看代理服务器列表,如下图:
如果【宿主机】显示为空,或者【连接状态】显示为【未连接】,请分别修改主服务器和代理服务器上的配置文件。修改内容是将IP地址修改为主机名。具体操作如下:
(a)修改主服务器配置文件
请使用记事本打开 C:\葡萄城报表\Server\ActiveReports.Server.Host.exe.config 文件,将其中所有的IP地址修改为计算机名,如下图:
(b)修改代理服务器配置文件
请使用记事本打开 C:\葡萄城报表\Agent\ActiveReports.Server.Agent.exe.Config 文件(注意目录路径和文件名与主服务器配置文件不同),同样将其中所有的IP地址修改为计算机名。
修改完毕,重启报表的两个Windows服务,如下图:
然后重新查看代理服务器状态(http://x.x.x.x:8080/admin/agents)。
如果仍有困难,请与葡萄城技术支持联系。联系方式参见: