3.2.8. Alterações de Clustering


3.2.8.1. Realize Alterações ao seu Aplicativo para o Clustering

Procedimento 3.23. 

  1. Inicie o JBoss EAP 6 com o clustering habilitado

    Para habilitar o clustering no JBoss EAP 5.x, você precisava iniciar suas instâncias do servidor usando o perfil all ou alguma derivação do mesmo, como por exemplo:
    $ EAP5_HOME/bin/run.sh -c all
    No JBoss EAP 6, o método para a habilitação do clustering depende dos servidores serem autônomos ou serem executados num managed domain.
    1. Habilitação do cluster para servidores executando num managed domain

      Para habilitar o clustering para servidores iniciados usando o domain controller, atualize o seu domain.xml e determine um grupo de servidor para uso do seu perfil ha e grupo binding de soquete ha-sockets. Por exemplo:
      <server-groups>
        <server-group name="main-server-group" profile="ha">
          <jvm name="default">
            <heap size="64m" max-size="512m"/>
          </jvm>
          <socket-binding-group ref="ha-sockets"/>
        </server-group>
      </server-group>
      
      Copy to Clipboard Toggle word wrap
    2. Habilitação do cluster para servidores autônomos

      Para habilitar o clustering para os servidores autônomos, inicie o servidor usando o arquivo de configuração apropriado conforme o seguinte: $ EAP_HOME/bin/standalone.sh --server-config=standalone-ha.xml -Djboss.node.name=UNIQUE_NODE_NAME
  2. Especificação do endereço bind

    No JBoss EAP 5.x, você indicaria normalmente o endereço bind, usado para o clustering, usando o argumento da linha de comando -b conforme o seguinte: $ EAP_HOME/bin/run.sh -c all -b 192.168.0.2
    No JBoss EAP 6, os endereços bind são claramente definidos pelos socket bindings relevantes com os arquivos da configuração do JBoss EAP 6. Para os servidores iniciados usando o domain controller, os endereços bind são especificados com o arquivo domain/configuration/host.xml. Para os servidores autônomos, os endereços bind são especificados com o arquivo standalone-ha.xml:
    <interfaces>
      <interface name="management">
        <inet-address value="192.168.0.2"/>
          </interface>
          <interface name="public">
        <inet-address value="192.168.0.2"/>
      </interface>
    </interfaces>
    
    Copy to Clipboard Toggle word wrap
    <socket-binding-groups>
      <socket-binding-group name="ha-sockets" default-interface="public">
        <!-- ... -->
      </socket-binding-group>
    </socket-binding-groups>
    
    Copy to Clipboard Toggle word wrap
    A interface public é especificada na amostra acima como interface default para todos os sockets com o grupo socket binding ha-sockets.
  3. Configure o jvmRoute para suportar o mod_jk e mod_proxy

    No JBoss EAP 5, o servidor da web jvmRoute foi configurado usando a propriedade no arquivo server.xml. No JBoss EAP 6, o atributo jvmRoute é configurado no subsistema da web do arquivo de combinação do servidor usando o atributo instance-id conforme o seguinte:
    <subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false" instance-id="{JVM_ROUTE_SERVER}">
    
    
    Copy to Clipboard Toggle word wrap
    O {JVM_ROUTE_SERVER} acima deve ser substituído pela ID do servidor jvmRoute.
    O instance-id pode ser determinado usando o Management Console.
  4. Especificação do endereço multicast e porta

    No JBoss EAP 5.x, você pode especificar o endereço multicast e a porta usada para a comunicação infra-cluster usando os argumentos da linha de comando -u e -m, respectivamente, como por exemplo: $ EAP_HOME/bin/run.sh -c all -u 228.11.11.11 -m 45688
    No JBoss EAP 6, o endereço e porta multicast usados para a comunicação do cluster são definidos pelo socket-binding referenciado pela pilha do protocolo JGroups relevante, conforme abaixo:
    <subsystem xmlns="urn:jboss:domain:jgroups:1.0" default-stack="udp">
        <stack name="udp">
            <transport type="UDP" socket-binding="jgroups-udp"/>
            <!-- ... -->
        </stack>
    </subsystem>
    
    Copy to Clipboard Toggle word wrap
    <socket-binding-groups>
        <socket-binding-group name="ha-sockets" default-interface="public">
            <!-- ... -->
            <socket-binding name="jgroups-udp" port="55200" multicast-address="228.11.11.11" multicast-port="45688"/>
            <!-- ... -->
        </socket-binding-group>
    </socket-binding-groups>
    
    
    Copy to Clipboard Toggle word wrap
    Caso você preferir especificar o endereço multicast e a porta na linha de comando, você pode definir o endereço multicast e as portas como propriedades de sistema e usá-las na linha de comando quando você iniciar o servidor. A seguinte amostra, jboss.mcast.addr é o nome da variável para o endereço multicast e o jboss.mcast.port é o nome da variável para a porta.
    <socket-binding name="jgroups-udp" port="55200"
     multicast-address="${jboss.mcast.addr:230.0.0.4}" multicast-port="${jboss.mcast.port:45688}"/>
    
    
    Copy to Clipboard Toggle word wrap
    Você pode iniciar o seu servidor usando os argumentos da linha de comando: $ EAP_HOME/bin/domain.sh -Djboss.mcast.addr=228.11.11.11 -Djboss.mcast.port=45688
  5. Uso da pilha de protocolo alternativo

    No JBoss EAP 5.x, você pode manipular a pilha de protocolo default para todos os serviços de clustering usando a propriedade de sistema jboss.default.jgroups.stack. $ EAP_HOME/bin/run.sh -c all -Djboss.default.jgroups.stack=tcp
    No JBoss EAP 6, a pilha do protocolo default é definida pelo subsistema JGroups com o domain.xml ou standalone-ha.xml:
    <subsystem xmlns="urn:jboss:domain:jgroups:1.0" default-stack="udp">
        <stack name="udp">
            <!-- ... -->
        </stack>
    </subsystem>
    
    Copy to Clipboard Toggle word wrap
  6. Substituição da Replicação Buddy

    O JBoss EAP 5.x usou o JBoss Cache Buddy Replication para suprimir a replicação dos dados para todas as instâncias num cluster. É solicitado que você passe o argumento -Djboss.cluster.buddyRepl na linha de comando quando você inicia o servidor do JBoss.
    No JBoss EAP 6, a Replicação Buddy foi substituída pelo cache distribuído bastante superior do Infinispan ou modo DIST. A distribuição é um modo do clustering potente que permite o Infinispan a escalar de forma linear à medida que mais servidores são adicionados ao cluster. Segue abaixo uma amostra de como configurar o servidor para uso do modo de cache DIST.
    1. Abra a linha de comando e inicie o servidor com tanto o Perfil Completo ou HA. Por exemplo:
      EAP_HOME/bin/standalone.sh -c standalone-ha.xml
      Copy to Clipboard Toggle word wrap
    2. Abra outra linha de comando e conecte-se ao Management CLI.
      • Insira a seguinte linha de comando para o Linux:
        $ EAP_HOME/bin/jboss-cli.sh --connect
        
        Copy to Clipboard Toggle word wrap
      • Insira a seguinte linha de comando para o Windows:
        C:\>EAP_HOME\bin\jboss-cli.bat --connect
        
        Copy to Clipboard Toggle word wrap
      Você deve ver a seguinte resposta:
      Conectado ao controlador autônomo no localhost:9999
      Copy to Clipboard Toggle word wrap
    3. Imprima os seguintes comandos:
      /subsystem=infinispan/cache-container=web/:write-attribute(name=default-cache,value=dist)
      /subsystem=infinispan/cache-container=web/distributed-cache=dist/:write-attribute(name=owners,value=3)
      :reload
      
      Copy to Clipboard Toggle word wrap
      Você deverá ver a seguinte resposta após cada comando:
      "outcome" => "success"
      
      Copy to Clipboard Toggle word wrap
      Esses comandos criam a seguinte configuração no subsistema infinispan do arquivo standalone-ha.xml:
      <cache-container name="web" aliases="standard-session-cache" default-cache="dist" module="org.jboss.as.clustering.web.infinispan">
          <transport lock-timeout="60000"/>
          <replicated-cache name="repl" mode="ASYNC" batching="true">
              <file-store/>
          </replicated-cache>
          <replicated-cache name="sso" mode="SYNC" batching="true"/>
          <distributed-cache name="dist" owners="3" l1-lifespan="0" mode="ASYNC" batching="true">
              <file-store/>
          </distributed-cache>
      </cache-container>
      
      
      Copy to Clipboard Toggle word wrap
      Refira-se ao capítulo Clustering nos Aplicativos da Web no Guia de Desenvolvimento do JBoss EAP 6 localizado no Portal do Cliente https://access.redhat.com/site/documentation/JBoss_Enterprise_Application_Platform/ para maiores informações sobre este respeito.
Voltar ao topo
Red Hat logoGithubredditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar. Explore nossas atualizações recentes.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja o Blog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

Theme

© 2026 Red Hat