172 похожих чатов

Всем привет. Ребят, может мне кто-нибудь помочь с настройкой consul

кластера?
Пытаюсь поднять 3 сервера в вагранте с таким конфигом:
# define servers
config.vm.define "s1" do |s1|
s1.vm.hostname = "s1"
s1.vm.network "private_network", ip: "172.20.21.10"
end

config.vm.define "s2" do |s2|
s2.vm.hostname = "s2"
s2.vm.network "private_network", ip: "172.20.22.10"
end

config.vm.define "s3" do |s3|
s3.vm.hostname = "s3"
s3.vm.network "private_network", ip: "172.20.23.10"
end
Когда я пытаюсь подключиться к кластеру с клиента (192.168.0.170) я получаю ошибку
2019/03/15 13:59:49 [ERR] consul: "Catalog.NodeServices" RPC failed to server 172.20.23.10:8300: rpc error getting client: failed to get conn: dial tcp 192.168.0.170:0->172.20.23.10:8300: i/o timeout
2019/03/15 13:59:49 [ERR] agent: failed to sync remote state: rpc error getting client: failed to get conn: dial tcp 192.168.0.170:0->172.20.23.10:8300: i/o timeout
Серверные ноды спокойно подключаются друг к другу, но когда я пытаюсь подключить клиента появляется такая ошибка.
Конфигурация серверов почти одинаковая (разные только bind_addr):
{
"datacenter": "dc1",
"data_dir": "/opt/consul",
"log_level": "INFO",
"node_name": "server-s1",
"server": true,
"bootstrap_expect": 3,
"bind_addr": "172.20.21.10",
"retry_join": [
"172.20.21.10",
"172.20.22.10",
"172.20.23.10"
]
}
конфиг клиента:
{
"datacenter": "dc1",
"data_dir": "/opt/consul",
"log_level": "INFO",
"node_name": "agent-s1-n1",
"bind_addr": "192.168.0.170",
"start_join": [
"172.20.21.10",
"172.20.22.10",
"172.20.23.10"
],
"ui": true
}

Еще заметил, что когда я пытаюсь клиентом забиндиться на адрес 172.20.21.1 он может подключиться только к серверу 172.20.21.10 Если вдруг этот сервер умирает, то клиент уже не может переподключиться к другим серверам с ошибкой, указанной выше. [ERR] consul: "Catalog.NodeServices" ...

логи такие:
http://dpaste.com/1D6D21A - server1
http://dpaste.com/0CVJ6H8 - server2
http://dpaste.com/0SBA25F - server3
http://dpaste.com/2V4WWWF - client

все ip пингуются со 192.168.0.170 и порт 8302 доступен на 172.20.2[1-3].10 (проверял через netcat)

1 ответов

18 просмотров

https://github.com/hashicorp/consul/blob/master/demo/docker-compose-cluster/docker-compose.yml возьмите рабочие примеры и поэтапно перенесите в vm.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта