tiup reload失败

tidb集群版本:4.00

使用tiup cluster reload test-cluster;命令,失败

2020-11-16T16:20:27.213+0800 DEBUG TaskFinish {“task”: “MonitoredConfig: cluster=test-cluster, user=tidb, node_exporter_port=9100, blackbox_exporter_port=9115, deploy_dir=/home/tidb/deploy/monitor-9100, data_dir=[/home/tidb/deploy/monitor-9100/data/monitor-9100], log_dir=/home/tidb/deploy/monitor-9100/data/deploy/monitor-9100/log, cache_dir=/home/tidb/.tiup/storage/cluster/clusters/test-cluster/config-cache”, “error”: “Process exited with status 1”}
2020-11-16T16:20:27.213+0800 DEBUG TaskFinish {“task”: “UserSSH: user=tidb, host=10.30.4.119\ MonitoredConfig: cluster=test-cluster, user=tidb, node_exporter_port=9100, blackbox_exporter_port=9115, deploy_dir=/home/tidb/deploy/monitor-9100, data_dir=[/home/tidb/deploy/monitor-9100/data/monitor-9100], log_dir=/home/tidb/deploy/monitor-9100/data/deploy/monitor-9100/log, cache_dir=/home/tidb/.tiup/storage/cluster/clusters/test-cluster/config-cache”, “error”: “Process exited with status 1”}
2020-11-16T16:20:27.215+0800 INFO SSHCommand {“host”: “10.30.4.118”, “port”: “7022”, “cmd”: “export LANG=C; PATH=$PATH:/usr/bin:/usr/sbin sudo -H -u root bash -c “mv /tmp/node_exporter_2b8d4ff5-a707-4370-a4d8-07c6c7a1d282.service /etc/systemd/system/node_exporter-9100.service””, “stdout”: “”, “stderr”: “”}
2020-11-16T16:20:27.228+0800 INFO SSHCommand {“host”: “10.30.4.120”, “port”: “7022”, “cmd”: “export LANG=C; PATH=$PATH:/usr/bin:/usr/sbin sudo -H -u root bash -c “mv /tmp/node_exporter_e9a12227-d6c1-449f-81f9-2f1d6c84ce7b.service /etc/systemd/system/node_exporter-9100.service””, “stdout”: “”, “stderr”: “”}
2020-11-16T16:20:27.303+0800 INFO SSHCommand {“host”: “10.30.4.121”, “port”: “7022”, “cmd”: “export LANG=C; PATH=$PATH:/usr/bin:/usr/sbin sudo -H -u root bash -c “mv /tmp/blackbox_exporter_6a2a1cec-d151-4eb3-bf87-2b11a7f170d0.service /etc/systemd/system/blackbox_exporter-9115.service””, “stdout”: “”, “stderr”: “”}

相关tiup配置信息:

user: tidb
tidb_version: v4.0.0
last_ops_ver: |-
v1.0.9 tiup
Go Version: go1.13
Git Branch: master
GitHash: 41fbacf
topology:
global:
user: tidb
ssh_port: 22
deploy_dir: deploy
data_dir: data
os: linux
arch: amd64
monitored:
node_exporter_port: 9100
blackbox_exporter_port: 9115
deploy_dir: deploy/monitor-9100
data_dir: data/monitor-9100
log_dir: deploy/monitor-9100/log
server_configs:
tidb: {}
tikv:
raftstore.sync-log: false
pd: {}
tiflash: {}
tiflash-learner: {}
pump: {}
drainer: {}
cdc: {}
tidb_servers:

  • host: 10.30.4.118
    ssh_port: 7022
    imported: true
    port: 4000
    status_port: 10080
    deploy_dir: /data/deploy
    log_dir: /data/deploy/log
    arch: amd64
    os: linux
    tikv_servers:
  • host: 10.30.4.121
    ssh_port: 7022
    imported: true
    port: 20160
    status_port: 20180
    deploy_dir: /data/deploy
    data_dir: /data/deploy/data
    log_dir: /data/deploy/log
    arch: amd64
    os: linux
  • host: 10.30.4.120
    ssh_port: 7022
    imported: true
    port: 20160
    status_port: 20180
    deploy_dir: /data/deploy
    data_dir: /data/deploy/data
    log_dir: /data/deploy/log
    arch: amd64
    os: linux
  • host: 10.30.4.119
    ssh_port: 7022
    imported: true
    port: 20160
    status_port: 20180
    deploy_dir: /data/deploy
    data_dir: /data/deploy/data
    log_dir: /data/deploy/log
    arch: amd64
    os: linux
    tiflash_servers: []
    pd_servers:
  • host: 10.30.4.118
    ssh_port: 7022
    imported: true
    name: pd_ALI-D-YX-TIDB-PD-01
    client_port: 2379
    peer_port: 2380
    deploy_dir: /data/deploy
    data_dir: /data/deploy/data.pd
    log_dir: /data/deploy/log
    arch: amd64
    os: linux
    monitoring_servers:
  • host: 10.30.4.118
    ssh_port: 7022
    imported: true
    port: 9090
    deploy_dir: /data/deploy
    data_dir: /data/deploy/prometheus2.0.0.data.metrics
    log_dir: /data/deploy/log
    storage_retention: 30d
    arch: amd64
    os: linux
    grafana_servers:
  • host: 10.30.4.118
    ssh_port: 7022
    imported: true
    port: 3000
    deploy_dir: /data/deploy
    arch: amd64
    os: linux
    alertmanager_servers:
  • host: 10.30.4.118
    ssh_port: 7022
    imported: true
    web_port: 9093
    cluster_port: 9094
    deploy_dir: /data/deploy
    data_dir: /data/deploy/data.alertmanager
    log_dir: /data/deploy/log
    arch: amd64
    os: linux

