ClickHouse 分片副本高可用環(huán)境部署(3臺(tái))

環(huán)境規(guī)劃

  • 每天機(jī)器已安裝單機(jī)版的ClickHouse茬缩,官方推薦使用 rpm 安裝,也可以安裝好一臺(tái)后復(fù)制文件過去
  • CentOS Linux release 7.8.2003 (Core)
  • ClickHouse 20.11.6.6
  • jdk-8u281-linux-x64.rpm
  • apache-zookeeper-3.6.2

由于本機(jī)虛擬環(huán)境牙咏,因此采用的是多實(shí)例部署,當(dāng)前采用三臺(tái)機(jī)部署莲兢,zookeeper集群也部署在這個(gè)上面乞旦,生產(chǎn)建議都分開部署

分片 副本01 副本02 zookeeper clickhouse安裝目錄
分片01 192.168.66.101:9000 192.168.66.102:9200 zookeeper 1 /clickhouse/data
分片02 192.168.66.102:9000 192.168.66.103:9200 zookeeper 2 /clickhouse/data
分片03 192.168.66.103:9000 192.168.66.101:9200 zookeeper 3 /clickhouse/data
image.png

注意事項(xiàng)

  • 使用 zookeeper + Replicated*MergeTree(復(fù)制表) + Distributed(分布式表)
  • 官方建議將ZooKeeper集群部署在單獨(dú)的服務(wù)器上(其中沒有其他進(jìn)程醇锚,包括運(yùn)行的ClickHouse)哼御。zookeeper資源不足或不可用會(huì)顯示復(fù)制表為只讀模式
  • 建議clickhouse不要多實(shí)例部署,無法最大化利用資源
  • Ext4是最可靠的選擇焊唬。 設(shè)置掛載選項(xiàng) noatime, nobarrier. XFS也是合適的恋昼,但它還沒有經(jīng)過ClickHouse的徹底測(cè)試。
  • 不要在與ClickHouse相同的服務(wù)器上運(yùn)行ZooKeeper赶促。 因?yàn)閆ooKeeper對(duì)延遲非常敏感液肌,而ClickHouse可能會(huì)占用所有可用的系統(tǒng)資源。
  • 最好使用新版本的 Zookeeper – 3.4.9 或之后的版本.
  • 當(dāng)進(jìn)行zookeeper遷移的時(shí)候請(qǐng)務(wù)必將zookeeper下的目錄文件一并遷移芳杏。否則整個(gè)數(shù)據(jù)庫(kù)會(huì)變成一個(gè)只讀表矩屁。

沒有例外說明,以下操作所有服務(wù)器均需執(zhí)行爵赵,有差異化的會(huì)說明

集群部署系統(tǒng)設(shè)置

創(chuàng)建安裝目錄

mkdir  -p /clickhouse/soft

關(guān)閉防火墻/Selinux

# 關(guān)閉防火墻
systemctl stop firewalld
systemctl disable firewalld

# 設(shè)置selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

禁用透明大頁(yè)

echo 'never' | sudo tee /sys/kernel/mm/transparent_hugepage/enabled

上傳安裝文件

文件上傳至 /clickhouse/soft

設(shè)置host相關(guān)

修改hostname【差異執(zhí)行】

# 101
hostnamectl set-hostname yqtest1

# 102
hostnamectl set-hostname yqtest2

# 103
hostnamectl set-hostname yqtest3

配置hosts

echo "192.168.66.101 yqtest1" >> /etc/hosts
echo "192.168.66.102 yqtest2" >> /etc/hosts
echo "192.168.66.103 yqtest3" >> /etc/hosts

安裝在zookeeper集群

hostname ip:端口 安裝目錄 數(shù)據(jù)目錄 日志目錄
yqtest1 192.168.66.101:2181 /clickhouse /clickhouse/zookeeper/data /clickhouse/zookeeper/logs
yqtest2 192.168.66.102:2181 /clickhouse /clickhouse/zookeeper/data /clickhouse/zookeeper/logs
yqtest3 192.168.66.103:2181 /clickhouse /clickhouse/zookeeper/data /clickhouse/zookeeper/logs

