TiUP 扩容提示没有权限

你好,请问采用用户名与密码方式在新机器上增加tidb、tikv节点时,提示没有权限是什么原因呢?

以下是log文件:
tiup-cluster-debug-2020-05-14-18-00-52.log (24.8 KB)

你好,

报错如下: cannot create directory ‘/home/tidb’: Permission denied

尝试使用 root 用户登录目标服务器看是否执行成功 su - tidb -c 'test -d ~/.ssh || mkdir -p ~/.ssh && chmod 700 ~/.ssh'

你好,指令是不是少了符号?

请问中控机和目标机器的root密码是相同的吗? 当前要扩容的这个机器上有其他实例吗?

是的,root密码相同,ssh可以连接上,需要在这台新机器上新增一个tidb节点和一个tikv节点

你好,我试了一下,感觉是tidb-scale在新节点的环境配置阶段存在一些问题:

1、下图是我部署集群时直接在新节点132上就设立tidb、tikv,是成功的:

2、销毁集群后,我在132上userdel -r tidb删除tidb用户及其文件夹,重新部署集群,此时先不在132上部署:

3、集群建立后,当我希望在132上扩容时,出现了权限问题:

您好,辛苦使用这个命令查看下

sudo -H -u root bash -c “su - tidb -c ‘test -d ~/.ssh || mkdir -p ~/.ssh && chmod 700 ~/.ssh’”

ssh 到目标机器root用户后,执行结果如下:

抱歉,上面粘贴的命令单双引号失误显示成中文的,麻烦把引号改成英文再次执行,多谢

sudo -H -u root bash -c "su - tidb -c 'test -d ~/.ssh || mkdir -p ~/.ssh && chmod 700 ~/.ssh'"

是ssh到root吧?提示

您好,辛苦把这一步的操作的日志提供下,您上面提供的日志是有 tidb 用户的。

这一步操作需要查看哪个日志?

这一步扩容的日志。

您这边提供的最早的报错是执行上述命令报错权限问题,但是您这边刚执行命令,发现用户是不存在的,和上述日志不能对应。所以需要查看下扩容出问题的情况。

哦,我明白你意思了,我重新扩容后现在ssh过去,执行你给的指令,现在提示如下:

日志如下:
tiup-cluster-debug-2020-05-15-12-08-23.log (24.9 KB)

好的,您好,您这边方便登陆下 132 机器上 ll 看下 /home/tidb 的权限吗?

ll /home/tidb

你好,权限如下:

image

大概率是这里的原因,权限不对

当执行 deploy --user user_a -i 或者 password 连到目标机器时,user_a 会通过 ssh -i 或者密码登陆目标机器 ,然后创建 user_b 用户 user_b sudo 权限。

其中 user_a 为 --user 指定的部署用户,有 sudo 权限 和 ssh 权限; user_b 为 topology.yaml 配置的部署用户。

是这样的,deploy到一个新机器的时候是成功的,但想通过scale-out到一个新机器是报权限失败的,用的同样都是root用户,所以我觉得是否是scale-out功能内部有些问题?可以参见我此处的回复

好的,已反馈给研发同学,请稍后。

你好,可以提供下 ~/.tiup/storage/cluster/clusters/tidb-test/meta.yaml 以及 tidb-scale.yaml 吗