环境:
centos7.8
ks2.1.1
存储:nfs
节点:3master 4worker
安装失败fat关键字(从上往下):
报错1
fatal: [life-node2]: FAILED! => {
"attempts": 20,
"changed": true,
"cmd": [
"/usr/bin/docker",
"images"
],
"delta": "0:00:00.728723",
"end": "2020-05-19 16:51:59.439029",
"rc": 1,
"start": "2020-05-19 16:51:58.710306"
}
STDERR:
Error response from daemon: client version 1.40 is too new. Maximum supported API version is 1.39
MSG:
non-zero return code
报错2
fatal: [life-master-01]: FAILED! => {
"changed": false,
"cmd": "/usr/local/bin/etcdctl --endpoints=https://10.10.7.20:2379,https://10.10.7.21:2379,https://10.10.7.22:2379 cluster-health | grep -q 'cluster is healthy'",
"delta": "0:00:00.777467",
"end": "2020-05-19 16:54:07.747975",
"rc": 1,
"start": "2020-05-19 16:54:06.970508"
}
STDERR:
Error: client: etcd cluster is unavailable or misconfigured; error #0: dial tcp 10.10.7.20:2379: getsockopt: connection refused
; error #1: dial tcp 10.10.7.22:2379: getsockopt: connection refused
; error #2: dial tcp 10.10.7.21:2379: getsockopt: connection refused
error #0: dial tcp 10.10.7.20:2379: getsockopt: connection refused
error #1: dial tcp 10.10.7.22:2379: getsockopt: connection refused
error #2: dial tcp 10.10.7.21:2379: getsockopt: connection refused
MSG:
non-zero return code
报错3
fatal: [life-master-01 -> life-master-01]: FAILED! => {
"attempts": 4,
"changed": false,
"cmd": "/usr/local/bin/etcdctl --no-sync --endpoints=https://10.10.7.20:2379 cluster-health | grep -q 'cluster is healthy'",
"delta": "0:00:02.716033",
"end": "2020-05-19 16:54:47.161078",
"rc": 1,
"start": "2020-05-19 16:54:44.445045"
}
STDERR:
Error: client: etcd cluster is unavailable or misconfigured; error #0: client: endpoint https://10.10.7.20:2379 exceeded header timeout
error #0: client: endpoint https://10.10.7.20:2379 exceeded header timeout
MSG:
non-zero return code
关于报错1,使用docker version 查看api版本是1.40,通过在/etc/profile 设置了环境变量
export DOCKER_API_VERSION=1.39
重启后,docker version版本为1.39
Client: Docker Engine - Community
Version: 19.03.9
API version: 1.39
Go version: go1.13.10
Git commit: 9d988398e7
Built: Fri May 15 00:25:27 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.7
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 2d0083d
Built: Thu Jun 27 17:26:28 2019
OS/Arch: linux/amd64
Experimental: false
卸载安装,重新安装,仍出现该报错err
关于报错2,确认防火墙是关闭的,docker ps排查发现master的3个节点只有安装脚本的那个节点有etcd实例,另外两个master没有启动,导致etcd集群无法正常启动
不清楚etcd的无法分发是不是因为docker version的问题呢,如果是除了加环境变量设置API版本,有其他解决方式吗?