安裝jdk

cd /clickhouse/soft/  # 文件上傳在了當(dāng)前目錄下
rpm -ivh jdk-8u281-linux-x64.rpm
java -version

解壓安裝zookeeper

cd /clickhouse
tar zxvf /clickhouse/soft/apache-zookeeper-3.6.2-bin.tar.gz
mv apache-zookeeper-3.6.2-bin zookeeper

創(chuàng)建數(shù)據(jù)與日志存放路徑

cd /clickhouse/zookeeper
mkdir logs data

修改zookeeper配置文件

配置可參考官方的配置:https://clickhouse.tech/docs/zh/operations/tips/

vi /clickhouse/zookeeper/conf/zoo.cfg

# 需修改 dataDir 與 dataLogDir 以及對(duì)應(yīng)的服務(wù)IP地址
tickTime=2000
initLimit=1000
syncLimit=10
dataDir=/clickhouse/zookeeper/data
dataLogDir=/clickhouse/zookeeper/logs
clientPort=2181
maxClientCnxns=500
autopurge.snapRetainCount=10
autopurge.purgeInterval=1
globalOutstandingLimit=100
preALLocSize=131072
snapCount=1000000
server.1= 192.168.66.101:2888:3888
server.2= 192.168.66.102:2888:3888
server.3= 192.168.66.103:2888:3888
  • tickTime=2000

