web-dev-qa-db-fra.com

Comment configurez-vous par programme Hazelcast pour le mécanisme de découverte de multidiffusion?

Comment configurez-vous par programme Hazelcast pour le mécanisme de découverte de multidiffusion?


Détails:

documentation ne fournit qu'un exemple pour TCP/IP et est obsolète: il utilise Config.setPort (), qui n'existe plus.

Ma configuration ressemble à ceci, mais la découverte ne fonctionne pas (c'est-à-dire que j'obtiens la sortie "Members: 1":

        Config cfg = new Config();                  
        NetworkConfig network = cfg.getNetworkConfig();
        network.setPort(PORT_NUMBER);

        JoinConfig join = network.getJoin();
        join.getTcpIpConfig().setEnabled(false);
        join.getAwsConfig().setEnabled(false);
        join.getMulticastConfig().setEnabled(true);

        join.getMulticastConfig().setMulticastGroup(MULTICAST_ADDRESS);
        join.getMulticastConfig().setMulticastPort(PORT_NUMBER);
        join.getMulticastConfig().setMulticastTimeoutSeconds(200);

        HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);
        System.out.println("Members: "+hazelInst.getCluster().getMembers().size());

Mise à jour 1, prenant en compte la réponse d'Asimarslan

Si j'ai tâté avec le MulticastTimeout, je reçois "Members: 1" Ou

5 décembre 2013 8:50:42 PM com.hazelcast.nio.ReadHandler AVERTISSEMENT: [192.168.0.9]: 4446 [dev] hz._hzInstance_1_dev.IO.thread-in-0 Clôture socket to endpoint Adresse [192.168.0.7]: 4446, cause: Java.io.EOFException: socket distant fermé! 05 déc. 2013 8:57:24 PM com.hazelcast.instance.Node GRAVE: [192.168.0.9]: 4446 [dev] Impossible de rejoindre le cluster, arrêt! Com.hazelcast.core.HazelcastException: échec de la jointure en 300 secondes!


Mise à jour 2, tenant compte de la réponse de pveentjer concernant l'utilisation de TCP/IP

Si je change la configuration comme suit, je n'ai toujours qu'un seul membre:

Config cfg = new Config();                  
NetworkConfig network = cfg.getNetworkConfig();
network.setPort(PORT_NUMBER);

JoinConfig join = network.getJoin();

join.getMulticastConfig().setEnabled(false);
join.getTcpIpConfig().addMember("192.168.0.1").addMember("192.168.0.2").
addMember("192.168.0.3").addMember("192.168.0.4").
addMember("192.168.0.5").addMember("192.168.0.6").
addMember("192.168.0.7").addMember("192.168.0.8").
addMember("192.168.0.9").addMember("192.168.0.10").
addMember("192.168.0.11").setRequiredMember(null).setEnabled(true);

//this sets the allowed connections to the cluster? necessary for multicast, too?
network.getInterfaces().setEnabled(true).addInterface("192.168.0.*");

HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);
System.out.println("debug: joined via "+join+" with "+hazelInst.getCluster()
.getMembers().size()+" members.");

Plus précisément, cette exécution produit la sortie

débogage: joint via JoinConfig {multicastConfig = MulticastConfig [enabled = false, multicastGroup = 224.2.2.3, multicastPort = 54327, multicastTimeToLive = 32, multicastTimeoutSeconds = 2, trustedInterfaces = []], tcpIpConfig = TcpIt = True, connection = True members = [192.168.0.1, 192.168.0.2, 192.168.0.3, 192.168.0.4, 192.168.0.5, 192.168.0.6, 192.168.0.7, 192.168.0.8, 192.168.0.9, 192.168.0.10, 192.168.0.11], requiredMember = null], awsConfig = AwsConfig {enabled = false, region = 'us-east-1', securityGroupName = 'null', tagKey = 'null', tagValue = 'null', hostHeader = 'ec2.amazonaws.com', connectionTimeoutSeconds = 5}} avec 1 membres.

Mon implémentation non Hazelcast utilise des multidiffusions UDP et fonctionne très bien. Un pare-feu peut-il vraiment être le problème?


Mise à jour 3, prenant en compte la réponse de pveentjer sur la vérification du réseau

