Pular para o conteúdo principal
Version: 3.22

Gerenciando o Cluster

O processo completo de configuração de um cluster e checagem de status pode ser realizada com o comando cluster. Em adição ao processo, utilizaremos o comando application para iniciar instâncias e definir uma instância primária.

mt4adm@vmdf-giskard:~$ sudo orbit cluster --help
Usage: orbit cluster <command>

High Availability and Disaster Recovery settings tools

Arguments:
<command> Control the application services status: [start|stop|restart|config|status]

Flags:
--help Show context-sensitive help.
--ip=STRING The local node IP
-n, --nodes=NODES,... Cluster nodes list
-s, --segment=0 Define which network segment this node is in
-l, --latency="low" Latency between nodes: [low|medium|high]
--force Force the command execution, never prompt
--show

Criando o cluster

Para criar o cluster é necessário ao menos duas instâncias. Como exemplo, chamaremos as instâncias como "A" e "B". Siga se seguinte ordem para montar o cluster.

  • Ative a instância A tanto em licença de ativação quanto ativação da aplicação;

  • Inicie a aplicação na instância A com o comand orbit application start;

  • O argumento –ip deve ser usado com o IP da instância que o comando está sendo executado

  • Configure o cluster na instância A preenchendo o parâmetro –ip com o IP da instância A e o parâmetro –nodes com os IPs da instância A e B respectivamente;

  • Determine a instância A como primária através do comando orbit application master

  • Inicie o cluster na instância A com o comando orbit cluster start e aguarde ao menos 1 minuto para normalização;

  • Ative a instância B com a licença de ativação e mantenha a aplicação inativa;

  • Configure o cluster na instância B preenchendo o parâmetro –ip com o IP da instância B e o parâmetro –nodes com os IPs da instância A e B respectivamente;

  • Inicie o cluster na instância B com o comando orbit cluster start e aguarde ao menos 1 minuto para normalização;

Instância A
mt4adm@vmdf-giskard:~$ sudo orbit application master
The application services will be stopped or restarted during the process.
Are you sure you want to proceed: y

Application: Active
Replication: Inactive
Instance: Primary
mt4adm@vmdf-giskard:~$ sudo orbit cluster config  
--ip=172.18.77.184
--nodes=172.18.77.184,172.18.77.186
--segment=0
--latency="low"

Are you sure you want to proceed: y
Done!
No errors reported
mt4adm@vmdf-giskard:~$ sudo orbit cluster start --ip=172.18.77.184
Are you sure you want to proceed: y
Done!
No errors reported
Instância B
mt4adm@vmdf-giskard:~$ sudo orbit cluster config  
--ip=172.18.77.186
--nodes=172.18.77.184,172.18.77.186
--segment=1
--latency="low"

Are you sure you want to proceed: y
Done!
No errors reported
mt4adm@vmdf-giskard:~$ sudo orbit cluster start --ip=172.18.77.186
Are you sure you want to proceed: y
Done!
No errors reported
caution

Para o correto funcionamento do cluster, é importante que a latência de rede entre os nós seja de no máximo 30ms.

Status do cluster

Através do comando orbit cluster status você pode observar diversas propriedades do cluster. Como são muitas informações, não listaremos no manual todos os detalhes. Mas vamos apresentar a informação essencial para entender se o cluster está ativo e sem problemas.

Preste atenção no bloco final do status, chamado "Cluster nodes". Neste bloco você verá quem são os membros do cluster e o timestamp de sincronização entre eles. Há também o status da instância atual que deve estar marcada como "synced".

mt4adm@vmdf-giskard:~$ sudo orbit cluster status

...

============================================================

Cluster nodes

Cluster member: ID [0] - UUID [64661644-b0df-11ea-80b2-8ee23c1303c0] -
Hostname [vmdf-giskard-3232290344] - Timestamp [1592428528]
Cluster member: ID [1] - UUID [9dff00d8-b0df-11ea-86c4-83725d654e03] -
Hostname [vmdf-giskard-3232290348] - Timestamp [1592428528]

Cluster UUID: 64679b9f-b0df-11ea-a6e5-67ba900fecc0

vmdf-giskard details: status=synced
vmdf-giskard is primary node ?: 1

============================================================