Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MetalLB安装和安装;Kubernetes上的组态_Kubernetes_Timeout_Metallb - Fatal编程技术网

MetalLB安装和安装;Kubernetes上的组态

MetalLB安装和安装;Kubernetes上的组态,kubernetes,timeout,metallb,Kubernetes,Timeout,Metallb,我在Kubernetes群集上安装并配置了MetalLB。然后尝试创建LoadBalancer类型的服务。 (节点端口类型服务工作正常。) 但是,EXTERNAL-IP处于挂起状态 我在MetalLB控制器吊舱上发现以下错误。有人可以帮助解决这个问题 当我尝试安装nginx入口控制器时,我也有类似的问题 # kubectl logs controller-65db86ddc6-4hkdn -n metallb-system {"branch":"HEAD"

我在Kubernetes群集上安装并配置了MetalLB。然后尝试创建LoadBalancer类型的服务。 (节点端口类型服务工作正常。)

但是,EXTERNAL-IP处于挂起状态

我在MetalLB控制器吊舱上发现以下错误。有人可以帮助解决这个问题

当我尝试安装nginx入口控制器时,我也有类似的问题

# kubectl logs controller-65db86ddc6-4hkdn -n metallb-system
{"branch":"HEAD","caller":"main.go:142","commit":"v0.9.5","msg":"MetalLB controller starting version 0.9.5 (commit v0.9.5, branch HEAD)","ts":"2021-03-21T09:30:28.244151786Z","version":"0.9.5"}
I0321 09:30:58.442987       1 trace.go:81] Trace[1298498081]: "Reflector pkg/mod/k8s.io/client-go@v0.0.0-20190620085101-78d2af792bab/tools/cache/reflector.go:98 ListAndWatch" (started: 2021-03-21 09:30:28.44033291 +0000 UTC m=+1.093749549) (total time: 30.001755286s):
Trace[1298498081]: [30.001755286s] [30.001755286s] END
E0321 09:30:58.443118       1 reflector.go:125] pkg/mod/k8s.io/client-go@v0.0.0-20190620085101-78d2af792bab/tools/cache/reflector.go:98: Failed to list *v1.Service: Get https://10.96.0.1:443/api/v1/services?limit=500&resourceVersion=0: dial tcp 10.96.0.1:443: i/o timeout
I0321 09:30:58.443263       1 trace.go:81] Trace[2019727887]: "Reflector pkg/mod/k8s.io/client-go@v0.0.0-20190620085101-78d2af792bab/tools/cache/reflector.go:98 ListAndWatch" (started: 2021-03-21 09:30:28.342686736 +0000 UTC m=+0.996103363) (total time: 30.100527846s):
Trace[2019727887]: [30.100527846s] [30.100527846s] END
E0321 09:30:58.443298       1 reflector.go:125] pkg/mod/k8s.io/client-go@v0.0.0-20190620085101-78d2af792bab/tools/cache/reflector.go:98: Failed to list *v1.ConfigMap: Get https://10.96.0.1:443/api/v1/namespaces/metallb-system/configmaps?fieldSelector=metadata.name%3Dconfig&limit=500&resourceVersion=0: dial tcp 10.96.0.1:443: i/o timeout
I0321 09:31:29.444994       1 trace.go:81] Trace[1427131847]: "Reflector pkg/mod/k8s.io/client-go@v0.0.0-20190620085101-78d2af792bab/tools/cache/reflector.go:98 ListAndWatch" (started: 2021-03-21 09:30:59.443509127 +0000 UTC m=+32.096925747) (total time: 30.001450692s):
Trace[1427131847]: [30.001450692s] [30.001450692s] END
下面是我的环境

# kubectl version --short
Client Version: v1.20.4
Server Version: v1.20.4

Calico CNI is installed.

# Installing Flannel network-plug-in for cluster network (calico)
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

Metal LB 0.9.5 is install & configured.
从节点进行的访问正在正常工作。 #旋度-k

但是,从POD无法访问,如下所示。我想,这应该是工作

# kubectl -n metallb-system exec -it controller-65db86ddc6-4hkdn /bin/sh
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
4: eth0@if5: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1480 qdisc noqueue state UP
    link/ether 76:54:44:f1:8f:50 brd ff:ff:ff:ff:ff:ff
    inet 192.168.41.146/32 brd 192.168.41.146 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::7454:44ff:fef1:8f50/64 scope link
       valid_lft forever preferred_lft forever
/bin $ **wget --no-check-certificate  https://10.96.0.1:443/
Connecting to 10.96.0.1:443 (10.96.0.1:443)
^C**
/bin $
#kubectl-n metallb系统执行器-it控制器-65db86ddc6-4hkdn/bin/sh
$ip a
1:lo:mtu 65536 qdisc noqueue状态未知qlen 1000
链接/环回00:00:00:00:00 brd 00:00:00:00:00:00:00
inet 127.0.0.1/8范围主机lo
永远有效\u lft首选\u lft永远有效
inet6::1/128作用域主机
永远有效\u lft首选\u lft永远有效
2: tunl0@NONE:mtu 1480 qdisc noop状态下降qlen 1000
链接/ipip 0.0.0.0 brd 0.0.0.0
4: eth0@if5:mtu 1480 qdisc noqueue state UP
链接/以太76:54:44:f1:8f:50 brd ff:ff:ff:ff:ff:ff:ff:ff
inet 192.168.41.146/32 brd 192.168.41.146作用域全局eth0
永远有效\u lft首选\u lft永远有效
inet6 fe80::7454:44ff:fef1:8f50/64范围链接
永远有效\u lft首选\u lft永远有效
/bin$**wget——无支票证书https://10.96.0.1:443/
连接到10.96.0.1:443(10.96.0.1:443)
^C**
/垃圾箱$
  • metallb控制器吊舱发出的低于ping 10.96.0.1命令的输出是什么
  • 请同时提供以下命令的输出
  • 如果您能够ping但不能wget,那么这就是防火墙问题

  • Kubernetes文档中的URL涵盖了服务可能无法工作的所有场景


我更改了k8s群集配置,如下所示。现在它起作用了

kubeadm init --apiserver-advertise-address=192.168.64.150 --apiserver-cert-extra-sans=192.168.64.150 --node-name kmaster --pod-network-cidr=10.10.0.0/16


cat /etc/hosts
192.168.64.150 kmaster
192.168.64.151 kworker1
我改变印花布的配置如下

- name: CALICO_IPV4POOL_CIDR
  value: "10.10.0.0/16"    ### Same pod-cidr in calico

最后,
10.96.0.1
应该指向默认名称空间中的kubernetes服务。由于某些原因,您的metallb控制器无法到达它。可能尝试重新启动它(如果它在该节点上运行的calico/SDN Pod之前启动)。确保控制器可以访问SDN中的其他服务。确保没有阻止控制器访问kubernetes API的网络策略。确保kubernetes服务/端点实际将您发送到kubernetes API节点。
kubectl -n metallb-system exec controller-65db86ddc6-4hkdn -- ip r
kubectl -n metallb-system exec controller-65db86ddc6-4hkdn -- ip n
kubeadm init --apiserver-advertise-address=192.168.64.150 --apiserver-cert-extra-sans=192.168.64.150 --node-name kmaster --pod-network-cidr=10.10.0.0/16


cat /etc/hosts
192.168.64.150 kmaster
192.168.64.151 kworker1
- name: CALICO_IPV4POOL_CIDR
  value: "10.10.0.0/16"    ### Same pod-cidr in calico