Как настроить реплику и шард в кликхаусе?

Знаете ли вы, есть ли в Интернете какие-либо статьи, в которых можно узнать, как настроить реплику или осколок в ClickHouse? Я тоже не разбираюсь в ZooKeeper, не знаю, с чего начать; Большая часть статьи, которую я читаю в Интернете, посвящена тому, как это работает, но я не могу найти, как это настроить.

все эти статьи показывают некоторые настройки; однако я не знаю, как их собрать.

Я, например, не знаю, куда девать конфигурацию Zoo Keeper ...

Я читаю эти статьи

https://clickhouse.yandex/tutorial.html
https://blog.uiza.io/replicated-vs-distributed-on-clickhouse-part-1/
https://blog.uiza.io/replicated-and-distributed-on-clickhouse-part-2/
https://www.altinity.com/blog/2018/5/10/circular-replication-cluster-topology-in-clickhouse
Set ZooKeeper locations in configuration file
<zookeeper-servers>
    <node>
        <host>zoo01.yandex.ru</host>
        <port>2181</port>
    </node>
    <node>
        <host>zoo02.yandex.ru</host>
        <port>2181</port>
    </node>
    <node>
        <host>zoo03.yandex.ru</host>
        <port>2181</port>
    </node>
</zookeeper-servers>

person Panco    schedule 26.07.2019    source источник


Ответы (1)


Zookeeper - это автономный демон, вам нужно установить его и запустить (достаточно одного экземпляра демона zookeeper), после чего вам нужно добавить

<zookeeper-servers>
    <node>
        <host>zoo01.yourdomain.com</host>
        <port>2181</port>
    </node>
</zookeeper-servers>

настроить на каждом сервере Clickhouse

и добавьте конфигурацию удаленных серверов на каждый сервер Clickhouse, т.е.

    <remote_servers>
        <your_cluster_name>
            <shard>
                <weight>1</weight>
                <internal_replication>true</internal_replication>
                <replica>
                    <host>clickhouse-ru-1.local</host>
                    <port>9000</port>
                </replica>
                <replica>
                    <host>clickhouse-ru-2.local</host>
                    <port>9000</port>
                </replica>
            </shard>
            <shard>
                <weight>1</weight>
                <internal_replication>false</internal_replication>
                <replica>
                    <host>clickhouse-eu-1.local</host>
                    <port>9000</port>
                </replica>
                <replica>
                    <host>clickhouse-eu-2.local</host>
                    <port>9000</port>
                </replica>
            </shard>
            <shard>
                <weight>1</weight>
                <internal_replication>false</internal_replication>
                <replica>
                    <host>clickhouse-us-1.local</host>
                    <port>9000</port>
                </replica>
                <replica>
                    <host>clickhouse-us-2.local</host>
                    <port>9000</port>
                </replica>
            </shard>
        </your_cluster_name>
    </remote_servers>

после этого, пожалуйста, прочтите о движке распределенных таблиц https://clickhouse.yandex/docs/en/operations/table_engines/distributed/

person Slach    schedule 26.07.2019
comment
На выходных я узнал, как настроить кластер Zookeeper в отдельном наборе виртуальных машин. Нужно ли мне устанавливать какие-либо компоненты zookeeper на сервер ClickHouse? - person Panco; 29.07.2019
comment
Куда мне поместить информацию о конфигурации? это на /etc/clickhouse-server/config.xml? в какой-то статье упоминалось о /etc/metrika.xml; однако я не могу найти этот файл. Это меня смущает - как включить zookeeper для Clickhouse - person Panco; 29.07.2019
comment
просто установите zookeeper и запустите zookeeper, вставьте <remote_servers>...</remote_servers> в /etc/clickhouse-server/config.xml на каждом узле clickhouse и вставьте <zookeeper> <node index="1"> <host>zookeeper_host</host> <port>2181</port> </node> </zookeeper> на каждый узел clickhouse - person Slach; 30.07.2019
comment
Почему только один из шардов имеет internal_replication значение true, а другие нет? - person xmar; 28.05.2020
comment
xmar, это просто тестовая конфигурация для обычного использования репликации, установите internal_replication = true для всех шардов - person Slach; 28.05.2020