Se você já usou o utilitário de linha de comando ping para verificar a conectividade de rede simples entre hosts, sabe como ele é útil. Bem, agora existe um utilitário como esse para o Couchbase. Ele é apropriadamente chamado de cbping e verificará a conectividade simples de um cluster do Couchbase ou de um cluster XDCR remoto.
O cbping faz testes simples de conectividade com o Couchbase para verificar os seguintes tipos de coisas:
- As portas necessárias para o Couchbase estão abertas?
- Tempo decorrido para que as portas se conectem
- Quais nós estão no cluster? Faça os mesmos testes neles também.
Além disso, ele também pode verificar a conectividade com os clusters de destino do XDCR. Lembre-se de que ele está testando a conectividade de onde quer que o cbping esteja sendo executado, e não de dentro do cluster, ou uma verificação de integridade de dentro do cluster. Trata-se de um simples "posso me conectar a esse destino nessas portas".
Para obter o script a ser usado, clone o repositório githup para cbping.
Aqui está um exemplo de saída de um cluster do Couchbase de três nós:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
$ python cbping.py -H 172.16.40.144 -P 8091 -u Administrador -p <senha> I vontade assumir que você significava agrupamento modo I vontade conectar para: http://172.16.40.144:8091/pools/default e execute alguns testes. Isso agrupamento diz lá são 3 nós em o agrupamento. Aglomerado Nó Nó Status Nó CB versão ------------ ----------- --------------- 172.16.40.142:8091 saudável 4.5.0-2601-empresa 172.16.40.143:8091 saudável 4.5.0-2601-empresa 172.16.40.144:8091 saudável 4.5.0-2601-empresa Nome do host Porto Resultado Expirado Tempo* -------- ---- ------ ------------ 172.16.40.142 8091 SUCESSO 272.0 172.16.40.142 8092 SUCESSO 67.0 172.16.40.142 8093 SUCESSO 90.0 172.16.40.142 8094 [Errno 61] Conexão recusado 87.0 172.16.40.142 9100 [Errno 61] Conexão recusado 82.0 172.16.40.142 9102 [Errno 61] Conexão recusado 82.0 172.16.40.142 9103 [Errno 61] Conexão recusado 110.0 172.16.40.142 9104 [Errno 61] Conexão recusado 81.0 172.16.40.142 9105 [Errno 61] Conexão recusado 88.0 172.16.40.142 9998 [Errno 61] Conexão recusado 93.0 172.16.40.142 9999 SUCESSO 60.0 172.16.40.142 11207 SUCESSO 60.0 172.16.40.142 11209 SUCESSO 61.0 172.16.40.142 11210 SUCESSO 57.0 172.16.40.142 11211 SUCESSO 70.0 172.16.40.142 11214 SUCESSO 101.0 172.16.40.142 11215 [Errno 61] Conexão recusado 82.0 172.16.40.142 18091 SUCESSO 91.0 172.16.40.142 18092 SUCESSO 72.0 172.16.40.142 18093 SUCESSO 97.0 172.16.40.142 4369 SUCESSO 59.0 172.16.40.142 21100 SUCESSO 72.0 *Expirado tempo é em microssegundos. Nome do host Porto Resultado Expirado Tempo* -------- ---- ------ ------------ 172.16.40.143 8091 SUCESSO 224.0 172.16.40.143 8092 SUCESSO 90.0 172.16.40.143 8093 [Errno 61] Conexão recusado 97.0 172.16.40.143 8094 [Errno 61] Conexão recusado 85.0 172.16.40.143 9100 SUCESSO 60.0 172.16.40.143 9102 SUCESSO 62.0 172.16.40.143 9103 [Errno 61] Conexão recusado 85.0 172.16.40.143 9104 [Errno 61] Conexão recusado 89.0 172.16.40.143 9105 SUCESSO 88.0 172.16.40.143 9998 [Errno 61] Conexão recusado 81.0 172.16.40.143 9999 [Errno 61] Conexão recusado 106.0 172.16.40.143 11207 SUCESSO 75.0 172.16.40.143 11209 SUCESSO 70.0 172.16.40.143 11210 SUCESSO 89.0 172.16.40.143 11211 [Errno 61] Conexão recusado 121.0 172.16.40.143 11214 SUCESSO 70.0 172.16.40.143 11215 [Errno 61] Conexão recusado 98.0 172.16.40.143 18091 SUCESSO 91.0 172.16.40.143 18092 SUCESSO 73.0 172.16.40.143 18093 [Errno 61] Conexão recusado 104.0 172.16.40.143 4369 SUCESSO 91.0 172.16.40.143 21100 SUCESSO 81.0 *Expirado tempo é em microssegundos. Nome do host Porto Resultado Expirado Tempo* -------- ---- ------ ------------ 172.16.40.144 8091 SUCESSO 85.0 172.16.40.144 8092 SUCESSO 91.0 172.16.40.144 8093 [Errno 61] Conexão recusado 120.0 172.16.40.144 8094 [Errno 61] Conexão recusado 112.0 172.16.40.144 9100 SUCESSO 93.0 172.16.40.144 9102 SUCESSO 64.0 172.16.40.144 9103 [Errno 61] Conexão recusado 158.0 172.16.40.144 9104 [Errno 61] Conexão recusado 99.0 172.16.40.144 9105 SUCESSO 87.0 172.16.40.144 9998 [Errno 61] Conexão recusado 104.0 172.16.40.144 9999 SUCESSO 71.0 172.16.40.144 11207 SUCESSO 61.0 172.16.40.144 11209 SUCESSO 63.0 172.16.40.144 11210 SUCESSO 84.0 172.16.40.144 11211 SUCESSO 76.0 172.16.40.144 11214 SUCESSO 62.0 172.16.40.144 11215 [Errno 61] Conexão recusado 80.0 172.16.40.144 18091 SUCESSO 92.0 172.16.40.144 18092 SUCESSO 78.0 172.16.40.144 18093 [Errno 61] Conexão recusado 120.0 172.16.40.144 4369 SUCESSO 73.0 172.16.40.144 21100 SUCESSO 64.0 *Expirado tempo é em microssegundos. -------------- Balde Informações -------------- I vontade obter balde informações de: http://172.16.40.144:8091/pools/default/buckets Balde Nome itemCount Balde Tipo ----------- --------- ----------- crimes 3033827 Couchbase |
Como você pode ver, ele verifica todas as portas em que o Couchbase Server pode estar sendo executado de acordo com a documentação. Nos nós acima, nem todas as portas estão abertas e isso não é problema. As que não estão abertas são as de criptografia, chamadas internas e outros serviços que não estou executando naquele nó (por exemplo, Query, Index, Data, FTS etc.). Se quiser ver o que cada uma das portas faz no cbping, insira a opção -v na linha de comando e você verá uma descrição de cada uma delas, como a seguir:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
Nome do host Porto Resultado Expirado Tempo* Descrição -------- ---- ------ ------------ ----------- 172.16.40.144 8091 SUCESSO 65.0 Console REST/HTTP 172.16.40.144 8092 SUCESSO 63.0 Visualizações, consultas, XDCR, design documentos 172.16.40.144 8093 [Errno 61] Conexão recusado 111.0 Consulta serviços REST/HTTP 172.16.40.144 8094 [Errno 61] Conexão recusado 111.0 Pesquisa serviço externo HTTP 172.16.40.144 9100 SUCESSO 62.0 Interno índice administrador 172.16.40.144 9102 SUCESSO 59.0 Interno índice HTTP 172.16.40.144 9103 [Errno 61] Conexão recusado 82.0 Interno índice construir 172.16.40.144 9104 [Errno 61] Conexão recusado 80.0 Interno índice construir 172.16.40.144 9105 SUCESSO 54.0 Interno índice manutenção 172.16.40.144 9998 [Errno 61] Conexão recusado 93.0 Interno REST 172.16.40.144 9999 SUCESSO 59.0 Interno GSI para interno administradores 172.16.40.144 11207 SUCESSO 94.0 Memcached SSL para inteligente cliente bibliotecas 172.16.40.144 11209 SUCESSO 59.0 Interno Balde 172.16.40.144 11210 SUCESSO 58.0 Memcached para inteligente cliente lib ou Moxi 172.16.40.144 11211 SUCESSO 57.0 Pré-existente Couchbase Servidor & memcached (não-inteligente) cliente bibliotecas (tais como Moxi) 172.16.40.144 11214 SUCESSO 57.0 SSL XDCR dados criptografia 172.16.40.144 11215 [Errno 61] Conexão recusado 93.0 SSL XDCR dados criptografia 172.16.40.144 18091 SUCESSO 110.0 Web Console SSL REST/HTTP tráfego 172.16.40.144 18092 SUCESSO 64.0 SSL para visualizações acesso, executar consultas, XDCR & atualização design documentos 172.16.40.144 18093 [Errno 61] Conexão recusado 114.0 N1QL SSL 172.16.40.144 4369 SUCESSO 91.0 Erlang Porto Mapeador 172.16.40.144 21100 SUCESSO 85.0 Nó dados troca |