作為zookeeper服務(wù)器之間或客戶端與服務(wù)器之間維持心跳的時(shí)間間隔,也就是說每個(gè)tickTime時(shí)間就會(huì)發(fā)送一個(gè)心跳吝秕。

  • initLimit=10
    表示允許從服務(wù)器(相對(duì)于leader來說的客戶端)連接到leader并完成數(shù)據(jù)同步的時(shí)間,它是以tickTime的倍數(shù)來表示的空幻,也就是從服務(wù)器與主服務(wù)器完成初始化連接和數(shù)據(jù)同步是能夠容忍多少個(gè)心跳時(shí)間烁峭,如果超過這個(gè)時(shí)間不能完成初始化連接的建立則表示連接失敗。默認(rèn)是10.如果你的數(shù)據(jù)量過大而且從服務(wù)器數(shù)量也多那么這個(gè)值可以設(shè)置大一點(diǎn)秕铛。约郁。總的時(shí)間長(zhǎng)度就是 initLimit * tickTime 秒但两。
  • syncLimit=5
    配置 Leader 與 Follower 之間發(fā)送消息鬓梅,請(qǐng)求和應(yīng)答時(shí)間長(zhǎng)度,最長(zhǎng)不能超過多少個(gè) tickTime 的時(shí)間長(zhǎng)度谨湘,總的時(shí)間長(zhǎng)度就是 syncLimit * tickTime 秒 绽快,如果在這個(gè)時(shí)間內(nèi)從服務(wù)器不能與主服務(wù)器通信,則表示該從服務(wù)器失敗紧阔。默認(rèn)為5*2000=10秒.如果集群環(huán)境網(wǎng)絡(luò)不佳可以調(diào)整大一點(diǎn)坊罢。
  • dataDir
    保存數(shù)據(jù)的數(shù)據(jù)庫(kù)快照的位置,快照文件并不是實(shí)時(shí)的擅耽,運(yùn)行一段時(shí)間才會(huì)有活孩。
  • dataLogDir
    事務(wù)日志日志路徑,若沒提供的話則用dataDir乖仇。zookeeper的持久化都存儲(chǔ)在這兩個(gè)目錄里憾儒,對(duì)ZK的讀和寫都是在內(nèi)存中完成询兴,所以速度非常快起趾,
    但是如果停止ZK再啟動(dòng)數(shù)據(jù)還是需要保證的蕉朵,所以就會(huì)有這樣一個(gè)路徑用來保存事務(wù)日志,當(dāng)ZK再次啟動(dòng)時(shí)加載到內(nèi)存重演過程來恢復(fù)數(shù)據(jù)阳掐。
    dataLogDir里是放到的順序日志(WAL),指定的目錄下有version-2文件夾(下有l(wèi)og.1文件),這個(gè)目錄確定了當(dāng)前事務(wù)日志的版本號(hào)冷蚂,當(dāng)下次某個(gè)版本的ZK對(duì)其進(jìn)行修改時(shí)缭保,版本號(hào)發(fā)生變化。
    日志文件大小為64M蝙茶,如果數(shù)據(jù)比較多就會(huì)有多個(gè)這樣大小的文件艺骂。而dataDir里放的是內(nèi)存數(shù)據(jù)結(jié)構(gòu)的snapshot,便于快速恢復(fù)隆夯。
    為了達(dá)到性能最大化钳恕,一般建議把dataDir和dataLogDir分到不同的磁盤上,建議將事物日志保存到單獨(dú)的磁盤而且是高速磁盤蹄衷。
    因?yàn)闉榱艘恢滦杂嵌睿琙K對(duì)于客戶端的寫入請(qǐng)求在返回之前就要把本次操作寫入到事物日志中
  • clientPort=2181
    Zookeeper服務(wù)器監(jiān)聽的端口,以接受客戶端的訪問請(qǐng)求
  • maxClientCnxns=60
    限制連接到ZK上的客戶端數(shù)量愧口,并且限制并發(fā)連接數(shù)量睦番,它通過IP來區(qū)分不同客戶端。值為0表示不做任何限制耍属。
    注意這里的限制是針對(duì)單臺(tái)客戶端到服務(wù)器的托嚣,并不是控制所有客戶端連接的。默認(rèn)60.
  • autopurge.snapRetainCount=5
    自動(dòng)清理日志厚骗,該參數(shù)設(shè)置保留多少個(gè)快照文件和對(duì)應(yīng)的事務(wù)日志文件示启,默認(rèn)為3,如果你設(shè)置的小于3則會(huì)被自動(dòng)的調(diào)整為3
  • autopurge.purgeInterval=1
    自動(dòng)清理日志领舰,該參數(shù)設(shè)置自動(dòng)清理頻率夫嗓,上面的參數(shù)配套使用。
    客戶端在和ZK服務(wù)器交互中服務(wù)器會(huì)產(chǎn)生很多日志提揍,而且ZK會(huì)將內(nèi)存中的數(shù)據(jù)作為快照保存起來啤月,而且這些數(shù)據(jù)不會(huì)自動(dòng)刪除,那么磁盤空間就會(huì)被占用劳跃,
    可以設(shè)置這2個(gè)參數(shù)來自動(dòng)清理谎仲,不過如果ZK服務(wù)器比較繁忙而且趕上刪除日志任務(wù)就會(huì)影響性能,
    所以一般不設(shè)置這個(gè)自動(dòng)清理刨仑,而是在ZK訪問量少的時(shí)候通過Linux的定時(shí)任務(wù)來處理郑诺。0表示不開啟自動(dòng)清理功能夹姥。
  • globalOutstandingLimit=100
    ZK的最大請(qǐng)求堆積數(shù),客戶端請(qǐng)求比較多辙诞,為了防止客戶端資源過度消耗辙售,服務(wù)器必須限制同時(shí)處理的請(qǐng)求數(shù)量。
  • preALLocSize=131072
    用于配置ZK事務(wù)日志預(yù)先分配的空間飞涂,默認(rèn)是64M
  • snapCount=1000000
    用于配置相鄰兩次快照之間的事物日志次數(shù)旦部,默認(rèn)是10萬。也就是10萬條事務(wù)之后做一次快照同時(shí)結(jié)轉(zhuǎn)事務(wù)日志

修改zookeeper端允許占用內(nèi)存

