Treinamento HornetQ
Agenda
• Cluster
– Overview
– Descoberta de Servidor
– Grupo de Broadcast
– Grupo de Discovery
– Configuração do Cluster
– Credenciais
Cluster
• Overview
– O HornetQ permite grupos de servidores para
suportar a carga de mensagens.
– Cada nó que compõem o cluster é servidor ativo que
gerencia suas próprias mensagens e conexões.
– Quando um nó torna-se parte de um cluster,
internamente é criado um Core Brindge, a
comunicação entre os nós é feita de forma
transparente.
Cluster
• Descoberta de Servidor
– É o mecanismo na qual o servidor distribui suas
configurações de conexão através da rede.
– Principais objetivos:
• Descoberta por clientes de mensagens
– Os clientes precisam se conectar a um servidor no
cluster sem ter que conhecer sua localização exata.

• Descoberta por outros servidores
– Servidores em um cluster precisam ser capazes de criar
conexões com outros servidores sem saber sua
localização exata.
Cluster
• Descoberta de Servidor
– O HornetQ utiliza o protocolo UDP para espalhar suas
configurações sobre a rede.

É necessário que o UDP esteja habilitado na rede para utilizar esse recurso. Do contrário é
necessário especificar manualmente cada nó participante.
Cluster
• Grupo de Broadcast
– É a maneira a qual o servidor utiliza para espalhar
suas configurações na rede.
Cluster
• Grupo de Broadcast
– Parâmetros.
• name – Nome do grupo e deve ser único
• local-bind-address – Se o servidor possuir múltiplas
interfaces de rede, uma delas deve ser especificada aqui.
• local-bind-address - Deve ser especifica junto com o
parametro anterior. Ela define a porta em que os datagramas
do socket serão recebidos.
• group-address – Endereço de multicast para onde os dados
serão disparados. Consiste de um endereço IP de classe D no
range de 224.0.0.0 a 239.255.255.255. O endereço 224.0.0.0
é reservado.
• group-port – Porta UDP utilizada para broadcast. Parâmetro
obrigatório.
Cluster
• Grupo de Broadcast
– Parâmetros (continuação)
• broadcast-period – Tempo em milissegundos para disparo
das informações na rede.
• connector-ref – Especifica o connector um backup connector
que será difundido (espalhado na rede).
Cluster
• Grupo de Discovery
– O grupo de broadcast define como as informações dos
connectors serão espalhados pela rede, já o grupo de
Discovery define como as informações dos connectors
serão recebidas de um endereço de multicast.
– O grupo de Discovery mantem um lista connectorspairs. Como ele recebe broadcast de um endereço
multicast de um servidor em particular ele atualiza
sua lista de servidores.
– Ao não receber broadcast de um servidor em
particular por um determinado período ele será
removido da lista.
Cluster
• Grupo de Discovery
– Os grupos de Discovery são utilizados em dois locais
no HornetQ.
• Conexões ao Cluster
– O HornetQ precisa saber quais servidores no cluster ele
deve fazer conexões.

• Clientes de Mensagens
– Os cliente precisam saber quais servidores no
cluster ele pode conectar-se.
Cluster
• Grupo de Discovery
– Conexões ao Cluster
Cluster
• Grupo de Discovery
– Conexões ao Cluster
• Parâmetros
– name – Nome do grupo e deve ser único
– local-bind-address – Se o servidor possuir múltiplas
interfaces de rede, uma delas deve ser especificada aqui.
– group-address – Endereço de multicast para onde o
grupo está ouvindo.
– group-port – Porta UDP utilizada para broadcast. Deve
coincidir com o definido no grupo de Broadcast.
– refresh-timeout – Tempo de espera de broadcast de um
servidor especifico antes de removê-lo da lista .
Cluster
• Grupo de Discovery
– Clientes de Mensagem
Cluster
• Grupo de Discovery
– Clientes de Mensagem
• Parâmetros
– discovery-group-ref – Especifica o nome do grupo de
discovery definido no arquivo hornetq-configuration.xml.

Cliente JNDI fazem download das informações de conexão.
Cluster
• Configuração do Cluster
– Com os grupos de servidores conversando entre se
através de multicast, agora é necessário definir o
cluster entre os nós.
Cluster
• Configuração do Cluster
– Outros parâmetros
• <clustered> - Se true indica que o servidor está em
cluster.
• <cluster-user> - Usuário para acesso ao cluster.
• <cluster-password> - Senha para acesso ao cluster.

