RKE 常见问题集锦
本文永久链接: https://www.xtplayer.cn/rke/rke-problem-sets/
如何添加额外的 arguments/binds/environment?
无法为主机创建 SSH 隧道
Failed to set up SSH tunneling for host [xxx.xxx.xxx.xxx]: Can’t retrieve Docker Info ,Failed to dial to /var/run/docker.sock: ssh: rejected: administratively prohibited (open failed)
当使用
RedHat/CentOS
作为操作系统时, 不能使用root
用户去登录主机,具体原因可以查看Bugzilla #1527565。需要添加一个非 root 用户并添加访问 docker.sock 的权限,配置方法请参考 通过非 root 用户管理 Docker。如上的报错,指定连接的用户没有权限访问 docker.sock,可以通过登录主机并运行
docker ps
命令来检查 。如果docker ps
命令无法执行,则需要执行命令sudo usermod -aG docker $USER;
将当前用户添加到docker
组。Failed to dial ssh using address [xxx.xxx.xxx.xxx:xx]: Error configuring SSH: ssh: no key found
在 RKE的
node
配置参数中,ssh_key_path
参数需要指定访问node
节点的私钥文件。此问题可能是因为没有正确指定ssh_key_path
文件路径或者没有权限访问该文件,或者指定的文件非正确的私钥文件。Failed to dial ssh using address [xxx.xxx.xxx.xxx:xx]: ssh: handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remain
指定的
ssh_key_path
文件对应的node
主机不正确,或者对应的用户名不正确。Failed to dial ssh using address [xxx.xxx.xxx.xxx:xx]: Error configuring SSH: ssh: cannot decode encrypted private keys.
如果要使用加密的私钥,则应使用
ssh-agent
密码来加载密钥。如果在运行 rke 命令的环境中找到SSH_AUTH_SOCK
环境变量,那么它将自动用于连接到节点,否则需要在 rke 配置文件中设置ssh_agent_auth: false
。