vi /clickhouse/zookeeper/bin/zkEnv.sh
搜索 ZK_SERVER_HEAP 较店,默認(rèn)設(shè)置大小約 1G士八,實(shí)際生產(chǎn)環(huán)境需設(shè)大,zookeeper數(shù)據(jù)處理使用梁呈,不超過32G婚度,一般可設(shè)置為物理內(nèi)存一半,因此不建議將clickhouse和zk放在一臺(tái)機(jī)器上

ZK_SERVER_HEAP="${ZK_SERVER_HEAP:-1000}"  # 生產(chǎn)需改大

添加myid文件【差異執(zhí)行】

除了修改 zoo.cfg 配置文件官卡,集群模式下還要配置一個(gè)標(biāo)識(shí)自己身份也就是自己的ID值文件 myid蝗茁,這個(gè)文件在zoo.cfg里dataDir指定的目錄下,這個(gè)文件里面就只有一個(gè)數(shù)字寻咒,這個(gè)數(shù)字和server.n的n保持一致哮翘,該值范圍可以是1-255之間,Zookeeper 啟動(dòng)時(shí)會(huì)讀取這個(gè)文件仔涩,拿到里面的數(shù)據(jù)與 zoo.cfg 里面的配置信息比較從而判斷到底是那個(gè) server忍坷。

# 值與配置文件中的server.n匹配
# 101 服務(wù)器
echo "1"> /clickhouse/zookeeper/data/myid

# 102 服務(wù)器
echo "2"> /clickhouse/zookeeper/data/myid

# 103 服務(wù)器
echo "3"> /clickhouse/zookeeper/data/myid

配置環(huán)境變量

echo "export PATH=$PATH:/clickhouse/zookeeper/bin" >> ~/.bash_profile
source ~/.bash_profile

啟動(dòng)

出現(xiàn)錯(cuò)誤可查看日志 /clickhouse/zookeeper/logs/zookeeper-root-server-主機(jī)名.out

zkServer.sh start

# 查看狀態(tài)
zkServer.sh status

# 查看端口
ss -ntpl |grep 2181
ss -ntpl |grep 2888  # 僅leader存在
ss -ntpl |grep 3888

# 也可以連上去看看
zkCli.sh -server 192.168.66.101:2181

可發(fā)現(xiàn)當(dāng)前 103 為leader,其余倆個(gè)為 follower

[root@yqtest1 zookeeper]# zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /clickhouse/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower

[root@yqtest2 zookeeper]# zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /clickhouse/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower

[root@yqtest3 zookeeper]# zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /clickhouse/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader

測(cè)試zk高可用切換

# 當(dāng)前 103 為 leader,將 103 zk 關(guān)閉
zkServer.sh stop

# 查看狀態(tài)熔脂,102被提升為 leader,103 重新加入后會(huì)變?yōu)?follower
[root@yqtest2 zookeeper]# zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /clickhouse/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader

安裝clickhouse

系統(tǒng)要求

要支持SSE 4.2佩研,一般都支持,不支持的用源碼編譯方式安裝

grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"

下載安裝包

下載地址:https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/

當(dāng)前下載的版本為 20.11.6.6

  • clickhouse-common-static-20.11.6.6-2.x86_64.rpm
  • clickhouse-common-static-dbg-20.11.6.6-2.x86_64.rpm
  • clickhouse-server-20.11.6.6-2.noarch.rpm
  • clickhouse-client-20.11.6.6-2.noarch.rpm

創(chuàng)建目錄

cd /clickhouse
mkdir -p data log data9200 log9200

上傳并安裝

這邊上傳到了soft目錄

cd /clickhouse/soft
rpm -ivh clickhouse*

數(shù)據(jù)文件授權(quán)

由于rpm默認(rèn)是安裝在 /var/lib/clickhouse 下的霞揉,一般來說我們都會(huì)修改數(shù)據(jù)目錄旬薯,因此對(duì)于創(chuàng)建的數(shù)據(jù)目錄進(jìn)行授權(quán)