HornetQ - 14.Cluster

  • 1.
  • 2.
    Agenda • Cluster – Overview –Descoberta de Servidor – Grupo de Broadcast – Grupo de Discovery – Configuração do Cluster – Credenciais
  • 3.
    Cluster • Overview – OHornetQ permite grupos de servidores para suportar a carga de mensagens. – Cada nó que compõem o cluster é servidor ativo que gerencia suas próprias mensagens e conexões. – Quando um nó torna-se parte de um cluster, internamente é criado um Core Brindge, a comunicação entre os nós é feita de forma transparente.
  • 4.
    Cluster • Descoberta deServidor – É o mecanismo na qual o servidor distribui suas configurações de conexão através da rede. – Principais objetivos: • Descoberta por clientes de mensagens – Os clientes precisam se conectar a um servidor no cluster sem ter que conhecer sua localização exata. • Descoberta por outros servidores – Servidores em um cluster precisam ser capazes de criar conexões com outros servidores sem saber sua localização exata.
  • 5.
    Cluster • Descoberta deServidor – O HornetQ utiliza o protocolo UDP para espalhar suas configurações sobre a rede. É necessário que o UDP esteja habilitado na rede para utilizar esse recurso. Do contrário é necessário especificar manualmente cada nó participante.
  • 6.
    Cluster • Grupo deBroadcast – É a maneira a qual o servidor utiliza para espalhar suas configurações na rede.
  • 7.
    Cluster • Grupo deBroadcast – Parâmetros. • name – Nome do grupo e deve ser único • local-bind-address – Se o servidor possuir múltiplas interfaces de rede, uma delas deve ser especificada aqui. • local-bind-address - Deve ser especifica junto com o parametro anterior. Ela define a porta em que os datagramas do socket serão recebidos. • group-address – Endereço de multicast para onde os dados serão disparados. Consiste de um endereço IP de classe D no range de 224.0.0.0 a 239.255.255.255. O endereço 224.0.0.0 é reservado. • group-port – Porta UDP utilizada para broadcast. Parâmetro obrigatório.
  • 8.
    Cluster • Grupo deBroadcast – Parâmetros (continuação) • broadcast-period – Tempo em milissegundos para disparo das informações na rede. • connector-ref – Especifica o connector um backup connector que será difundido (espalhado na rede).
  • 9.
    Cluster • Grupo deDiscovery – O grupo de broadcast define como as informações dos connectors serão espalhados pela rede, já o grupo de Discovery define como as informações dos connectors serão recebidas de um endereço de multicast. – O grupo de Discovery mantem um lista connectorspairs. Como ele recebe broadcast de um endereço multicast de um servidor em particular ele atualiza sua lista de servidores. – Ao não receber broadcast de um servidor em particular por um determinado período ele será removido da lista.
  • 10.
    Cluster • Grupo deDiscovery – Os grupos de Discovery são utilizados em dois locais no HornetQ. • Conexões ao Cluster – O HornetQ precisa saber quais servidores no cluster ele deve fazer conexões. • Clientes de Mensagens – Os cliente precisam saber quais servidores no cluster ele pode conectar-se.
  • 11.
    Cluster • Grupo deDiscovery – Conexões ao Cluster
  • 12.
    Cluster • Grupo deDiscovery – Conexões ao Cluster • Parâmetros – name – Nome do grupo e deve ser único – local-bind-address – Se o servidor possuir múltiplas interfaces de rede, uma delas deve ser especificada aqui. – group-address – Endereço de multicast para onde o grupo está ouvindo. – group-port – Porta UDP utilizada para broadcast. Deve coincidir com o definido no grupo de Broadcast. – refresh-timeout – Tempo de espera de broadcast de um servidor especifico antes de removê-lo da lista .
  • 13.
    Cluster • Grupo deDiscovery – Clientes de Mensagem
  • 14.
    Cluster • Grupo deDiscovery – Clientes de Mensagem • Parâmetros – discovery-group-ref – Especifica o nome do grupo de discovery definido no arquivo hornetq-configuration.xml. Cliente JNDI fazem download das informações de conexão.
  • 15.
    Cluster • Configuração doCluster – Com os grupos de servidores conversando entre se através de multicast, agora é necessário definir o cluster entre os nós.
  • 16.
    Cluster • Configuração doCluster – Outros parâmetros • <clustered> - Se true indica que o servidor está em cluster. • <cluster-user> - Usuário para acesso ao cluster. • <cluster-password> - Senha para acesso ao cluster.