通过指定的网络接口点亮网络接口配置,集群

时间:2015-09-15 14:28:22

标签: cluster-computing gridgain in-memory ifconfig ignite

我在配置了多个网络接口的盒子上运行Ignite群集。我有3种不同的网络接口,速度不同。

我看到Ignite找到3个IP地址

INFO: Non-loopback local IPs: xxx, yyy, zzz

然后

 INFO: Successfully bound to TCP port [port=47100,locHost=0.0.0.0/0.0.0.0]

INFO: Successfully bound to TCP port [port=47500, localHost=0.0.0.0/0.0.0.0]

>>> Local node addresses: [Server1/xxx, Server1/yyy, Server1/zzz, /127.0.0.1]
>>> Local ports: TCP:47100 TCP:47500 TCP:48100 

我想将Ignite群集配置为仅使用其中一个网络接口进行通信。

我有这个Ignite xml网络配置

  <bean id="grid.cfg" class="org.apache.ignite.configuration.IgniteConfiguration" parent="base-ignite.cfg">

    <property name="discoverySpi">
        <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
            <property name="ipFinder">
                <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
                    <property name="addresses">
                        <list>
                            <value>box1:47500</value>
                            <value>box2:47500</value>
                            <value>box3:47500</value>
                            <value>box4:47500</value>
                            ....
                            ...
                            ..
                            .
                        </list>
                    </property>
                </bean>
            </property>
        </bean>
    </property>
</bean>

当节点加入时我找到

INFO: Added new node to topology: TcpDiscoveryNode [id=cb61c90f-6a8d-4c4a-81dc-7994b5e5fd80, addrs=[box1-xxx,box1-yyy, box1-yyy, 127.0.0.1], sockAddrs=[/box1-xxx:47500, /box1-xxx:47500, /box1-yyy:47500, /box1-yyy:47500, /box1-zzz:47500, /box1-zzz:47500, /127.0.0.1:47500], discPort=47500, order=2, intOrder=2, lastExchangeTime=1442308257191, loc=false, ver=1.5.0#20150911-sha1:b736c46f, isClient=false]

所以Ignite服务器绑定并侦听盒子上的所有网络接口。并且在xml配置中我只给出了1个网络接口的地址,但有些如何在节点加入消息时,我看到所有其他网络接口的IP地址。

1 个答案:

答案 0 :(得分:1)

Ignite需要在每个节点上提供两个端口:一个用于发现(默认为47500),另一个用于通信(默认为47100)。有关更详细的说明,请参阅此链接:https://mail-archives.apache.org/mod_mbox/incubator-ignite-dev/201504.mbox/%3CCABuYRcqGRB2_3Y7niHShz=icHVVr5d8PVmdwug=oOwHVSXA4SA@mail.gmail.com%3E

端口48100由共享内存通信使用,其工作速度比传统TCP通信快,但仅适用于在同一物理计算机上运行的节点。此功能是可选的,可以通过将-1设置为共享内存通信端口来禁用此功能:

<property name="communicationSpi">
    <bean class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
        <property name="sharedMemoryPort" value="-1"/>
    </bean>
</property>