侧边栏壁纸
博主头像
Devlive 开源社区博主等级

行动起来,活在当下

  • 累计撰写 117 篇文章
  • 累计创建 32 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

ClickHouse 多集群配置

我是管理员哦
2024-01-24 / 0 评论 / 0 点赞 / 5 阅读 / 5417 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2024-01-24,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

为了我们方便找到我们的配置信息,我们将CK集群做分开配置

修改集群配置


  • 修改vim /etc/clickhouse-server/config.xml配置文件
<zookeeper>
    <node index="1">
        <host>zk1</host>
        <port>2181</port>
    </node>
    <node index="2">
        <host>zk2</host>
        <port>2181</port>
    </node>
    <node index="3">
        <host>zk3</host>
        <port>2181</port>
    </node>
</zookeeper>

<remote_servers>
    <ck_cluster>
        <shard>
            <weight>1</weight>
            <internal_replication>true</internal_replication>
            <replica>
                <host>ck1</host>
                <port>9000</port>
            </replica>
            <replica>
                <host>ck2</host>
                <port>9000</port>
            </replica>
        </shard>
        <shard>
            <weight>1</weight>
            <internal_replication>true</internal_replication>
            <replica>
                <host>ck2</host>
                <port>9000</port>
            </replica>
            <replica>
                <host>ck3</host>
                <port>9000</port>
            </replica>
        </shard>
        <shard>
            <weight>1</weight>
            <internal_replication>true</internal_replication>
            <replica>
                <host>ck3</host>
                <port>9000</port>
            </replica>
            <replica>
                <host>ck1</host>
                <port>9000</port>
            </replica>
        </shard>
    </ck_cluster>
</remote_servers>

删除以上两个配置信息,新增以下内容

<remote_servers incl="clickhouse_remote_servers" />
<zookeeper incl="zookeeper-servers" optional="true" />

<include_from>/etc/clickhouse-server/ck-cluster.xml</include_from>
  • remote_servers 标志我们在外部文件中引用的集群配置节点是clickhouse_remote_servers
  • zookeeper 标志我们在外部文件引用的ZK集群配置节点是zookeeper-servers
  • include_from 标志我们引用的外部配置文件,指定文件的绝对路径

新建集群配置文件


刚刚我们指定了/etc/clickhouse-server/ck-cluster.xml配置文件,此时我们需要去对该文件做配置

  • 创建新的配置文件
touch /etc/clickhouse-server/ck-cluster.xml

在新的配置文件中增加zookeeperclickhouse集群信息

<yandex>
    <zookeeper-servers>
        <node index="1">
            <host>zk1</host>
            <port>2181</port>
        </node>
        <node index="2">
            <host>zk2</host>
            <port>2181</port>
        </node>
        <node index="3">
            <host>zk3</host>
            <port>2181</port>
        </node>
    </zookeeper-servers>
    
    <clickhouse_remote_servers>
        <ck_cluster>
            <shard_1>
                <weight>1</weight>
                <internal_replication>true</internal_replication>
                <replica>
                    <host>ck1</host>
                    <port>9000</port>
                </replica>
                <replica>
                    <host>ck2</host>
                    <port>9000</port>
                </replica>
            </shard_1>
            <shard_2>
                <weight>1</weight>
                <internal_replication>true</internal_replication>
                <replica>
                    <host>ck2</host>
                    <port>9000</port>
                </replica>
                <replica>
                    <host>ck3</host>
                    <port>9000</port>
                </replica>
            </shard_2>
            <shard_3>
                <weight>1</weight>
                <internal_replication>true</internal_replication>
                <replica>
                    <host>ck3</host>
                    <port>9000</port>
                </replica>
                <replica>
                    <host>ck1</host>
                    <port>9000</port>
                </replica>
            </shard_3>
        </ck_cluster>
    </clickhouse_remote_servers> 

    <networks>
        <ip>::/0</ip>
    </networks>
</yandex>

此处需要注意的是在yandex中配置的相关节点一定到和config.xml中的<remote_servers incl="clickhouse_remote_servers" /> <zookeeper incl="zookeeper-servers" optional="true" />这两个属性的incl一致,否则会扫描不到集群标志

修改配置后我们不需要重启服务,ClickHouse会自动加载修改后的配置信息

我们配置多个集群使用多个配置文件即可,多个replica节点配置多个也是可以的

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区