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 executadoConfigure 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
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
============================================================