tiflash磁盘使用率不均匀

tiflash的数据目录有4个 data 目录上的数据比其他目录数据多很多
image
请问如何调整均匀? 感谢

1 个赞

看官网tiflash参数

1 个赞

好的 是这个链接吗?
https://docs.pingcap.com/zh/tidb/stable/tiflash-configuration#tiflash-配置参数

1 个赞

对的,具体你可以仔细看一下多盘设置相关的几个参数

1 个赞

好的 感谢~

1 个赞

不过下次提帖子,建议集群版本啥的信息,填写上,因为有些问题是已知的,你不写没法判断,可能情况太多了。没发回答

2 个赞

嗯呢~

1 个赞

:+1::+1::+1:

1 个赞

我们TIDB的版本是 4.0.13
这是我们的tiflash配置文件内容:

default_profile = “default”
display_name = “TiFlash”
http_port = 8123
listen_host = “0.0.0.0”
mark_cache_size = 5368709120
path = “/data/tidb-data/tiflash-9000,/data/tidb-data1/tiflash-9000,/data1/tidb-data/tiflash-9000,/data2/tidb-data/tiflash-9000,/data3/tidb-data/tiflash-9000”
tcp_port = 9000
tmp_path = “/data/tidb-data/tiflash-9000/tmp”

[application]
runAsDaemon = true

[flash]
service_addr = “172.19.244.63:3930”
tidb_status_addr = “172.19.244.69:10080,172.19.244.70:10080,172.19.244.71:10080”
[flash.flash_cluster]
cluster_manager_path = “/data/tidb-deploy/tiflash-9000/bin/tiflash/flash_cluster_manager”
log = “/data/tidb-deploy/tiflash-9000/log/tiflash_cluster_manager.log”
master_ttl = 60
refresh_interval = 20
update_rule_interval = 5
[flash.proxy]
config = “/data/tidb-deploy/tiflash-9000/conf/tiflash-learner.toml”

[logger]
count = 20
errorlog = “/data/tidb-deploy/tiflash-9000/log/tiflash_error.log”
level = “debug”
log = “/data/tidb-deploy/tiflash-9000/log/tiflash.log”
size = “1000M”

[profiles]
[profiles.default]
max_memory_usage = 0

[raft]
pd_addr = “172.19.244.64:2379,172.19.244.65:2379,172.19.244.66:2379”

[status]
metrics_port = 8234

请问,能否关闭 flash.proxy

1 个赞

不能,各有各的用处,建议看看官网,官网上是有解释他们各自的作用的

1 个赞

flash.proxy的配置如下:
log-file = “/data/tidb-deploy/tiflash-9000/log/tiflash_tikv.log”

[raftstore]
apply-pool-size = 4
store-pool-size = 4

[rocksdb]
wal-dir = “”

[security]
ca-path = “”
cert-path = “”
key-path = “”

[server]
addr = “0.0.0.0:20170”
advertise-addr = “172.19.244.63:20170”
advertise-status-addr = “172.19.244.63:20292”
engine-addr = “172.19.244.63:3930”
status-addr = “0.0.0.0:20292”

[storage]
data-dir = “/data/tidb-data/tiflash-9000/flash”

那我现在还能更改 path 路径吗?
比如:
[storage]
data-dir = “/data/tidb-data/tiflash-9000/flash”
改成:
[storage]
data-dir = “/data/tidb-data/tiflash-9000/flash,/data1/tidb-data/tiflash-9000/flash./data2/tidb-data/tiflash-9000/flash,/data3/tidb-data/tiflash-9000/flash”
这样多盘方式

1 个赞

不能,只能扩缩容

1 个赞

flash.proxy的配置如下:
log-file = “/data/tidb-deploy/tiflash-9000/log/tiflash_tikv.log”

[raftstore]
apply-pool-size = 4
store-pool-size = 4

[rocksdb]
wal-dir = “”

[security]
ca-path = “”
cert-path = “”
key-path = “”

[server]
addr = “0.0.0.0:20170”
advertise-addr = “172.19.244.63:20170”
advertise-status-addr = “172.19.244.63:20292”
engine-addr = “172.19.244.63:3930”
status-addr = “0.0.0.0:20292”

[storage]
data-dir = “/data/tidb-data/tiflash-9000/flash”

能更改成多个目录吗?
比如:
[storage]
data-dir = “/data/tidb-data/tiflash-9000/flash”
改成:
[storage]
data-dir = “/data/tidb-data/tiflash-9000/flash,/data1/tidb-data/tiflash-9000/flash./data2/tidb-data/tiflash-9000/flash,/data3/tidb-data/tiflash-9000/flash”
这样多盘方式

不能,这个也不需要吧,这个空间占用不大吧

好的
在不扩容、不影响服务的前提下, 如何让4个盘的空间均衡呢?
磁盘的当前使用率如下:
/dev/nvme0n1 xfs 1.8T 1.7T 129G 93% /data
/dev/nvme1n1 xfs 1.8T 461G 1.3T 26% /data1
/dev/nvme2n1 xfs 1.8T 466G 1.3T 27% /data2
/dev/nvme3n1 xfs 1.8T 447G 1.4T 25% /data3

tiflash的存储目录有5个:
path = “/data/tidb-data/tiflash-9000,/data/tidb-data1/tiflash-9000,/data1/tidb-data/tiflash-9000,/data2/tidb-data/tiflash-9000,/data3/tidb-data/tiflash-9000”
现在/data 这个磁盘的最大的空间使用就是:/data/tidb-data/tiflash-9000这个目录 占用了近1.4T 其他4个大概400G多点的样子
image

方便提供一下。tiflash 日志不,这个差距不是很合理

先单独给当前的日志 历史日志文件太大 无法上传。。
tiflash.log.tar (334 字节)

334字节,好像有问题,我解压出的文件是空的,你要不检查一下

不好意思 重传了份
tiflash.log.tar (23.6 MB)tiflash_error.log.zip (482.0 KB)

麻烦执行下面的命令,确认下一些目录大小的情况

find <tiflash-data-dir>/kvstore/ -name '*page_*' | xargs du -sh | sort -k1hr | head -n 50
find <tiflash-data-dir>/kvstore/ -name '*page_*' | wc -l

du -sh <tiflash-data-dir>/data/* | sort -k1hr | head -n 50

需要把 <tiflash-data-dir> 替换为 path 参数的这些目录,逐个执行下哈
path = "/data/tidb-data/tiflash-9000,/data/tidb-data1/tiflash-9000,/data1/tidb-data/tiflash-9000,/data2/tidb-data/tiflash-9000,/data3/tidb-data/tiflash-9000"