chown -R clickhouse.clickhouse /clickhouse/data
chown -R clickhouse.clickhouse /clickhouse/log
chown -R clickhouse.clickhouse /clickhouse/data9200
chown -R clickhouse.clickhouse /clickhouse/log9200

修改配置文件

修改默認(rèn)存放路徑

# 更改日志路徑
sed -i "s:/var/log/clickhouse-server:/clickhouse/log:g" /etc/clickhouse-server/config.xml
# 更改數(shù)據(jù)路徑
sed -i "s:/var/lib/clickhouse:/clickhouse/data:g" /etc/clickhouse-server/config.xml

更改訪問限制與時(shí)區(qū)

vi /etc/clickhouse-server/config.xml

/** 1.更改listen_host限制
<!-- <listen_host>::</listen_host> -->
*/
改為無限制
<listen_host>::</listen_host>

/** 2.更改時(shí)區(qū)
<!-- <timezone>Europe/Moscow</timezone> -->
*/
改為
<timezone>Asia/Shanghai</timezone>

/** 3.添加引用外部設(shè)置的副本分片信息
<!-- If element has 'incl' attribute, then for it's value will be used corresponding substitution from another file.
         By default, path to file with substitutions is /etc/metrika.xml. It could be changed in config in 'include_from' element.
         Values for substitutions are specified in /yandex/name_of_substitution elements in that file.
      -->
*/
<include_from>/etc/clickhouse-server/config.d/metrika.xml</include_from>

設(shè)置分片與副本信息metrika.xml【差異設(shè)置】

主要需要更改 macros 部分的宏定義,下面會(huì)列出對(duì)應(yīng)修改

vi /etc/clickhouse-server/config.d/metrika.xml

<?xml version="1.0"?>
<yandex>
    <!--集群相關(guān)配置-->
    <clickhouse_remote_servers>
        <!--自定義集群名稱,3分片2副本 ckcluster_3shards_2replicas-->
        <ckcluster_3shards_2replicas>
            <!--分片1-->
            <shard>
                <internal_replication>true</internal_replication>
                <!--yqtest1 分片1副本1-->
                <replica>
                    <host>yqtest1</host>
                    <port>9000</port>
                </replica>
                <!--yqtest2 分片1副本2-->
                <replica>
                    <host>yqtest2</host>
                    <port>9000</port>
                </replica>
            </shard>
            <!--分片2-->
            <shard>
                <internal_replication>true</internal_replication>
                <!--yqtest2 分片2副本1-->
                <replica>
                    <host>yqtest3</host>
                    <port>9000</port>
                </replica>
                <!--yqtest2 分片2副本2-->
                <replica>
                    <host>yqtest4</host>
                    <port>9000</port>
                </replica>
            </shard>
            <!--分片3-->
            <shard>
                <internal_replication>true</internal_replication>
                <!--yqtest3 分片3副本1-->
                <replica>
                    <host>yqtest5</host>
                    <port>9000</port>
                </replica>
                <!--yqtest3 分片3副本2-->
                <replica>
                    <host>yqtest6</host>
                    <port>9000</port>
                </replica>
            </shard>
        </ckcluster_3shards_2replicas>
    </clickhouse_remote_servers>

    <!--zookeeper集群相關(guān)配置-->
    <zookeeper>
        <node>
            <host>yqtest1</host>
            <port>2181</port>
        </node>
        <node>
            <host>yqtest2</host>
            <port>2181</port>
        </node>
        <node>
            <host>yqtest3</host>
            <port>2181</port>
        </node>
    </zookeeper>

    <!-- 不限制訪問來源 -->
    <networks>
        <ip>::/0</ip>
    </networks>


    <!-- 宏定義适秩,這邊需要根據(jù)不同的配置更改绊序,【101服務(wù)器】 01集群01分片01副本 -->
    <macros>
        <layer>01</layer>
        <shard>01</shard>
        <replica>cluster01-01-01</replica>
    </macros>

    <!--壓縮算法-->
    <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>

【差異之處】

