k8s部署问题集合

etcd部署:

1.systemd启动etcd服务的时候出现错误:Failed at step CHDIR spawning /usr/bin/etcd: No such file or directory或 Failed at step CHDIR spawning /bin/bash: No such file or directory

解决:
(1) etcd 的数据目录为 /var/lib/etcd,需在启动服务前创建这个目录,否则启动服务的时候会报错
(2) etcd.service服务配置文件中设置的工作目录WorkingDirectory=/var/lib/etcd/必须存在,否则会报以上错误

2.systemd启动etcd服务的时候出现错误:bind: cannot assign requested address

解决:etcd集群部署时,/etc/etcd/etcd.conf 中绑定的IP 没修改为本机ip

3.systemd启动etcd服务的时候,tail -f /var/log/messages有类似错误:etcd cluster is unavailable or misconfigured; error #0: dial tcp 127.0.0.1:4001: connect: connection refused

解决:
配置文件/etc/etcd/etcd.conf 中加入http://127.0.0.1:2379:
ETCD_LISTEN_CLIENT_URLS=“https://192.168.0.181:2379,http://127.0.0.1:2379”
ETCD_ADVERTISE_CLIENT_URLS=“https://192.168.0.181:2379,http://127.0.0.1:2379”

4.配置都正确,还报错可能的原因:

未添加etcd命令执行权限:# chmod +x /usr/bin/etcd

etcdctl命令使用问题:

提示告警信息:
[root@forimg system]# etcdctl
NAME:
etcdctl - A simple command line client for etcd.

WARNING:
Environment variable ETCDCTL_API is not set; defaults to etcdctl v2.
Set environment variable ETCDCTL_API=3 to use v3 API or ETCDCTL_API=2 to use v2 API.

USAGE:
etcdctl [global options] command [command options] [arguments…]

VERSION:
3.3.2

解决:
设置etcd版本号,默认为2,我们安装的版本为3.3.2,所以此处可设置为3;但是3的命名参数名称发生变化(-h 查看帮助),若不习惯,改设置为2。
在 文件~/.bashrc中加入一行改为3
export ETCDCTL_API=3

其他:

k8s实践9:一次失败的kubernetes集群崩溃处理记录
https://blog.51cto.com/goome/2375348

etcd 集群运维实践(备份、恢复/扩容/升级/日志收集/监控)
https://www.kubernetes.org.cn/5021.html

你可能感兴趣的:(docker-k8s)