首先,您需要添加官方存储库:
sudo yum install yum-utils
sudo rpm --import https://repo.yandex.ru/clickhouse/CLICKHOUSE-KEY.GPG
sudo yum-config-manager --add-repo https://repo.yandex.ru/clickhouse/rpm/stable/x86_64
如果您想使用最新版本,请将stable
替换为testing
(建议您在测试环境中使用)。
然后运行这些命令以实际安装包:
sudo yum install clickhouse-server clickhouse-client
您也可以从此处手动下载和安装软件包:https://repo.yandex.ru/clickhouse/rpm/stable/x86_64。
//手动下载包来安装
wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-server-19.14.6.12-2.noarch.rpm
wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-client-19.14.6.12-2.noarch.rpm
wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-common-static-19.14.6.12-2.x86_64.rpm
rpm -ivh clickhouse-common-static-19.14.6.12-2.x86_64.rpm
rpm -ivh clickhouse-server-19.14.6.12-2.noarch.rpm
rpm -ivh clickhouse-client-19.14.6.12-2.noarch.rpm
<!-- Path to data directory, with trailing slash. -->
<path>/data/clickhouse/</path>
<!-- Path to temporary data for processing hard queries. -->
<tmp_path>/data/clickhouse/tmp/</tmp_path>
<!-- Directory with user provided files that are accessible by 'file' table function. -->
<user_files_path>/data/clickhouse/user_files/</user_files_path>
<!-- Path to configuration file with users, access rights, profiles of settings, quotas. -->
<users_config>users.xml</users_config>
打开ipv4的监听,放过127.0.0.1的监听处理
<listen_host>::1</listen_host>
<listen_host>0.0.0.0</listen_host>
sudo service clickhouse-server start
启动的时候请
下载地址:http://www.apache.org/dyn/closer.cgi/zookeeper/
生产环境中有线下载stable版本
目录结构:
bin 存放系统脚本
conf 存放配置文件
contrib zk附加功能支持
dist-maven maven仓库文件
docs zk文档
lib 依赖的第三方库
recipes 经典场景样例代码
src zk源码
bin目录
zk的可执行脚本目录,包括zk服务进程,zk客户端,等脚本。其中,.sh是Linux环境下的脚本,.cmd是Windows环境下的脚本。
conf目录
配置文件目录。zoo_sample.cfg为样例配置文件,需要修改为自己的名称,一般为zoo.cfg。log4j.properties为日志配置文件。
lib
zk依赖的包。
contrib目录
一些用于操作zk的工具包。
recipes目录
zk某些用法的代码示例
ZooKeeper的安装包括单机模式安装,以及集群模式安装。
单机模式较简单,是指只部署一个zk进程,客户端直接与该zk进程进行通信。
在开发测试环境下,通过来说没有较多的物理资源,因此我们常使用单机模式。当然在单台物理机上也可以部署集群模式,但这会增加单台物理机的资源消耗。故在开发环境中,我们一般使用单机模式。
但是要注意,生产环境下不可用单机模式,这是由于无论从系统可靠性还是读写性能,单机模式都不能满足生产的需求。
#### 4.1.1 运行配置
上面提到,conf目录下提供了配置的样例zoo_sample.cfg,要将zk运行起来,需要将其名称修改为zoo.cfg。
打开zoo.cfg,可以看到默认的一些配置。
tickTime
时长单位为毫秒,为zk使用的基本时间度量单位。例如,1 * tickTime是客户端与zk服务端的心跳时间,2 * tickTime是客户端会话的超时时间。
tickTime的默认值为2000毫秒,更低的tickTime值可以更快地发现超时问题,但也会导致更高的网络流量(心跳消息)和更高的CPU使用率(会话的跟踪处理)。
clientPort
zk服务进程监听的TCP端口,默认情况下,服务端会监听2181端口。
dataDir
无默认配置,必须配置,用于配置存储快照文件的目录。如果没有配置dataLogDir,那么事务日志也会存储在此目录。
在Windows环境下,直接双击zkServer.cmd即可。在Linux环境下,进入bin目录,执行命令
./zkServer.sh start
这个命令使得zk服务进程在后台进行。如果想在前台中运行以便查看服务器进程的输出日志,可以通过以下命令运行:
./zkServer.sh start-foreground
执行此命令,可以看到大量详细信息的输出,以便允许查看服务器发生了什么。
使用文本编辑器打开zkServer.cmd或者zkServer.sh文件,可以看到其会调用zkEnv.cmd或者zkEnv.sh脚本。zkEnv脚本的作用是设置zk运行的一些环境变量,例如配置文件的位置和名称等。
如果是连接同一台主机上的zk进程,那么直接运行bin/目录下的zkCli.cmd(Windows环境下)或者zkCli.sh(Linux环境下),即可连接上zk。
直接执行zkCli.cmd或者zkCli.sh命令默认以主机号 127.0.0.1,端口号 2181 来连接zk,如果要连接不同机器上的zk,可以使用 -server 参数,例如:
```
bin/zkCli.sh -server 192.168.0.1:2181
```
单机模式的zk进程虽然便于开发与测试,但并不适合在生产环境使用。在生产环境下,我们需要使用集群模式来对zk进行部署。
> 注意
> 在集群模式下,建议至少部署3个zk进程,或者部署奇数个zk进程。如果只部署2个zk进程,当其中一个zk进程挂掉后,剩下的一个进程并不能构成一个[quorum](http://baike.baidu.com/link?url=pqWrzgH-_VhMLnscR1iRTpPjovfyhxG-8Qs9HxGutiGi5bhnA_lX_pmabLQ-3MiDeigcHRFMYSbFg90RAYVAta)的大多数。因此,部署2个进程甚至比单机模式更不可靠,因为2个进程其中一个不可用的可能性比一个进程不可用的可能性还大。
在集群模式下,所有的zk进程可以使用相同的配置文件(是指各个zk进程部署在不同的机器上面),例如如下配置:
tickTime=2000
dataDir=/home/myname/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.229.160:2888:3888
server.2=192.168.229.161:2888:3888
server.3=192.168.229.162:2888:3888
注意
如果仅为了测试部署集群模式而在同一台机器上部署zk进程,server.id=host:port1:port2配置中的port参数必须不同。但是,为了减少机器宕机的风险,强烈建议在部署集群模式时,将zk进程部署不同的物理机器上面。
假如我们打算在三台不同的机器 192.168.229.160,192.168.229.161,192.168.229.162上各部署一个zk进程,以构成一个zk集群。
三个zk进程均使用相同的 zoo.cfg 配置:
tickTime=2000
dataDir=/home/myname/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=192.168.229.160:2888:3888
server.2=192.168.229.161:2888:3888
server.3=192.168.229.162:2888:3888
在三台机器dataDir目录( /home/myname/zookeeper 目录)下,分别生成一个myid文件,其内容分别为1,2,3。然后分别在这三台机器上启动zk进程,这样我们便将zk集群启动了起来。
可以使用以下命令来连接一个zk集群:
bin/zkCli.sh -server 192.168.229.160:2181,192.168.229.161:2181,192.168.229.162:2181
成功连接后,可以看到如下输出:
2016-06-28 19:29:18,074 [myid:] - INFO [main:ZooKeeper@438] - Initiating client connection, connectString=192.168.229.160:2181,192.168.229.161:2181,192.168.229.162:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@770537e4
Welcome to ZooKeeper!
2016-06-28 19:29:18,146 [myid:] - INFO [main-SendThread(192.168.229.162:2181):ClientCnxn$SendThread@975] - Opening socket connection to server 192.168.229.162/192.168.229.162:2181. Will not attempt to authenticate using SASL (unknown error)
JLine support is enabled
2016-06-28 19:29:18,161 [myid:] - INFO [main-SendThread(192.168.229.162:2181):ClientCnxn$SendThread@852] - Socket connection established to 192.168.229.162/192.168.229.162:2181, initiating session
2016-06-28 19:29:18,199 [myid:] - INFO [main-SendThread(192.168.229.162:2181):ClientCnxn$SendThread@1235] - Session establishment complete on server 192.168.229.162/192.168.229.162:2181, sessionid = 0x3557c39d2810029, negotiated timeout = 30000
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
[zk: 192.168.229.160:2181,192.168.229.161:2181,192.168.229.162:2181(CONNECTED) 0]
图2:客户端连接zk集群的输出日志
从日志输出可以看到,客户端连接的是192.168.229.162:2181进程(连接上哪台机器的zk进程是随机的),客户端已成功连接上zk集群。
<yandex>
<!-- 集群配置 -->
<clickhouse_remote_servers>
<bip_ck_cluster>
<!-- 数据分片1 -->
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>10.12.204.224</host>
<port>9000</port>
</replica>
</shard>
<!-- 数据分片2 -->
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>10.12.204.225</host>
<port>9000</port>
</replica>
</shard>
<!-- 数据分片3 -->
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>10.12.204.226</host>
<port>9000</port>
</replica>
</shard>
</bip_ck_cluster>
</clickhouse_remote_servers>
<!-- 本节点副本名称(这里无用) -->
<macros>
<replica>10.12.204.224</replica>
</macros>
<!-- 监听网络(貌似重复) -->
<networks>
<ip>::/0</ip>
</networks>
<!-- ZK -->
<zookeeper-servers>
<node index="1">
<host>10.12.204.225</host>
<port>2181</port>
</node>
</zookeeper-servers>
<!-- 数据压缩算法 -->
<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>
select * from system.clusters;
RPM包安装步骤
安装包repo
https://packagecloud.io/app/altinity/clickhouse/search?q=&filter=all&dist=
搜索要安装的版本的rpm包并下载到服务器目录
停止所有写clickhouse任务
停止clickhouse服务
service clickhouse-server stop
确认clickhouse服务已停止
service clickhouse-server status
备份clickhouse服务目录
搜索之前安装的版本
yum list installed | grep clickhouse
卸载之前安装的版本
yum remove -y clickhouse-common-static
yum remove -y clickhouse-server-common
yum remove -y clickhouse-server
yum remove -y clickhouse-client
确认之前安装的版本已全部卸载
yum list installed | grep clickhouse
安装下载好的新版本RPM包(包名请替换为你的包名)
yum install -y clickhouse-common-static-19.15.2.2-1.el7.x86_64.rpm
yum install -y clickhouse-server-common-19.15.2.2-1.el7.x86_64.rpm
yum install -y clickhouse-server-19.15.2.2-1.el7.x86_64.rpm
yum install -y clickhouse-client-19.15.2.2-1.el7.x86_64.rpm
cd /etc/clickhouse-server
如果之前该目录下有配置文件,程序会自动备份,
因此需要删除新版本自动创建的配置文件,并使用老版本的配置文件
rm -rf config.xml users.xml
mv config.xml.rpmsave config.xml
mv users.xml.rpmsave users.xml
启动clickhouse服务
service clickhouse-server start
确认服务已启动
service clickhouse-server status
登录clickhouse服务,验证服务是否正常
//删除集群分区
alter table user_events_repair_shard delete where dt=20191012
alter table batman.user_events_repair_shard delete where dt>=20191011;
CREATE TABLE batman.user_events_business_shard (`domain` String, `flow` String, `dt` Int32, `event_code` String, `d_source` Nullable(String), `vender_id` Nullable(Int32), `user_id` Nullable(String), `uuid` Nullable(String), `data_version` Nullable(String), `client_time` DateTime, `server_time` DateTime, `session_id` Nullable(String), `app_version` Nullable(String), `imei` Nullable(String), `dev_type` Nullable(String), `dev_platform` Nullable(String), `dev_platform_version` Nullable(String), `dev_manufacturer` Nullable(String), `client_ip` Nullable(String), `lat` Nullable(Float64), `lng` Nullable(Float64), `screen_height` Nullable(Int32), `screen_width` Nullable(Int32), `store_id` Nullable(Int32), `tdc` Nullable(String), `tdc_all` String, `project` Nullable(String), `env` Nullable(String), `sdk_type` Nullable(String), `sdk_version` Nullable(String), `data_seq` Nullable(Int32), `debug_mode` Nullable(String), `dev_carrier` Nullable(String), `dev_network_type` Nullable(String), `app_notification_state` Nullable(String), `store_group` Nullable(String), `page_url` Nullable(String), `page_uri` Nullable(String), `page_title` Nullable(String), `ref` Nullable(String), `long_1` Nullable(Int64), `long_2` Nullable(Int64), `long_3` Nullable(Int64), `long_4` Nullable(Int64), `long_5` Nullable(Int64), `long_6` Nullable(Int64), `long_7` Nullable(Int64), `long_8` Nullable(Int64), `long_9` Nullable(Int64), `long_10` Nullable(Int64), `long_11` Nullable(Int64), `long_12` Nullable(Int64), `long_13` Nullable(Int64), `long_14` Nullable(Int64), `long_15` Nullable(Int64), `str_1` Nullable(String), `str_2` Nullable(String), `str_3` Nullable(String), `str_4` Nullable(String), `str_5` Nullable(String), `str_6` Nullable(String), `str_7` Nullable(String), `str_8` Nullable(String), `str_9` Nullable(String), `str_10` Nullable(String), `str_11` Nullable(String), `str_12` Nullable(String), `str_13` Nullable(String), `str_14` Nullable(String), `str_15` Nullable(String), `double_1` Nullable(Float64), `double_2` Nullable(Float64), `double_3` Nullable(Float64), `double_4` Nullable(Float64), `double_5` Nullable(Float64), `tdc_a` Nullable(String), `tdc_b` Nullable(String), `tdc_c` Nullable(String), `page_path` String, `ref_path` String, `first_session_time` Nullable(Int64), `session_count` Nullable(Int32), `tpc` Nullable(String), `track_activity` Nullable(String), `track_brand` Nullable(String), `ref_uri` Nullable(String), `meta` Nullable(String), `track_slot` Nullable(String), `channel_id` Nullable(String), `idfa` Nullable(String), `unique_id` Nullable(String), `tdc_c_1` Nullable(String), `tdc_c_2` Nullable(String), `user_agent` Nullable(String), `business_scene` Nullable(String)) ENGINE = MergeTree() PARTITION BY (dt, flow) ORDER BY server_time SETTINGS index_granularity = 8192
先在所有的集群中每台机器上新建mergeTree表,然后以相同的字段新建分布式表,语句如下,也是每台机器都需要创建。
CREATE TABLE batman.user_events_business (`domain` String, `flow` String, `dt` Int32, `event_code` String, `d_source` Nullable(String), `vender_id` Nullable(Int32), `user_id` Nullable(String), `uuid` Nullable(String), `data_version` Nullable(String), `client_time` DateTime, `server_time` DateTime, `session_id` Nullable(String), `app_version` Nullable(String), `imei` Nullable(String), `dev_type` Nullable(String), `dev_platform` Nullable(String), `dev_platform_version` Nullable(String), `dev_manufacturer` Nullable(String), `client_ip` Nullable(String), `lat` Nullable(Float64), `lng` Nullable(Float64), `screen_height` Nullable(Int32), `screen_width` Nullable(Int32), `store_id` Nullable(Int32), `tdc` Nullable(String), `tdc_all` String, `project` Nullable(String), `env` Nullable(String), `sdk_type` Nullable(String), `sdk_version` Nullable(String), `data_seq` Nullable(Int32), `debug_mode` Nullable(String), `dev_carrier` Nullable(String), `dev_network_type` Nullable(String), `app_notification_state` Nullable(String), `store_group` Nullable(String), `page_url` Nullable(String), `page_uri` Nullable(String), `page_title` Nullable(String), `ref` Nullable(String), `long_1` Nullable(Int64), `long_2` Nullable(Int64), `long_3` Nullable(Int64), `long_4` Nullable(Int64), `long_5` Nullable(Int64), `long_6` Nullable(Int64), `long_7` Nullable(Int64), `long_8` Nullable(Int64), `long_9` Nullable(Int64), `long_10` Nullable(Int64), `long_11` Nullable(Int64), `long_12` Nullable(Int64), `long_13` Nullable(Int64), `long_14` Nullable(Int64), `long_15` Nullable(Int64), `str_1` Nullable(String), `str_2` Nullable(String), `str_3` Nullable(String), `str_4` Nullable(String), `str_5` Nullable(String), `str_6` Nullable(String), `str_7` Nullable(String), `str_8` Nullable(String), `str_9` Nullable(String), `str_10` Nullable(String), `str_11` Nullable(String), `str_12` Nullable(String), `str_13` Nullable(String), `str_14` Nullable(String), `str_15` Nullable(String), `double_1` Nullable(Float64), `double_2` Nullable(Float64), `double_3` Nullable(Float64), `double_4` Nullable(Float64), `double_5` Nullable(Float64), `tdc_a` Nullable(String), `tdc_b` Nullable(String), `tdc_c` Nullable(String), `page_path` String, `ref_path` String, `first_session_time` Nullable(Int64), `session_count` Nullable(Int32), `tpc` Nullable(String), `track_activity` Nullable(String), `track_brand` Nullable(String), `ref_uri` Nullable(String), `meta` Nullable(String), `track_slot` Nullable(String), `channel_id` Nullable(String), `idfa` Nullable(String), `unique_id` Nullable(String), `tdc_c_1` Nullable(String), `tdc_c_2` Nullable(String), `user_agent` Nullable(String), `business_scene` Nullable(String)) ENGINE = Distributed(cluster_shard, batman, user_events_business_shard, rand());
分布式表第一个字段表示是集群名称, batman为数据库, 原始表名, 分区
echo "SELECT a.* FROM (SELECT * FROM user_events WHERE dt=20191016 AND event_code='element_click') a JOIN (SELECT any(uuid) as uuid FROM user_events WHERE dt=20191014 AND event_code='element_click' GROUP BY str_2) b ON a.uuid=b.uuid;" | curl 127.0.0.1:8123?database=batman -udefault: -d @- > /tmp/element_click1016.sql
echo "select * from dws_traffic_metric_element_1d where time=20191016" | curl 127.0.0.1:8123?database=batman -udefault: -d @- >/tmp/metric1016.sql
以上为导出数据库为sql文件,选择格式
以下为导入数据库文件
cat /tmp/metric1016.sql | ckd --query="INSERT INTO batman.dws_traffic_metric_element_1d_shard FORMAT TabSeparated"
cat /tmp/element_click1016.sql | ckd --query="INSERT INTO batman.user_events_shard FORMAT TabSeparated"
需要注意的是两个表的字段一定是一致的,名字与类型。
ZooKeeper的客户端包括Java版本和C语言版本。使用Java版本连接zk的命令以下:
bin/zkCli.sh -server ip:port
执行此命令,客户端成功连接上zk,会有类似以下的输出,其中,包括“Welcome to ZooKeeper!”的欢迎语,以及其他一些连接的信息等。
lihaodeMacBook-Pro:bin lihao$ ./zkCli.sh -server 127.0.0.1:2182
Connecting to 127.0.0.1:2182
2016-06-29 07:51:39,679 [myid:] - INFO [main:Environment@100] - Client environment:zookeeper.version=3.4.8--1, built on 02/06/2016 03:18 GMT
2016-06-29 07:51:39,682 [myid:] - INFO [main:Environment@100] - Client environment:host.name=192.168.31.107
2016-06-29 07:51:39,682 [myid:] - INFO [main:Environment@100] - Client environment:java.version=1.8.0_77
2016-06-29 07:51:39,684 [myid:] - INFO [main:Environment@100] - Client environment:java.vendor=Oracle Corporation
……
2016-06-29 07:51:39,686 [myid:] - INFO [main:ZooKeeper@438] - Initiating client connection, connectString=127.0.0.1:2182 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@531d72ca
Welcome to ZooKeeper!
2016-06-29 07:51:39,715 [myid:] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1032] - Opening socket connection to server 127.0.0.1/127.0.0.1:2182. Will not attempt to authenticate using SASL (unknown error)
JLine support is enabled
2016-06-29 07:51:39,797 [myid:] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@876] - Socket connection established to 127.0.0.1/127.0.0.1:2182, initiating session
[zk: 127.0.0.1:2182(CONNECTING) 0] 2016-06-29 07:51:39,830 [myid:] - INFO [main-SendThread(127.0.0.1:2182):ClientCnxn$SendThread@1299] - Session establishment complete on server 127.0.0.1/127.0.0.1:2182, sessionid = 0x155996605050000, negotiated timeout = 30000
WATCHER::
WatchedEvent state:SyncConnected type:None path:null
连接成功后,便可以使用命令与zk服务进行交互。
help命令会输出zk支持的所有命令。
[zk: 127.0.0.1:2182(CONNECTED) 0] help
ZooKeeper -server host:port cmd args
stat path [watch]
set path data [version]
ls path [watch]
delquota [-n|-b] path
ls2 path [watch]
setAcl path acl
setquota -n|-b val path
history
redo cmdno
printwatches on|off
delete path [version]
sync path
listquota path
rmr path
get path [watch]
create [-s] [-e] path data acl
addauth scheme auth
quit
getAcl path
close
connect host:port
查看指定路径下包含的节点
[zk: localhost:2181(CONNECTED) 2] ls /
[zookeeper]
创建一个节点,例如:
[zk: localhost:2181(CONNECTED) 3] create /zk mydata
Created /zk
以上命令创建一个/zk节点,且其内容为 “myData”
显示指定路径下节点的信息,例如,我们检查一下上面的/zk节点最否创建成功
[zk: localhost:2181(CONNECTED) 4] get /zk
mydata
cZxid = 0xb59
ctime = Thu Jun 30 11:13:24 CST 2016
mZxid = 0xb59
mtime = Thu Jun 30 11:13:24 CST 2016
pZxid = 0xb59
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 6
numChildren = 0
可以看到/zk节点的内容为”myData”,且输出包含了znode的其他信息。有关各个字段的具体含义,请参见了本博客对znode的介绍。
设置节点的内容,例如:
[zk: localhost:2181(CONNECTED) 6] set /zk "anotherData"
……
[zk: localhost:2181(CONNECTED) 7] get /zk
"anotherData"
……
删除一个节点,例如:
[zk: localhost:2181(CONNECTED) 8] delete /zk
[zk: localhost:2181(CONNECTED) 9] get /zk
Node does not exist: /zk
以上就是zk客户端最常用的几个命令,从这几个命令我们也可以看到zk提供的API设计的简单。
ZooKeeper提供了多个由4个字母构成的命令,可以使用nc或者telnet来使用这些命令。例如:
telnet 127.0.0.1 2181
成功连接zk后,输入conf
会看到以下输出
clientPort=2181
dataDir=D:\Soft\zookeeper-3.4.6\data\version-2
dataLogDir=D:\Soft\zookeeper-3.4.6\data\version-2
tickTime=2000
maxClientCnxns=60
minSessionTimeout=4000
maxSessionTimeout=40000
serverId=0
或者使用nc来向zk发送4字母命令,例如:
echo conf | nc 192.168.229.161 2181
其他常用的四字母命令如下表格所示:
表格:ZooKeeper提供的四字母命令
命令 | 描述 |
---|---|
conf | zk服务配置的详细信息 |
stat | 客户端与zk连接的简要信息 |
srvr | zk服务的详细信息 |
cons | 客户端与zk连接的详细信息 |
mntr | zk服务目前的性能状况 |
wchs | watch的简要信息 |
wchc | watch的详细信息,客户端 -> watch的映射,线上环境要小心使用 |
wchp | watch的详细信息, znode -> 客户端的映射,线上环境要小心使用 |
例如,mntr 命令的输出:
echo mntr | nc 192.168.229.161 2181
zk_version 3.4.6-1569965, built on 02/20/2014 09:09 GMT
zk_avg_latency 0
zk_max_latency 565
zk_min_latency 0
zk_packets_received 95353
zk_packets_sent 95713
zk_num_alive_connections 3
zk_outstanding_requests 0
zk_server_state leader
zk_znode_count 20
zk_watch_count 12
zk_ephemerals_count 9
zk_approximate_data_size 1465
zk_open_file_descriptor_count 37
zk_max_file_descriptor_count 65535
zk_followers 2 - 只有leader进程才有此项输出
zk_synced_followers 2 - 只有leader进程才有此项输出
zk_pending_syncs 0 - 只有leader进程才有此项输出
时间 | 服务器 | 硬盘空间,已用,剩余, 占比,挂载 | 今天加入条数 | 昨天的条数 |
---|---|---|---|---|
2020-02-28 14:32:00 | 3.92 | 2.6T 2.0T 541G 80% /data | 22309081 | 42389236 |
2020-02-28 14:32:00 | 3.93 | 2.6T 1.5T 1.1T 59% /data | 25872039 | 48421182 |
2020-02-28 14:32:00 | 3.94 | 2.6T 1.5T 1.1T 58% /data | 25852293 | 48416636 |
2020-02-28 14:32:00 | 3.95 | 2.6T 2.0T 631G 76% /data | 22392791 | 42395138 |
2020-02-28 17:05:00 | 3.92 | 2.6T 2.0T 538G 80% /data | 29490116 | 42389236 |
2020-02-28 17:05:00 | 3.93 | 2.6T 1.5T 1.1T 59% /data | 33693959 | 48421182 |
2020-02-28 17:05:00 | 3.94 | 2.6T 1.5T 1.1T 58% /data | 33677791 | 48416636 |
2020-02-28 17:05:00 | 3.95 | 2.6T 2.0T 629G 76% /data | 29469741 | 42395138 |
2020-03-02 10:33:00 | 3.92 | 2.6T 2.1T 519G 80% /data | 201310121 | 48244442 |
2020-03-02 10:33:00 | 3.93 | 2.6T 1.6T 1021G 61% /data | 229969978 | 55101783 |
2020-03-02 10:33:00 | 3.94 | 2.6T 1.5T 1.1T 59% /data | 230010407 | 55121569 |
2020-03-02 10:33:00 | 3.92 | 2.6T 2.0T 593G 77% /data | 201386736 | 48260130 |