# 101 metrika.xml 存放01集群01分片副本01
    <macros>
        <layer>01</layer>
        <shard>01</shard>
        <replica>cluster01-01-01</replica>
    </macros>

# 102 metrika.xml 存放01集群02分片副本01
    <macros>
        <layer>01</layer>
        <shard>01</shard>
        <replica>cluster01-01-02</replica>
    </macros>

# 103 metrika.xml 存放01集群01分片副本01
    <macros>
        <layer>01</layer>
        <shard>02</shard>
        <replica>cluster01-02-01</replica>
    </macros>

# 104 metrika.xml 存放01集群02分片副本01
    <macros>
        <layer>01</layer>
        <shard>02</shard>
        <replica>cluster01-02-02</replica>
    </macros>

# 105 metrika.xml 存放01集群01分片副本01
    <macros>
        <layer>01</layer>
        <shard>03</shard>
        <replica>cluster01-03-01</replica>
    </macros>

# 106 metrika.xml 存放01集群02分片副本01
    <macros>
        <layer>01</layer>
        <shard>03</shard>
        <replica>cluster01-03-02</replica>
    </macros>

更改user.xml配置

vi /etc/clickhouse-server/users.xml

/** 1.打開默認(rèn)可創(chuàng)建其他用戶與授權(quán)
<!-- <access_management>1</access_management> -->
*/
改為
<access_management>1</access_management>

/** 2.處理單個(gè)查詢的最大內(nèi)存使用量(字節(jié))
<max_memory_usage>10000000000</max_memory_usage>
*/
默認(rèn)10G,若內(nèi)存大可考慮設(shè)置為物理內(nèi)存的一半秽荞,如128G物理內(nèi)存設(shè)置為50G或60G

多節(jié)點(diǎn)配置文件配置

  • 多節(jié)點(diǎn)骤公,配置文件 /etc/clickhouse-server/config.xm 需要復(fù)制一份,users.xml 和 metrika.xml 可共用
cd /etc/clickhouse-server/
cp -p config.xml config9200.xml

編輯config9200.xml扬跋,修改配置

# 更改日志路徑
sed -i "s:/clickhouse/log:/clickhouse/log9200:g" /etc/clickhouse-server/config9200.xml
# 更改數(shù)據(jù)路徑
sed -i "s:/clickhouse/data:/clickhouse/data9200:g" /etc/clickhouse-server/config9200.xml

vi /etc/clickhouse-server/config9200.xml

/** 
<http_port>8123</http_port>
<tcp_port>9000</tcp_port>
<mysql_port>9004</mysql_port>
<interserver_http_port>9009</interserver_http_port> # 復(fù)制副本之間通信的端口阶捆。用于數(shù)據(jù)交換。
<include_from>/etc/clickhouse-server/config.d/metrika.xml</include_from>
*/
改成
<http_port>8223</http_port>
<tcp_port>9200</tcp_port>
<mysql_port>9204</mysql_port>
<interserver_http_port>9209</interserver_http_port>
<include_from>/etc/clickhouse-server/config.d/metrika9200.xml</include_from>

創(chuàng)建啟動(dòng)關(guān)閉腳本

復(fù)制啟動(dòng)腳本

cp /etc/systemd/system/clickhouse-server.service /etc/systemd/system/clickhouse-server9200.service

修改啟動(dòng)參數(shù)

vi /etc/systemd/system/clickhouse-server9200.service

/**
ExecStart=/usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-server.pid
*/
改為
ExecStart=/usr/bin/clickhouse-server --config=/etc/clickhouse-server/config9200.xml --pid-file=/run/clickhouse-server/clickhouse-server9200.pid

開機(jī)自啟

systemctl enable clickhouse-server9200

啟動(dòng)關(guān)閉腳本

  • 啟動(dòng)
    vi clickhouse_mult_start.sh
#!/bin/bash
systemctl start clickhouse-server
sleep 3
systemctl start clickhouse-server9200
  • 關(guān)閉
    vi clickhouse_mult_stop.sh