Comme je n'ai pas d'autorisations pour iptables ou pour installer iperf, j'utilise com.hazelcast.examples.TestApp Pour vérifier si mon réseau fonctionne, comme décrit dans Mise en route avec Hazelcast dans le chapitre 2, section " Montrer tout de suite ":

J'appelle Java -cp hazelcast-3.1.2.jar com.hazelcast.examples.TestApp Sur 192.168.0.1 et j'obtiens la sortie

...Dec 10, 2013 11:31:21 PM com.hazelcast.instance.DefaultAddressPicker
INFO: Prefer IPv4 stack is true.
Dec 10, 2013 11:31:21 PM com.hazelcast.instance.DefaultAddressPicker
INFO: Picked Address[192.168.0.1]:5701, using socket ServerSocket[addr=/0:0:0:0:0:0:0:0,localport=5701], bind any local is true
Dec 10, 2013 11:31:22 PM com.hazelcast.system
INFO: [192.168.0.1]:5701 [dev] Hazelcast Community Edition 3.1.2 (20131120) starting at Address[192.168.0.1]:5701
Dec 10, 2013 11:31:22 PM com.hazelcast.system
INFO: [192.168.0.1]:5701 [dev] Copyright (C) 2008-2013 Hazelcast.com
Dec 10, 2013 11:31:22 PM com.hazelcast.instance.Node
INFO: [192.168.0.1]:5701 [dev] Creating MulticastJoiner
Dec 10, 2013 11:31:22 PM com.hazelcast.core.LifecycleService
INFO: [192.168.0.1]:5701 [dev] Address[192.168.0.1]:5701 is STARTING
Dec 10, 2013 11:31:24 PM com.hazelcast.cluster.MulticastJoiner
INFO: [192.168.0.1]:5701 [dev] 

Members [1] {
    Member [192.168.0.1]:5701 this
}

Dec 10, 2013 11:31:24 PM com.hazelcast.core.LifecycleService
INFO: [192.168.0.1]:5701 [dev] Address[192.168.0.1]:5701 is STARTED

J'appelle ensuite Java -cp hazelcast-3.1.2.jar com.hazelcast.examples.TestApp Sur 192.168.0.2 et j'obtiens la sortie

...Dec 10, 2013 9:50:22 PM com.hazelcast.instance.DefaultAddressPicker
INFO: Prefer IPv4 stack is true.
Dec 10, 2013 9:50:22 PM com.hazelcast.instance.DefaultAddressPicker
INFO: Picked Address[192.168.0.2]:5701, using socket ServerSocket[addr=/0:0:0:0:0:0:0:0,localport=5701], bind any local is true
Dec 10, 2013 9:50:23 PM com.hazelcast.system
INFO: [192.168.0.2]:5701 [dev] Hazelcast Community Edition 3.1.2 (20131120) starting at Address[192.168.0.2]:5701
Dec 10, 2013 9:50:23 PM com.hazelcast.system
INFO: [192.168.0.2]:5701 [dev] Copyright (C) 2008-2013 Hazelcast.com
Dec 10, 2013 9:50:23 PM com.hazelcast.instance.Node
INFO: [192.168.0.2]:5701 [dev] Creating MulticastJoiner
Dec 10, 2013 9:50:23 PM com.hazelcast.core.LifecycleService
INFO: [192.168.0.2]:5701 [dev] Address[192.168.0.2]:5701 is STARTING
Dec 10, 2013 9:50:23 PM com.hazelcast.nio.SocketConnector
INFO: [192.168.0.2]:5701 [dev] Connecting to /192.168.0.1:5701, timeout: 0, bind-any: true
Dec 10, 2013 9:50:23 PM com.hazelcast.nio.TcpIpConnectionManager
INFO: [192.168.0.2]:5701 [dev] 38476 accepted socket connection from /192.168.0.1:5701
Dec 10, 2013 9:50:28 PM com.hazelcast.cluster.ClusterService
INFO: [192.168.0.2]:5701 [dev] 

Members [2] {
    Member [192.168.0.1]:5701
    Member [192.168.0.2]:5701 this
}

Dec 10, 2013 9:50:30 PM com.hazelcast.core.LifecycleService
INFO: [192.168.0.2]:5701 [dev] Address[192.168.0.2]:5701 is STARTED

