Infinispan Server Cluster - определите IP-адреса участников - PullRequest
0 голосов
/ 18 апреля 2019

Я пытался заменить наши memcached серверы на Infinispan Server, чтобы получить функции репликации / распространения для наших сервисов.

Используя пример конфигурации clustered-memcached.xml, я могу легко запускать Infinispan Servers на нескольких хостах, но проблема в том, что функция автообнаружения / многоадресной рассылки найдет все экземпляры Infinispan Server во всей сети, то есть присоединится ко всем нашим этапам ( тестирование, да, производство) вместе в один кластер ... что явно не то, что кто-то хочет.

Есть ли пример того, как я могу определить членов кластера по IP / порту без какой-либо магии многоадресного обнаружения UDP? Документация содержит нулевое содержание об изолирующих кластерах ... и в целом отсутствуют полезные примеры XML.

1 Ответ

1 голос
/ 23 апреля 2019

Что вам нужно сделать, это настроить initial_hosts, добавив IP-адреса.В этом примере мы используем 192.168.1.2[7600],192.168.1.3[7600]

Ниже приведена частичная конфигурация стека

    <stack name="tcp">
        <transport type="TCP" socket-binding="jgroups-tcp"/>
        <protocol type="TCPPING">
            <property name="initial_hosts">192.168.1.2[7600],192.168.1.3[7600]</property>
            <property name="num_initial_members">2</property>
            <property name="port_range">0</property>
            <property name="timeout">2000</property>
        </protocol>
        .......
    </stack>

После того, как вы настроили initial_hosts, вам нужно изменить то, что будет stacks при запуске сервера.

1) Вы можете заменить ${jboss.default.jgroups.stack:udp} на tcp

ИЛИ

2) Запустить сервер с ./standalone.sh -c clustered.xml -Djboss.default.jgroups.stack=tcp

<subsystem xmlns="urn:infinispan:server:jgroups:9.4">
  <channels default="cluster">
    <channel name="cluster"/>
  </channels>
  <stacks default="${jboss.default.jgroups.stack:udp}">
    ...
  </stacks>
</subsystem>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...