#!/bin/bash
systemctl stop clickhouse-server
sleep 3
systemctl stop clickhouse-server9200
  • 狀態(tài)查看
    vi clickhouse_mult_status.sh
#!/bin/bash
systemctl status clickhouse-server
sleep 3
systemctl status clickhouse-server9200

腳本授權(quán)

chmod +x clickhouse_mult_start.sh
chmod +x clickhouse_mult_stop.sh
chmod +x clickhouse_mult_status.sh

查看集群狀態(tài)

clickhouse-client -h 192.168.66.101 --port 9000 --user default --query "select * from system.clusters where cluster = 'ckcluster_3shards_2replicas'";
clickhouse-client -h 192.168.66.102 --port 9000 --user default --query "select * from system.clusters where cluster = 'ckcluster_3shards_2replicas'";
clickhouse-client -h 192.168.66.103 --port 9000 --user default --query "select * from system.clusters where cluster = 'ckcluster_3shards_2replicas'";
clickhouse-client -h 192.168.66.101 --port 9200 --user default --query "select * from system.clusters where cluster = 'ckcluster_3shards_2replicas'";
clickhouse-client -h 192.168.66.102 --port 9200 --user default --query "select * from system.clusters where cluster = 'ckcluster_3shards_2replicas'";
clickhouse-client -h 192.168.66.103 --port 9200 --user default --query "select * from system.clusters where cluster = 'ckcluster_3shards_2replicas'";

查看是否能正常登陸

[root@localhost ~]# clickhouse-client 
ClickHouse client version 20.11.6.6 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.11.6 revision 54442.

localhost :) show databases;

SHOW DATABASES

Query id: bb8da6c1-301c-435c-b78b-ea5a9751d6e5

┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ default                        │
│ system                         │
└────────────────────────────────┘

3 rows in set. Elapsed: 0.004 sec.

測(cè)試數(shù)據(jù)驗(yàn)證

創(chuàng)建數(shù)據(jù)庫(kù)

create database yqtest on cluster ckcluster_3shards_2replicas
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市洒试,隨后出現(xiàn)的幾起案子倍奢,更是在濱河造成了極大的恐慌,老刑警劉巖垒棋,帶你破解...
    沈念sama閱讀 218,755評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件卒煞,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡叼架,警方通過查閱死者的電腦和手機(jī)畔裕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乖订,“玉大人柴钻,你說我怎么就攤上這事」噶福” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵靠粪,是天一觀的道長(zhǎng)蜡吧。 經(jīng)常有香客問我,道長(zhǎng)占键,這世上最難降的妖魔是什么昔善? 我笑而不...
    開封第一講書人閱讀 58,791評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮畔乙,結(jié)果婚禮上君仆,老公的妹妹穿的比我還像新娘。我一直安慰自己牲距,他們只是感情好返咱,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,794評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著牍鞠,像睡著了一般咖摹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上难述,一...
    開封第一講書人閱讀 51,631評(píng)論 1 305
  • 那天萤晴,我揣著相機(jī)與錄音,去河邊找鬼胁后。 笑死店读,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的攀芯。 我是一名探鬼主播屯断,決...
    沈念sama閱讀 40,362評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了裹纳?” 一聲冷哼從身側(cè)響起择葡,我...
    開封第一講書人閱讀 39,264評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎剃氧,沒想到半個(gè)月后敏储,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡朋鞍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年已添,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片滥酥。...
    茶點(diǎn)故事閱讀 40,040評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡更舞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情硬霍,我是刑警寧澤贮匕,帶...
    沈念sama閱讀 35,742評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站刊头,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏诸尽。R本人自食惡果不足惜原杂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,364評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望您机。 院中可真熱鬧穿肄,春花似錦、人聲如沸际看。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)仲闽。三九已至锐朴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蔼囊,已是汗流浹背焚志。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留畏鼓,地道東北人酱酬。 一個(gè)月前我還...
    沈念sama閱讀 48,247評(píng)論 3 371
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像云矫,于是被迫代替她去往敵國(guó)和親膳沽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,979評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容