[TOC]
### kubeadm 初始化出错
#### etcd出错
##### 现象

~~~
I1116 04:19:55.176382 2485 etcd.go:106] etcd endpoints read from pods: https://192.168.222.8:2379,https://192.168.222.9:2379,https://192.168.222.10:2379
error execution phase check-etcd: error syncing endpoints with etc: dial tcp 192.168.222.8:2379: connect: connection refused
~~~
如果出现这个错误,很可能是因为该节点执行过`kubeadm reset`之后又执行`kubeadm join`, 因为使用kubeadm安装集群,每个节点上都会有一个etcd的pod,其中在`kubectl delete node`之后,`etcd`里面还有残留信息,所以才导致节点不能重新`join`到集群
##### 解决
1、先删除k8s集群中的信息
~~~
kubectl edit configmaps -n kube-system kubeadm-config
~~~
将这部分的内容删掉,然后保存退出

2、删除etcd中的信息
~~~
#进入到 etcd 中去
kubectl exec -it etcd-cn-hongkong.i-j6caps6av1mtyxyofmrx sh -n kube-system
# 这部分命令是在网上找的,操作的内容是删除etcd的成员信息
export ETCDCTL_API=3
alias etcdctl='etcdctl --endpoints=https://172.31.182.153:2379 --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key'
etcdctl member list
# 返回的成员信息
7aa3b1f6156ec616, started, kubeadm-1, https://192.168.222.8:2380, https://192.168.222.8:2379
aebe5b073769fe15, started, kubeadm-3, https://192.168.222.10:2380, https://192.168.222.10:2379
f900b775eaf27735, started, kubeadm-2, https://192.168.222.9:2380, https://192.168.222.9:2379
#删除成员信息
etcdctl member remove 7aa3b1f6156ec616
Member 7aa3b1f6156ec616 removed from cluster c9a2c9188c38b3a
~~~
(这部分的命令建议现在编辑器中复制粘贴好,因为`exec`进入到容器后,可能几秒钟没有操作行为,会话就会被断开)
3、最后节点还要重新`reset`之后再`join`一次
- 一、K8S的安装
- 1.1 安装环境
- 1.2 问题汇总
- 1.3 事前准备
- 1.4 安装配置负载均衡
- 1.5 安装K8S软件
- 1.6 初始化kubeadm
- 1.7 添加控制节点
- 1.8 添加计算节点
- 1.9 安装故障问题处理
- 1.10 安装管理dashboard
- 1.11 编写测试Pod
- 1.12 从外部访问集群中的Pod
- 1.13 部署metrics-server指标采集
- 二、Pod管理
- 2.1 Pod 资源需求和限制
- 2.2 Init 容器
- 2.3 Pod 健康检查(探针)和重启策略
- 2.4 Pod 生命周期(钩子Hook)
- 2.5 静态Pod
- 2.6 初始化容器(init container)
- 2.7 资源限制
- 三、资源控制器
- 3.1 Deployment
- 3.2 StatefulSet
- 3.3 DaemonSet
- 3.4 Job
- 3.5 定时任务
- 3.6 准入控制器
- 3.7 自动伸缩
- 3.8 ReplicaSet
- 四、存储
- 4.1 Secret 管理敏感信息
- 4.2 ConfigMap 存储配置
- 4.3 Volume
- 4.4 PV
- 4.5 PVC
- 4.6 StorageClass
- 4.7 暴露宿主机信息给Pod
- 五、服务Service
- 5.1 Service 资源
- 5.2 服务发现
- 5.3 服务暴露
- 5.4 Ingress 资源
- 5.5 Ingress 专题
- 5.6 traefik 2.X版本使用
- 六、认证、授权、准入控制
- 6.1 服务账户
- 6.2 LimitRange资源与准入控制器
- 6.3 ResourceQuota 资源与准入控制器
- 七、Helm
- 7.1 Helm 安装
- 八、 istio
- 8.1 istio 介绍
- 8.2 iotis 安装
- 九、calico
- 9.1 两种网络模式
- 9.2 全互联模式 与 路由反射模式
- 9.3 BGP跨网段(大型网络)
- 十、Ingress
- 10.1 安装 LoadBalancer
- 10.2 部署 ingress-nginx
- 10.3 Ingress-nginx 的使用
- 10.4 开启TCP和UDP
- 使用中的问题
- CSI Node问题
