Java 如何向现有Apache Ignite实例添加新主机?

Java 如何向现有Apache Ignite实例添加新主机?,java,ignite,Java,Ignite,我正在尝试使用ApacheIgnite的几个示例。我正在以这种格式输入Ignite节点的地址 ipFinderTcpIp.setAddresses(memberStrings); // ipFinderTcpIp is of TcpDiscoveryVmIpFinder class spi.setIpFinder(ipFinderTcpIp); //spi is of TcpDiscoverySpi class config.setDiscoverySpi(spi); //config is

我正在尝试使用ApacheIgnite的几个示例。我正在以这种格式输入Ignite节点的地址

ipFinderTcpIp.setAddresses(memberStrings); // ipFinderTcpIp is of TcpDiscoveryVmIpFinder class
spi.setIpFinder(ipFinderTcpIp); //spi is of TcpDiscoverySpi class 
config.setDiscoverySpi(spi); //config is of IgniteConfiguration class
//memberStrings contains the ipv4 addresses in String format. It is a collection. 

Ignite ignite = Ignition.start(config);
MemberString的值取自输入文件 我想向ignite节点动态添加一个地址。为了简单起见,让我们假设ignite已经在地址A和地址B中运行,这两个地址都存在于MemberString中。拓扑快照如下所示

Topology snapshot [ver=1, servers=2, clients=0, CPUs=8, offheap=4.5GB, heap=3.6GB]

假设我在输入文件中添加了一个新地址“C”。我有一个正在运行的线程,它检测到这个更改并在MemberString中进行更改。如何确保C也存在于拓扑中,而不停止并重新启动ignite实例以再次运行上述代码???

基本上,您不需要将此地址“C”添加到第一个节点的配置中。在启动时,节点C将尝试连接到其列表中的所有地址,并且不需要在节点“A”的配置中包含其地址。因此,节点将毫无问题地加入集群

在某些情况下,使用“共享”标志在所有节点之间共享所有IP地址可能很有用: i、 例如,此标志可用于客户端-在重新连接时,它将尝试重新连接到集群中的所有节点


此外,如果在开始之前不知道所有地址,可以使用IpFinder的其他实现:

基本上,不需要将此地址“C”添加到第一个节点的配置中。在启动时,节点C将尝试连接到其列表中的所有地址,并且不需要在节点“A”的配置中包含其地址。因此,节点将毫无问题地加入集群

在某些情况下,使用“共享”标志在所有节点之间共享所有IP地址可能很有用: i、 例如,此标志可用于客户端-在重新连接时,它将尝试重新连接到集群中的所有节点


此外,如果在开始之前不知道所有地址,可以使用IpFinder的其他实现:

A、B和C不是ignite节点。它们都是指向同一ignite节点的地址。唯一的区别是,C是在点火节点启动后添加的(即A和B)。我是否应该停止ignite实例,更改ignite配置(在MemberString中包括C)并重新启动ignite,或者可以通过其他方式完成?启动后您是如何向节点添加地址的?IpFinder包含集群中节点的地址,而不是本地节点的所有地址不向节点添加地址。。我正在输入文件中添加新地址,该文件将更新集合“MemberStrings”**************************************“启动后如何将地址添加到节点?”“这正是我想知道的。有没有办法在不停止的情况下添加地址?为什么需要在节点启动后添加地址?您想添加什么类型的地址?新节点A、B和C的地址不是ignite节点。它们都是指向同一ignite节点的地址。唯一的区别是,C是在点火节点启动后添加的(即A和B)。我是否应该停止ignite实例,更改ignite配置(在MemberString中包括C)并重新启动ignite,或者可以通过其他方式完成?启动后您是如何向节点添加地址的?IpFinder包含集群中节点的地址,而不是本地节点的所有地址不向节点添加地址。。我正在输入文件中添加新地址,该文件将更新集合“MemberStrings”**************************************“启动后如何将地址添加到节点?”“这正是我想知道的。有没有办法在不停止的情况下添加地址?为什么需要在节点启动后添加地址?您想添加什么类型的地址?新节点的地址?