La découverte de multidiffusion fonctionne généralement sur mon cluster, non? Le 5701 est-il également le port de découverte? 38476 Dans la dernière sortie est-il un ID ou un port?

Rejoindre ne fonctionne toujours pas pour mon propre code avec une configuration programmatique :(


Mise à jour 4, prenant en compte la réponse de pveentjer sur l'utilisation de la configuration par défaut

Le TestApp modifié donne la sortie

joinConfig{multicastConfig=MulticastConfig [enabled=true, multicastGroup=224.2.2.3, 
multicastPort=54327, multicastTimeToLive=32, multicastTimeoutSeconds=2, 
trustedInterfaces=[]], tcpIpConfig=TcpIpConfig [enabled=false, 
connectionTimeoutSeconds=5, members=[], requiredMember=null], 
awsConfig=AwsConfig{enabled=false, region='us-east-1', securityGroupName='null', 
tagKey='null', tagValue='null', hostHeader='ec2.amazonaws.com', connectionTimeoutSeconds=5}}

et détecte les autres membres après quelques secondes (après chaque instance ne se liste une fois que comme membre si tous sont démarrés en même temps), alors que

myProgram donne la sortie

joined via JoinConfig{multicastConfig=MulticastConfig [enabled=true, multicastGroup=224.2.2.3, multicastPort=54327, multica\
stTimeToLive=32, multicastTimeoutSeconds=2, trustedInterfaces=[]], tcpIpConfig=TcpIpConfig [enabled=false, connectionTimeoutSecond\
s=5, members=[], requiredMember=null], awsConfig=AwsConfig{enabled=false, region='us-east-1', securityGroupName='null', tagKey='nu\
ll', tagValue='null', hostHeader='ec2.amazonaws.com', connectionTimeoutSeconds=5}} with 1 members.

et ne détecte pas les membres dans son temps d'exécution d'environ 1 minute (je compte les membres toutes les 5 secondes environ).

MAIS si au moins une instance de TestApp s'exécute simultanément sur le cluster, toutes les instances de TestApp et toutes les instances de myProgram sont détectées et mon programme fonctionne correctement. Dans le cas où je démarre TestApp une fois puis myProgram deux fois en parallèle, TestApp donne la sortie suivante:

Java -cp ~/CaseStudy/jtorx-1.10.0-beta8/lib/hazelcast-3.1.2.jar:. TestApp
Dec 12, 2013 12:02:15 PM com.hazelcast.instance.DefaultAddressPicker
INFO: Prefer IPv4 stack is true.
Dec 12, 2013 12:02:15 PM com.hazelcast.instance.DefaultAddressPicker
INFO: Picked Address[192.168.180.240]:5701, using socket ServerSocket[addr=/0:0:0:0:0:0:0:0,localport=5701], bind any local is true
Dec 12, 2013 12:02:15 PM com.hazelcast.system
INFO: [192.168.180.240]:5701 [dev] Hazelcast Community Edition 3.1.2 (20131120) starting at Address[192.168.180.240]:5701
Dec 12, 2013 12:02:15 PM com.hazelcast.system
INFO: [192.168.180.240]:5701 [dev] Copyright (C) 2008-2013 Hazelcast.com
Dec 12, 2013 12:02:15 PM com.hazelcast.instance.Node
INFO: [192.168.180.240]:5701 [dev] Creating MulticastJoiner
Dec 12, 2013 12:02:15 PM com.hazelcast.core.LifecycleService
INFO: [192.168.180.240]:5701 [dev] Address[192.168.180.240]:5701 is STARTING
Dec 12, 2013 12:02:21 PM com.hazelcast.cluster.MulticastJoiner
INFO: [192.168.180.240]:5701 [dev] 


Members [1] {
    Member [192.168.180.240]:5701 this
}

Dec 12, 2013 12:02:22 PM com.hazelcast.core.LifecycleService
INFO: [192.168.180.240]:5701 [dev] Address[192.168.180.240]:5701 is STARTED
Dec 12, 2013 12:02:22 PM com.hazelcast.management.ManagementCenterService
INFO: [192.168.180.240]:5701 [dev] Hazelcast will connect to Management Center on address: http://localhost:8080/mancenter-3.1.2/
Join: JoinConfig{multicastConfig=MulticastConfig [enabled=true, multicastGroup=224.2.2.3, multicastPort=54327, multicastTimeToLive=32, multicastTimeoutSeconds=2, trustedInterfaces=[]], tcpIpConfig=TcpIpConfig [enabled=false, connectionTimeoutSeconds=5, members=[], requiredMember=null], awsConfig=AwsConfig{enabled=false, region='us-east-1', securityGroupName='null', tagKey='null', tagValue='null', hostHeader='ec2.amazonaws.com', connectionTimeoutSeconds=5}}
Dec 12, 2013 12:02:22 PM com.hazelcast.partition.PartitionService
INFO: [192.168.180.240]:5701 [dev] Initializing cluster partition table first arrangement...
hazelcast[default] > Dec 12, 2013 12:03:27 PM com.hazelcast.nio.SocketAcceptor
INFO: [192.168.180.240]:5701 [dev] Accepting socket connection from /192.168.0.8:38764
Dec 12, 2013 12:03:27 PM com.hazelcast.nio.TcpIpConnectionManager
INFO: [192.168.180.240]:5701 [dev] 5701 accepted socket connection from /192.168.0.8:38764
Dec 12, 2013 12:03:27 PM com.hazelcast.nio.SocketAcceptor
INFO: [192.168.180.240]:5701 [dev] Accepting socket connection from /192.168.0.7:54436
Dec 12, 2013 12:03:27 PM com.hazelcast.nio.TcpIpConnectionManager
INFO: [192.168.180.240]:5701 [dev] 5701 accepted socket connection from /192.168.0.7:54436
Dec 12, 2013 12:03:32 PM com.hazelcast.partition.PartitionService
INFO: [192.168.180.240]:5701 [dev] Re-partitioning cluster data... Migration queue size: 181
Dec 12, 2013 12:03:32 PM com.hazelcast.cluster.ClusterService
INFO: [192.168.180.240]:5701 [dev] 

Members [3] {
    Member [192.168.180.240]:5701 this
    Member [192.168.0.8]:5701
    Member [192.168.0.7]:5701
}

Dec 12, 2013 12:03:43 PM com.hazelcast.partition.PartitionService
INFO: [192.168.180.240]:5701 [dev] Re-partitioning cluster data... Migration queue size: 181
Dec 12, 2013 12:03:45 PM com.hazelcast.partition.PartitionService
INFO: [192.168.180.240]:5701 [dev] All migration tasks has been completed, queues are empty.
Dec 12, 2013 12:03:46 PM com.hazelcast.nio.TcpIpConnection
INFO: [192.168.180.240]:5701 [dev] Connection [Address[192.168.0.8]:5701] lost. Reason: Socket explicitly closed
Dec 12, 2013 12:03:46 PM com.hazelcast.cluster.ClusterService
INFO: [192.168.180.240]:5701 [dev] Removing Member [192.168.0.8]:5701
Dec 12, 2013 12:03:46 PM com.hazelcast.cluster.ClusterService
INFO: [192.168.180.240]:5701 [dev] 

Members [2] {
    Member [192.168.180.240]:5701 this
    Member [192.168.0.7]:5701
}

Dec 12, 2013 12:03:48 PM com.hazelcast.partition.PartitionService
INFO: [192.168.180.240]:5701 [dev] Partition balance is ok, no need to re-partition cluster data... 
Dec 12, 2013 12:03:48 PM com.hazelcast.nio.TcpIpConnection
INFO: [192.168.180.240]:5701 [dev] Connection [Address[192.168.0.7]:5701] lost. Reason: Socket explicitly closed
Dec 12, 2013 12:03:48 PM com.hazelcast.cluster.ClusterService
INFO: [192.168.180.240]:5701 [dev] Removing Member [192.168.0.7]:5701
Dec 12, 2013 12:03:48 PM com.hazelcast.cluster.ClusterService
INFO: [192.168.180.240]:5701 [dev] 

Members [1] {
    Member [192.168.180.240]:5701 this
}

Dec 12, 2013 12:03:48 PM com.hazelcast.partition.PartitionService
INFO: [192.168.180.240]:5701 [dev] Partition balance is ok, no need to re-partition cluster data... 

La seule différence que je vois dans la configuration de TestApp est

config.getManagementCenterConfig().setEnabled(true);
    config.getManagementCenterConfig().setUrl("http://localhost:8080/mancenter-"+version);

    for(int k=1;k<= LOAD_EXECUTORS_COUNT;k++){
        config.addExecutorConfig(new ExecutorConfig("e"+k).setPoolSize(k));
    }

donc je l'ai ajouté dans une tentative désespérée dans mon programme aussi. Mais cela ne résout pas le problème - chaque instance ne se détecte toujours que comme membre pendant toute la durée de l'exécution.


Mise à jour sur la durée d'exécution de myProgram

Se pourrait-il que le programme ne fonctionne pas assez longtemps (comme le dit pveentjer)?

Mes expériences semblent le confirmer: si le temps t entre Hazelcast.newHazelcastInstance(cfg); et initialise cleanUp() (ie plus communiquer via Hazelcast et ne plus vérifier le nombre de membres) est

  • moins de 30 secondes, aucune communication et members: 1
  • plus de 30 secondes: tous les membres sont trouvés et la communication se produit (ce qui semble étrangement se produire bien plus longtemps que t - 30 secondes).

Est-ce que 30 secondes sont un intervalle de temps réaliste dont un cluster noisette a besoin, ou y a-t-il quelque chose d'étrange? Voici un journal de 4 myPrograms exécutés simultanément (la recherche de membres Hazelcast se chevauche 30 secondes pour l'instance 1 et l'instance 3):

instance 1: 2013-12-19T12:39:16.553+0100 LOG 0 (START) engine started 
looking for members between 2013-12-19T12:39:21.973+0100 and 2013-12-19T12:40:27.863+0100  
2013-12-19T12:40:28.205+0100 LOG 35 (Torx-Explorer) Model  SymToSim is about to\  exit

instance 2: 2013-12-19T12:39:16.592+0100 LOG 0 (START) engine started 
looking for members between 2013-12-19T12:39:22.192+0100 and 2013-12-19T12:39:28.429+0100 
2013-12-19T12:39:28.711+0100 LOG 52 (Torx-Explorer) Model  SymToSim is about to\  exit

instance 3: 2013-12-19T12:39:16.593+0100 LOG 0 (START) engine started 
looking for members between 2013-12-19T12:39:22.145+0100 and 2013-12-19T12:39:52.425+0100  
2013-12-19T12:39:52.639+0100 LOG 54 (Torx-Explorer) Model  SymToSim is about to\  exit

INSTANCE 4: 2013-12-19T12:39:16.885+0100 LOG 0 (START) engine started 
looking for members between 2013-12-19T12:39:21.478+0100 and 2013-12-19T12:39:35.980+0100  
2013-12-19T12:39:36.024+0100 LOG 34 (Torx-Explorer) Model  SymToSim is about to\  exit

Comment démarrer au mieux mon algorithme distribué réel uniquement lorsque suffisamment de membres sont présents dans le cluster Hazelcast? Puis-je définir hazelcast.initial.min.cluster.size Par programme? https://groups.google.com/forum/#!topic/hazelcast/sa-lmpEDa6A semble que cela bloquerait Hazelcast.newHazelcastInstance(cfg); jusqu'à ce que la taille initiale.min.cluster.size soit atteint. Correct? Dans quelle mesure (dans quel délai) les différentes instances seront-elles débloquées?

21
DaveFar

Apparemment, le problème est que le cluster démarre (et s'arrête) et n'attend pas que suffisamment de membres se trouvent dans le cluster. Vous pouvez définir la propriété hazelcast.initial.min.cluster.size pour éviter que cela ne se produise.

Vous pouvez définir "hazelcast.initial.min.cluster.size" par programme en utilisant:

Config config = new Config(); 
config.setProperty("hazelcast.initial.min.cluster.size","3");
15
pveentjer

Votre configuration est correcte MAIS vous avez défini un délai d'expiration multicast très long de 200 secondes, où la valeur par défaut est 2 secondes. définir une valeur plus petite le résoudra.

De Hazelcast Java API Doc: MulticastConfig.html # setMulticastTimeoutSeconds (int)

Spécifie le temps en secondes pendant lequel un nœud doit attendre une réponse de multidiffusion valide d'un autre nœud exécuté sur le réseau avant de se déclarer comme nœud maître et de créer son propre cluster. Cela ne s'applique qu'au démarrage des nœuds où aucun maître n'a encore été attribué. Si vous spécifiez une valeur élevée, par exemple 60 secondes, cela signifie que jusqu'à ce qu'un maître soit sélectionné, chaque nœud va attendre 60 secondes avant de continuer, alors soyez prudent en fournissant une valeur élevée . Si la valeur est définie trop bas, il se peut que les nœuds abandonnent trop tôt et créent leur propre cluster.

6
asimarslan

Il semble que vous utilisiez le clustering TCP/IP, donc c'est bien. Essayez ce qui suit (extrait du livre Hazelcast)

Si vous utilisez iptables, la règle suivante peut être ajoutée pour autoriser le trafic sortant des ports 33000-31000:

iptables -A OUTPUT -p TCP --dport 33000:31000 -m state --state NEW -j ACCEPT

et pour contrôler le trafic entrant depuis n'importe quelle adresse vers le port 5701:

iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5701 -j ACCEPT

et pour autoriser le trafic multicast entrant:

iptables -A INPUT -m pkttype --pkt-type multicast -j ACCEPT

Test de connectivité Si vous rencontrez des problèmes parce que les machines ne rejoignent pas un cluster, vous pouvez vérifier la connectivité réseau entre les 2 machines. Vous pouvez utiliser un outil appelé iperf pour cela. Sur une machine, vous exécutez: iperf -s -p 5701 Cela signifie que vous écoutez sur le port 5701.

Sur l'autre machine, vous exécutez la commande suivante:

iperf -c 192.168.1.107 -d -p 5701

Où vous remplacez "192.168.1.107" par l'adresse IP de votre première machine. Si vous exécutez la commande et que vous obtenez une sortie comme celle-ci:

------------------------------------------------------------
Server listening on TCP port 5701
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
------------------------------------------------------------
Client connecting to 192.168.1.107, TCP port 5701
TCP window size: 59.4 KByte (default)
------------------------------------------------------------
[  5] local 192.168.1.105 port 40524 connected with 192.168.1.107 port 5701
[  4] local 192.168.1.105 port 5701 connected with 192.168.1.107 port 33641
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.2 sec  55.8 MBytes  45.7 Mbits/sec
[  5]  0.0-10.3 sec  6.25 MBytes  5.07 Mbits/sec

Vous savez que les 2 machines peuvent se connecter. Cependant, si vous voyez quelque chose comme ça:

Server listening on TCP port 5701
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
connect failed: No route to Host

Vous savez alors que vous pourriez avoir un problème de connexion réseau entre les mains.

4
pveentjer

Il semble que Hazelcast utilise l'adresse de multidiffusion 224.2.2.3 sur le port UDP 54327 (par défaut) pour la découverte, puis le port 5701 pour la communication TCP. L'ouverture du port UDP 54327 dans le pare-feu a corrigé la découverte pour moi. (J'avais également ouvert TCP port 5701 mais ce n'était pas suffisant.)

3
Ted Goddard

Pouvez-vous essayer avec le cluster tcp/ip d'abord pour vous assurer que tout le reste va bien? Une fois que vous avez confirmé qu'il n'y a pas de problème, essayez la multidiffusion. Il pourrait également s'agir d'un problème de pare-feu entre autres.

2
pveentjer

Pouvez-vous essayer de créer votre instance Hazelcast comme ceci:

Config cfg = new Config();                  
HazelcastInstance hz = Hazelcast.newHazelcastInstance(cfg);

Le truc du centre de gestion et la création des exécuteurs ne sont pas pertinents (j'ai ajouté ce code dans le testapp, donc j'en suis sûr à 100%).

Ensuite, vous devriez avoir exactement la même configuration réseau que TestApp.

2
pveentjer

Il semble donc que la multidiffusion fonctionne sur votre réseau; ce qui est bon.

Pourriez-vous l'essayer avec les paramètres suivants:

Config cfg = new Config();                  
NetworkConfig network = cfg.getNetworkConfig();

JoinConfig join = network.getJoin();
join.getTcpIpConfig().setEnabled(false);
join.getAwsConfig().setEnabled(false);
join.getMulticastConfig().setEnabled(true);

HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);

Comme vous pouvez le voir, j'ai supprimé toute la personnalisation.

2
pveentjer