问题标签 [flanneld]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
363 浏览

kubernetes - 创建子网管理器失败:asn1:结构错误:标签不匹配

虽然此错误消息只是一个症状,但我的问题是真实的。

我的裸机集群遇到了证书过期的情况。我设法更新了所有证书,但重新启动后,大多数 pod 都无法工作。似乎负责的吊舱是法兰绒吊舱(crashloopbackoff)。

法兰绒豆荚展示的日志

在主机上甚至没有法兰绒接口了。既不是 systemd 文件

手动运行 flanneld 会产生此输出

可用的证据指向几个方向,但在检查这些时,它指向其他方向。所以我需要一个指向导致问题的部分的指针。

  • 是etcd吗?
  • 是新的etcd证书吗?
  • 是缺少法兰绒接口吗?
  • 是非操作法兰绒吗?
  • 是这里没有列出的东西吗?

如果这里缺少信息,请询问,我一定可以提供。

关键规格:-主机:ubuntu 18.04-kubeadm 1.13.2

谢谢你和最好的问候,烤饼

更新1

不幸的是,我不记得一年前我是如何安装法兰绒的。kubectl 版本也是 1.13.2,集群也是

@hanx 的链接帖子是关于更新认证的,而不是损坏的网络覆盖,因此不适用。

0 投票
1 回答
173 浏览

kubernetes - 无法识别“https://raw.githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-rbac.yml”:没有匹配

需要帮忙。

我必须按照说明安装 Exchange Listener https://community.terrasoft.ru/articles/1-realnyy-primer-po-razvertyvaniyu-servisa-exchange-listener-s-ispolzovaniem-kubernetes 一个月前我这样做了,但现在我看到了错误

adminka@l-test:~$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-rbac.yml 无法识别“https://raw .githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-rbac.yml”:版本“rbac.authorization.k8s.io/v1beta1”中没有匹配类型“ClusterRole”无法识别“ https://raw.githubusercontent.com/coreos/flannel/master/Documentation/k8s-manifests/kube-flannel-rbac.yml”:版本“rbac.authorization.k8s.io/v1beta1”中没有匹配类型“ClusterRoleBinding” "

需要做什么?

adminka@l-test:~$ kubectl -n kube-system get pods --all-namespaces NAMESPACE NAME READY STATUS
RESTARTS AGE kube-system coredns-78fcd69978-mrb58 1/1
Running 0 2d12h kube-system coredns-78fcd69978-pwp2n
1 /1 运行 0 2d12h kube-system etcd-l-test
1/1 运行 0 2d12h kube-system kube-apiserver-l-test 1/1 运行 0 2d12h kube-system
kube-controller-manager-l-test 1/1运行 0 2d12h kube-system kube-flannel-ds-kx9sm 1/1 运行 0
2d12h kube-system kube-proxy-v2f9q 1/1 运行
0 2d12h kube-system kube-scheduler-l-test 1/1
运行 0 2d12h

0 投票
0 回答
51 浏览

kubernetes - Pod 无法访问 kube-dns

我是 Kubernetes 的新手。我使用 kubeadm 和 virtualbox 建立了一个包含 1 个 master 和 2 个 worker(worker1、worker2)的本地集群。我选择了 containerd 作为我的 Container Runtime。

我正面临一个让我发疯的网络问题。

我无法从 pod ping 任何外部地址,因为 DNS 无法解析

我使用以下内容来设置集群:

交换和 SELinux 被禁用。

我用的是法兰绒。

猫 /usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf

掌握:

工人1:

我可以从 master 访问 kube-dns cluster-IP:

但不能来自工人:

我使用来自 kubernetes ( https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/ ) 的 dnsutils pod 进行了一些测试:

(此 pod 已部署在 worker1 上,但 worker2 的问题相同)

节点之间有联系。但是不同节点上的 Pod 不能互相 ping 通。例子:

10.244.3.2 只能从 worker1 访问,10.224.4.2 只能从 worker2 访问。

我的猜测是 kube-proxy 有问题,但不知道可能是什么。

我在 pod 日志中看不到任何错误。

有什么建议么?

谢谢

编辑:

解决了

Flannel 使用了错误的接口,因为我的节点有 3 个网络接口,我用 --iface 指定了正确的接口

还意识到firewalld正在阻止对DNS的请求,并解决了添加问题(如何在不禁用firewalld(Kubernetes)的情况下使用Flannel):