Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

17.5.4. Passez d'UDP à TCP dans HornetQ Clustering

L'exemple suivant utilise le fichier standalone-full-ha.xml par défaut fourni dans EAP 6.

Note

Si la sécurité est activée, vous devrez définir l'attribut cluster-password :
<cluster-password>${jboss.messaging.cluster.password:ChangeMe>}</cluster-password>
  1. Supprimer les broadcast-groups et les discovery-groups :

    <broadcast-groups>
        <broadcast-group name="bg-group1">
            <socket-binding>messaging-group</socket-binding>
            <broadcast-period>5000</broadcast-period>
            <connector-ref>netty</connector-ref>
        </broadcast-group>
    </broadcast-groups>
    <discovery-groups>
        <discovery-group name="dg-group1">
            <socket-binding>messaging-group</socket-binding>
            <refresh-timeout>10000</refresh-timeout>
        </discovery-group>
    </discovery-groups
    
  2. En option, supprimer la liaison de socket de "messaging-group" :

    <socket-binding name="messaging-group" port="0" multicast-address="${jboss.messaging.group.address:231.7.7.7}" multicast-port="${jboss.messaging.group.port:9876}"/>
  3. Configurer les connecteur(s) Netty qui conviennent - un pour chacun des autres noeuds du cluster.

    Ainsi, si le cluster a 3 noeuds, alors configurez 2 connecteurs Netty, etc. Si le cluster a 2 noeuds, alors configurez 1 connecteur Netty, etc. Voici un exemple de configuration d'un cluster 3-noeuds :
    <netty-connector name="other-cluster-node1" socket-binding="other-cluster-node1"/>
    <netty-connector name="other-cluster-node2" socket-binding="other-cluster-node2"/>
  4. Configurer les liaisons de sockets correspondantes.

    Note

    La substitution de propriété système peut être utilisée soit pour "hôte", soit pour "port" selon les besoins.
    <outbound-socket-binding name="other-cluster-node1">
        <remote-destination host="otherNodeHostName1" port="5445"/>
    </outbound-socket-binding>
    <outbound-socket-binding name="other-cluster-node2">
        <remote-destination host="otherNodeHostName2" port="5445"/>
    </outbound-socket-binding>
  5. Configurer la connexion au cluster pour qu'elle utilise ces connecteurs à la place du discovery-group utilisé par défaut :

    <cluster-connection name="my-cluster">
        <address>jms</address>
        <connector-ref>netty</connector-ref>
        <static-connectors>
            <connector-ref>other-cluster-node1</connector-ref>
            <connector-ref>other-cluster-node2</connector-ref>
        </static-connectors>
    </cluster-connection>
    Ce processus devra être répété sur chaque noeud du groupement pour que chaque noeud ait des connecteurs sur chaque noeud du cluster.

    Note

    Ne pas configurer un noeud avec une connexion sur lui-même. Cela est considéré comme une erreur de configuration.