“host”: “10.30.4.118”, “port”: “7022”, “c
检查下 tmp 目录是否空间满了

sudo -H -u root bash -c “mv /tmp/blackbox_exporter_6a2a1cec-d151-4eb3-bf87-2b11a7f170d0.service /etc/systemd/system/blackbox_exporter-9115.service”

这个命令能执行成功吗?(如果 /tmp/blackbox_exporter_6a2a1cec-d151-4eb3-bf87-2b11a7f170d0.service 不存在可已用别的什么文件代替)

后来经过自己研究,并结合 扩容tidb节点总是timeout失败,如何加个超时时间 中描述:

【 现在需要恢复下 node_exporter_port

  1. 将 edit-config 中 monitored 配置信息剪贴到 scale-out 文件(vi 一个空文件放进去)中,目的是将 monitored 重新部署,恢复两个监控组件的基本信息。(尝试下,目前没有做过类似的测试)
monitored:
  node_exporter_port: 9100
  blackbox_exporter_port: 9115
```】

感觉是我tiup配置中【monitored:
node_exporter_port: 9100
blackbox_exporter_port: 9115
deploy_dir: deploy/monitor-9100
data_dir: data/monitor-9100
log_dir: deploy/monitor-9100/log】问题。

解决步骤:
1.使用tiup cluster stop test-cluster,停掉整个集群。
2.修改tiup文件,/home/tidb/.tiup/storage/cluster/clusters/test-cluster/meta.yaml中的 目录部分到正确路径
monitored:
   node_exporter_port: 9100
   blackbox_exporter_port: 9115
   deploy_dir: /data/deploy
   data_dir: /data/deploy/scripts
   log_dir: /data/deploy/log
3.使用 tiup cluster reload test-cluster。
4.重启整个集群 tiup cluster start test-cluster

**最后完成。**
**特别说明,在集群已经启动的状态下,如果使用tiup reload命令,报错。千万先别急着stop整个集群。真的很危险,我目录改对了,才启动成功,不然整个集群使用tiup 都启动不起来。**

请问下,edit config 修改了什么参数?后面为何需要修改 node exporter port 来解决这个问题?

没有改过,默认配置目录的问题,我们不知道,因为我们目录不是系统默认目录。以下tiup配置默认目录
deploy_dir: deploy/monitor-9100
data_dir: data/monitor-9100
log_dir: deploy/monitor-9100/log

这个原因造成

请问 tiup cluster 版本多少

这个目录可以写成绝对路径

版本 4.00
跟绝对不绝对路径无关,你们提供的默认 tiup 配置文件中

deploy_dir: deploy/monitor-9100
data_dir: data/monitor-9100
log_dir: deploy/monitor-9100/log
造成,因为用户不知道这个是 “示例”填写路径。跟实际用户使用环境路径有差异。这个原因,之前我已经阐明了我的观点

额, 了解了

默认的配置文件指的是这个? 这个只是模版, tiup 没有默认的配置文件哈.

https://github.com/pingcap/tiup/blob/afcaf6f0e0304d1da29e3031b611a8fcf5cd3b5b/examples/topology.example.yaml#L9

可能新安装整个集群后,是像您说 tiup下【monitored】没指定目录。我没试过,我们是从3.0.5版本安装官方指导手册,升级到4.00的。升级后 tiup 下 【monitored】也没有改过任何,也不懂不会随便改生产。我怀疑可能是低版本升级到高版本时问题。要复现整个我怀疑,我这边有点困难。。。。。。

环境是从 tidb-ansible import 过来的, 但是import 之后, monitor 的 dir 和 tidb-ansible 不一样了? 是这样吗

一样不一样不清楚,我刚才特地翻看 备份的tidb-ansible配置文件inventory.ini里,没有关于tiup工具【monitored】描述。之前印象import是从inventory.ini里取数据的吧?

这个是的.

monitoring_servers 对应 nodeexporter 和 blockbox exporter 的地址, 这个对应 inventory 中 monitoring_servers 的配置, 就是全部的集群 host

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。