不知道什么原因 试了很多次 就成功了一次
安装继续失败
JeffK零SK壹S
W1228 22:15:11.814047 21333 reset.go:99] [reset] Unable to fetch the kubeadm-config ConfigMap from cluster: failed to get config map: Get https://lb.kubesphere.local:6443/api/v1/namespaces/kube-system/configmaps/kubeadm-config?timeout=10s: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
访问不了 apiserver ,检查下防火墙,看下 lb 的防火墙是否关了
[root@master2 ~]# curl -k https://172.16.1.0:6443
{
“kind”: “Status”,
“apiVersion”: “v1”,
“metadata”: {
},
“status”: “Failure”,
“message”: "forbidden: User \“system:anonymous\” cannot get path \“/\”",
“reason”: “Forbidden”,
“details”: {
},
“code”: 403
}[root@master2 ~]#
是通的
RolandMa1986K零S
7158798
参考:https://cloud.tencent.com/document/product/214/5411#11
关于内网回环问题的说明
内网负载均衡不支持同一个内网 IP 既作为客户端又作为服务器,此时 CLB 看到的 Client IP 和 Server IP 是一样的,会导致访问不通。
当您的客户端需要同时作为服务器时,请至少绑定两个后端服务器。CLB 有自动避免回环的策略,当 Client A 访问负载均衡时,负载均衡会自动调度到非 Client A 的后端服务器上。
在这种情况下可能导致 master1 上的kubelet 无法访问 kube-apiserver, 但是master2 上的可以访问master1上的apiserver。
RolandMa1986
你这个说法我感觉有问题,刚刚创建了一个CLB,是在192.168.0.0/16这个上面,然后去绑定服务器,发现不在一个内网无法绑定,CLB肯定要跟云服务器在一个内网段,不然根本用不了
RolandMa1986K零S
7158798 这个跟腾讯文档上的说法不冲突。 文档上说是说172.16.0.0/16 段内的CVM与CLB不能回环到CVM自己。 并没有说CLB可以使用不同的子网。也就是CVM上如果有一个服务需要通过clb访问自己是不可以的。
你这么说我都有点蒙了 我是绑定了三台
master1 master2 master3
关于内网回环问题的说明
内网负载均衡不支持同一个内网 IP 既作为客户端又作为服务器,此时 CLB 看到的 Client IP 和 Server IP 是一样的,会导致访问不通。
当您的客户端需要同时作为服务器时,请至少绑定两个后端服务器。CLB 有自动避免回环的策略,当 Client A 访问负载均衡时,负载均衡会自动调度到非 Client A 的后端服务器上。
当您的客户端需要同时作为服务器时,请至少绑定两个后端服务器 我绑定了三台
RolandMa1986K零S
7158798 上面说法只是针对一般服务器而言的。你需要结合K8S具体情况。
在你的例子中,我看你是在master1 上执行的安装,假设master1是第一台服务,那么kubeadm和kubectl都是无法和kube-apiserver通讯的。
还有其他的情况,比如安装好第一台master1后需要安装网络插件,但是这个时候,kubelet 和API无法通讯,这个可能会导致你网络插件无法安装成功。
因此,如果遇到LB回环不能访问的情况,基本是无法保证安装成功的,而且无法高可用。
这个情况在Azure云也有类似情况。但是Azure提供了高级版本的LB解决了这个问题。
对于腾讯云CLB, 目前的解决方案就是使用公网CLB,使用公网IP作为lb地址。