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

Привет: Есть 3 выделенных сервера (A-B-C), на каждом из них по

1ой вмке с кликхаусами ( пусть будут называться ch ). Порты 2181 и 9000 проксируются в том числе через публичный адрес выделенных серверов, то есть из вмки A-ch доступны порты A:2181 A:9000 B:2181 и тд. Так вот если в конфиге указывать публичные адреса выделенных серверов, то кластеризация не работает:
- все команды с приставкой on cluster '{cluster}'; не выполняются
- репликация так же не работает


Конфиг с публичными адресами:
<zookeeper-servers>
<node index="1">
<host>белый айпи А</host>
<port>2181</port>
</node>
<node index="2">
<host>белый айпи B</host>
<port>2181</port>
</node>
<node index="3">
<host>белый айпи C</host>
<port>2181</port>
</node>
</zookeeper-servers>
<clickhouse_remote_servers>
<fmk>
<shard>
<replica>
<host>белый айпи А</host>
<port>9000</port>
</replica>
<replica>
<host>белый айпи B</host>
<port>9000</port>
</replica>
<replica>
<host>белый айпи C</host>
<port>9000</port>
</replica>
</shard>
</fmk>
</clickhouse_remote_servers>

При этом если вместо белых айпи указывать серые адреса до непосредственно вмок, то все норм работает, почему так?

16 ответов

30 просмотров

https://clickhouse.com/docs/en/operations/server-configuration-parameters/settings/#interserver-http-host пропишите

Егор-Пересада Автор вопроса
Slach [altinity]
https://clickhouse.com/docs/en/operations/server-c...

чето не помогают манипуляции с этой настройкой, пробовал там серый айпи прописать, но эффекта никакого

Егор Пересада
чето не помогают манипуляции с этой настройкой, п...

белый IP Там прописывайте... раз в у вас пробрасывание идет порта

Егор-Пересада Автор вопроса
Slach [altinity]
белый IP Там прописывайте... раз в у вас пробрасыв...

тогда я не понимаю задумку, я хочу чтобы в конфигах реплики были прописаны белые айпи адреса (так как хочу заюзать яндекс datatransfer, а он судя по всему берет айпи адреса из system.clusters), с белым айпи адресом в interserver_http_host тоже не заработала репликация

Егор Пересада
тогда я не понимаю задумку, я хочу чтобы в конфига...

репликация и system.clusters вообще никак не связаны репликация на путь в zookeeper завязана и на имя реплики в <macros> определите <replica>публичный_ip</replica> чтобы разные на разных нода была а потом таблицы пересоздайте чтобы Engine=ReplicatedMergeTree('...','{replica}') должно заработать

Егор-Пересада Автор вопроса
Slach [altinity]
репликация и system.clusters вообще никак не связа...

я вероятно немного не так выразился, в варианте когда в конфиге прописаны белые айпи адреса я ловлю таймаут на любых запросах кластерных, которые даже не привязаны к таблицам, например create role if not exists test on cluster '{cluster}'; при этом этот же запросв успешно выполнится на всех нодах, если в конфиге прописаны серые адреса

Егор Пересада
zookeeper

один сервер или несколько? каждый зукипер рядом с clickhouse в одной виртуалке или в соседней?

Егор-Пересада Автор вопроса
Slach [altinity]
один сервер или несколько? каждый зукипер рядом с ...

3 сервера, каждый зукипер в той же виртуалке, что и кликхаус

Егор Пересада
3 сервера, каждый зукипер в той же виртуалке, что ...

как секция zookeeper выглядит внутри clickhouse? 127.0.0.1:2181 ? или несколько серверов? сервера zookeeper друг о друге знают? как они кворум устанавливают? должны по белым IP соединятся раз у вас сеть между виртуалками через проброс портов

Егор-Пересада Автор вопроса
Slach [altinity]
как секция zookeeper выглядит внутри clickhouse? 1...

<zookeeper-servers> <node index="1"> <host>белый А</host> <port>2181</port> </node> <node index="2"> <host>белый Б</host> <port>2181</port> </node> <node index="3"> <host>белый С</host> <port>2181</port> </node> </zookeeper-servers> зукиперы дург о друге знают по серым айпи адресам, получается конфиги зукипера тоже надо переделать под белые адреса?

Егор Пересада
<zookeeper-servers> <node index="1"> <host>б...

а как они тогда кворум устанавливают если не могут по серым IP соединиться ? не должно быть такого смотрите в zoo.cfg в зукипере конфиг внимательно

Егор Пересада
<zookeeper-servers> <node index="1"> <host>б...

там server.1 , server.2, server.3 в zoo.cfg как прописаны?

Егор-Пересада Автор вопроса
Slach [altinity]
а как они тогда кворум устанавливают если не могут...

по серым айпи адресам они все могут соединиться zookeeper_servers: "server.1": "0.0.0.0:2888:3888" "server.2": "192.168.202.11:2888:3888" "server.3": "192.168.203.11:2888:3888"

Егор Пересада
по серым айпи адресам они все могут соединиться z...

это как? вы ж сказали что у вас с серыми адресами не работает кластеризация ... по моему вы в показаниях путаетесь на виртуалке 192.168.201.11 ping 192.168.203.11 работает?

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта