使用gfsh启动定位器:start locator --name=LocatorUAT --properties-file=..\config\gemfire.properties,然后使用属性文件和cache.xml启动服务器
start server --name=ServerUAT --properties-file=..\config\gemfire.properties
其中属性具有use-cluster-configuration=true,而cache.xml具有多个区域,如下所示:
<region name="deal" refid="REPLICATE_PERSISTENT"><region-attributes disk-store-name="deal" disk-synchronous="false"></region-attributes></region>
然后我再启动两台服务器,如下所示:
start server --name=ServerUAT2 --server-port=40405
start server --name=ServerUAT3 --server-port=40406
这些都开始得很好,我可以列出连接到集群的成员和客户端。然后我转到pulse查看拓扑,其中我可以看到3台服务器,还可以看到有47个区域:

但是,当我步入server2或server3时,脉冲显示为regions=0,并且我期望在server2和server3中看到复制区域。为什么会这样呢?
这是47个地区的server1

这是具有0个区域的server2

这是具有0个区域的server3

发布于 2020-09-03 16:08:48
首先要做的是:集群配置服务与单个cache.xml文件的混合并不完全受支持,并且可能会出现几个问题,我建议在配置集群时使用单一的方法(集群配置服务最好是单个cache.xml文件,将来可能会被弃用)。
也就是说,第二个和第三个服务器似乎不是使用cache.xml文件启动的,并且只有当您在cache.xml文件中定义区域时(或者当定位器通过集群配置服务将区域推送给它们时),才会在每个服务器上本地创建区域;这可能就是这里发生的情况。
如何解决这个问题(假设上面的假设是正确的):不要为任何成员使用单独的cache.xml文件,而是使用gfsh命令创建所有区域,以便它们在集群配置服务中持久存在,并在出现时“推送”到服务器。
https://stackoverflow.com/questions/63710697
复制相似问题