Итак, я пытаюсь подключиться к своему экземпляру scylla в GKE с помощью cqlsh, открыв соединение с Kubectl. Я, однако, сталкиваюсь с некоторыми странными проблемами, которые я не могу понять.
Я запускаю scylla на GKE, это, по сути, подделка Кассандры, которая должна бежать намного быстрее, чем сама Кассандра.
Чтобы получить доступ к scylla, я хочу иметь возможность подключаться к БД с помощью команды kubectl port-forward, чтобы я мог подключать внешние инструменты, такие как table plus.
Когда я запускаю kubectl port-forward pod/scylla-0 -n scylla 9042
, я ожидаю, что порт будет доступен с моей локальной машины, однако, когда я пытаюсь соединиться с локальным cqlsh, я получаю следующие сообщения об ошибках:
from clqsh: Connection error: ('Unable to connect to any servers', {'127.0.0.1': ConnectionShutdown('Connection to 127.0.0.1 was closed',)})
from kubectl: E0520 17:12:12.522329 51 portforward.go:400] an error occurred forwarding 9042 -> 9042: error forwarding port 9042 to pod <some id>, uid : exit status 1: 2019/05/20 15:12:12 socat[998972] E connect(5, AF=2 127.0.0.1:9042, 16): Connection refused
Я также пытался перенаправить службу напрямую к аналогичным результатам
Я лично считаю, что самая странная часть этого заключается в том, что когда я открываю scylla с помощью loadbalancer, я могу подключиться к нему совершенно нормально, я также могу использовать JConsole, когда пересылаю порт JMX для scylla, поэтому я у меня столько головной боли по этому поводу.