欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

centos7安装部署clickhouse集群

程序员文章站 2022-07-13 10:26:29
...

我这里是三台服务器,centos版本是7.8,分别是:
192.168.130.46
192.168.130.48
192.168.130.49

需要提前安装好zookeeper并启动,此处省略步骤。

1.检查操作系统是否支持

执行:grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"
显示:SSE 4.2 supported,为支持

2.开始安装

三台服务器都依次执行如下四行:

yum install yum-utils

rpm --import https://repo.yandex.ru/clickhouse/CLICKHOUSE-KEY.GPG

yum-config-manager --add-repo https://repo.yandex.ru/clickhouse/rpm/stable/x86_64

yum install clickhouse-server clickhouse-client

查看是否安装完成:

yum list installed 'clickhouse*'

centos7安装部署clickhouse集群
默认安装好的 clickhouse-client 和 clickhouse-server 在 /etc 目录下

3.启动

现在三台服务器都安装好了单节点的clickhouse,先启动一下试试看

启动:systemctl start clickhouse-server.service

查看进程:ps -aux |grep clickhouse

停止:systemctl stop clickhouse-server.service

centos7安装部署clickhouse集群
执行 clickhouse-client 即可进入他的命令行
centos7安装部署clickhouse集群
到现在为止单节点的三个clickhouse就安装成功了,下面配置集群模式

4.配置集群模式的clickhouse

三台服务器都需要配置metrika.xml,这个原本是没有的,需要自己创建。

vi /etc/metrika.xml

内容如下:

<yandex>
    <clickhouse_remote_servers>
        <perftest_3shards_1replicas>
            <shard>
                <internal_replication>true</internal_replication>
                <replica>
                    <host>clickhouse01</host>         (第一台服务器的主机名或ip)
                    <port>9000</port>
                </replica>
            </shard>
            <shard>
                <replica>
                    <internal_replication>true</internal_replication>
                    <host>clickhouse02</host>         (第二台服务器的主机名或ip)
                    <port>9000</port>
                </replica>
            </shard>
            <shard>
                <internal_replication>true</internal_replication>
                <replica>
                    <host>clickhouse03</host>         (第三台服务器的主机名或ip)
                    <port>9000</port>
                </replica>
            </shard>
        </perftest_3shards_1replicas>
    </clickhouse_remote_servers>
     
    <zookeeper-servers>
        <node index="1">
            <host>clickhouse01</host>                    (此处的三个host同上)
            <port>2181</port>
        </node>
        <node index="2">
            <host>clickhouse02</host>
            <port>2181</port>
        </node>
        <node index="3">
            <host>clickhouse03</host>
            <port>2181</port>
        </node>
    </zookeeper-servers>
    <macros>
        <replica>clickhouse01</replica>   (这里要写本机的地址,另外两台记得改为对应的地址)
    </macros>
    <networks>
        <ip>::/0</ip>
    </networks>
    <clickhouse_compression>
        <case>
            <min_part_size>10000000000</min_part_size>
            <min_part_size_ratio>0.01</min_part_size_ratio>
            <method>lz4</method>
        </case>
    </clickhouse_compression>
</yandex>

5.启动集群

改完配置需要重新启动clickhouse-server,方式同步骤3

进入 clickhouse-client
验证集群是否创建成功,输入 select * from system.clusters;
centos7安装部署clickhouse集群
至此集群就安装成功了。

期间出现的问题:

刚开始我是以 service clickhouse-server start 和 /etc/init.d/clickhouse-server start 的方式启动server,
出现Init script is already running,
查看进程的时候发现并未启动成功
centos7安装部署clickhouse集群

原因:
centos7应该使用systemctl的方式进行启动
使用 systemctl start clickhouse-server.service 启动即可