jjzjj

Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to

victoruu 2023-04-20 原文

使用tigera-operator方式安装的calico,启动后报错,所有的calico相关的pod都显示CrashLoopBackoff。

kubectl -n calico-system describe pod calico-node-2t8w6,发现如下报错:

Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to connect to BIRDv4 socket: dial unix /var/ run/calico/bird.ctl: connect: no such file or directory.

问题原因:

我们是在 Kubernetes Cluster 部署过程中遇到该问题。由于 Calico 自动检测 IP 地址默认使用 first-found 方法,获得错误地址,需要我们手动指定检测方法。

1、将所有claico删除

kubectl -n tigera-operator get deployments.apps -o yaml > a.yaml
kubectl -n calico-system get daemonsets.apps calico-node -o yaml > b.yaml
kubectl -n calico-system get deployments.apps calico-kube-controllers -o yaml > c.yaml
kubectl -n calico-system get deployments.apps calico-typha -o yaml > d.yaml
kubectl -n calico-apiserver get deployments.apps calico-apiserver -o yaml > e.yaml
kubectl delete -f a.yaml
kubectl delete -f b.yaml
kubectl delete -f c.yaml
kubectl delete -f d.yaml
kubectl delete -f e.yaml

2、删除custom-resources.yaml

kubectl delete -f tigera-operator.yaml

kubectl delete -f custom-resources.yaml

3、删除vxlan.calico

ip link delete vxlan.calico

4、修改custom-resources.yaml文件,添加 nodeAddressAutodetectionV4:
 

# This section includes base Calico installation configuration.
# For more information, see: https://projectcalico.docs.tigera.io/v3.23/reference/installation/api#operator.tigera.io/v1.Installation
apiVersion: operator.tigera.io/v1
kind: Installation
metadata:
  name: default
spec:
  # Configures Calico networking.
  calicoNetwork:
    # Note: The ipPools section cannot be modified post-install.
    #bgp: Enabled
    #hostPorts: Enabled
    ipPools:
    - blockSize: 26
      cidr: 10.244.0.0/16
      encapsulation: VXLANCrossSubnet
      natOutgoing: Enabled
      nodeSelector: all()
    #linuxDataplane: Iptables
    #multiInterfaceMode: None
    nodeAddressAutodetectionV4:
      interface: ens.*

---

# This section configures the Calico API server.
# For more information, see: https://projectcalico.docs.tigera.io/v3.23/reference/installation/api#operator.tigera.io/v1.APIServer
apiVersion: operator.tigera.io/v1
kind: APIServer
metadata:
  name: default
spec: {}
 

5、重新创建

kubectl create -f tigera-operator.yaml

kubectl create -f custom-resources.yaml
 

检查

kubectl -n calico-system get daemonsets.apps calico-node  -o yaml|grep -A2 IP_AUTODETECTION_METHOD

参考网址

calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to connect to BIRDv4 socket: dial unix /var/run/bird/bird.ctl: connect: no such file or directory · Issue #2834 · projectcalico/calico · GitHub

ubuntu20.04下k8s集群及网络部署史上最详细文档 - 知乎

Calico无法正确识别网卡类型的问题 - 知乎

「Kubernetes」- 常见 Calico 问题 @20210422

有关Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to的更多相关文章

  1. Kubernetes三探(安装calico,join,以及遇到的问题) - 2

    昨晚加班到10点····搞这个破玩意儿言归正传上一篇在master成功kubeadminit了,但是安装networkadd-on时总是出错。今天来再试一试。首先我是按照这篇博文安装的,https://blog.csdn.net/weixin_43645454/article/details/124952184因为国内安装真的太多坑了。官网根本没法看首先我按照这篇博文没有成功安装calico,原因是:在kubeadminit时配置了serviceSubnet,很明显是service的子网的意思同时在calico.yml中配置的是CALICO_IPV4POOL_CIDR,意思是podip池博文中

  2. calico-kube-controllers 启动失败处理 - 2

    故障描述calico-kube-controllers异常,不断重启日志信息如下2023-02-2101:26:47.085[INFO][1]main.go92:Loadedconfigurationfromenvironmentconfig=&config.Config{LogLevel:"info",WorkloadEndpointWorkers:1,ProfileWorkers:1,PolicyWorkers:1,NodeWorkers:1,Kubeconfig:"",DatastoreType:"kubernetes"}W022101:26:47.0869801client_confi

  3. kubeadm 部署kubernetes 1.26.1集群 Calico BGP ToR配置 - 2

    目录机器信息升级内核系统配置部署容器运行时Containerd安装crictl客户端命令配置服务器支持开启ipvs的前提条件安装kubeadm、kubelet和kubectl初始化集群(master)安装CNI Calico集群加入node节点机器信息主机名集群角色IP内核系统版本配置l-shahe-k8s-master1.ops.prodmaster10.120.128.15.4.231-1.el7.elrepo.x86_64CentOSLinuxrelease7.9.2009(Core)32C128G10.120.129.1node10.120.129.15.4.231-1.el7.elr

  4. kubeadm 部署kubernetes 1.26.1集群 Calico BGP ToR配置 - 2

    目录机器信息升级内核系统配置部署容器运行时Containerd安装crictl客户端命令配置服务器支持开启ipvs的前提条件安装kubeadm、kubelet和kubectl初始化集群(master)安装CNI Calico集群加入node节点机器信息主机名集群角色IP内核系统版本配置l-shahe-k8s-master1.ops.prodmaster10.120.128.15.4.231-1.el7.elrepo.x86_64CentOSLinuxrelease7.9.2009(Core)32C128G10.120.129.1node10.120.129.15.4.231-1.el7.elr

  5. Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to - 2

    使用tigera-operator方式安装的calico,启动后报错,所有的calico相关的pod都显示CrashLoopBackoff。kubectl-ncalico-systemdescribepodcalico-node-2t8w6,发现如下报错:Readinessprobefailed:calico/nodeisnotready:BIRDisnotready:ErrorqueryingBIRD:unabletoconnecttoBIRDv4socket:dialunix/var/run/calico/bird.ctl:connect:nosuchfileordirectory.问题原

  6. Readiness probe failed: calico/node is not ready: BIRD is not ready: Error querying BIRD: unable to - 2

    使用tigera-operator方式安装的calico,启动后报错,所有的calico相关的pod都显示CrashLoopBackoff。kubectl-ncalico-systemdescribepodcalico-node-2t8w6,发现如下报错:Readinessprobefailed:calico/nodeisnotready:BIRDisnotready:ErrorqueryingBIRD:unabletoconnecttoBIRDv4socket:dialunix/var/run/calico/bird.ctl:connect:nosuchfileordirectory.问题原

  7. Kubernetes集群使用calico多网卡问题 - 2

    生产环境下,通常会将业务网和存储网进行分离,因此服务器通常会有多块网卡,在裸金属服务器初始化Kubernetes环境后,在安装网卡插件时需要指定业务网网卡名称,才能使集群应用正确的网络地址。本文介绍使用Calico插件作为cni实现,在多网卡环境下,指定集群使用的网络。一、系统环境系统安装了多块网卡并配置了多个IP,管理网、业务网和存储网分离。Kubernetes已经完成了初始化。相关工作节点已加入集群。名称版本Kubernetes版本1.22.15网络插件类型/版本calico/3.24操作系统类型/版本centos/7.9其中172.16.16.0/23是存储网络,172.16.10.0/

  8. Kubernetes集群使用calico多网卡问题 - 2

    生产环境下,通常会将业务网和存储网进行分离,因此服务器通常会有多块网卡,在裸金属服务器初始化Kubernetes环境后,在安装网卡插件时需要指定业务网网卡名称,才能使集群应用正确的网络地址。本文介绍使用Calico插件作为cni实现,在多网卡环境下,指定集群使用的网络。一、系统环境系统安装了多块网卡并配置了多个IP,管理网、业务网和存储网分离。Kubernetes已经完成了初始化。相关工作节点已加入集群。名称版本Kubernetes版本1.22.15网络插件类型/版本calico/3.24操作系统类型/版本centos/7.9其中172.16.16.0/23是存储网络,172.16.10.0/

  9. k8s网络插件之Calico - 2

    Calico简介Calico官方文档:https://projectcalico.docs.tigera.io/getting-started/kubernetes/quickstartCalico是一套开源的网络和网络安全解决方案,用于容器、虚拟机、宿主机之前的网络连接,它是一个纯三层的虚拟化网络解决方案,它把每个节点都作为一个虚拟路由器,并把每个节点上的Pod当作是节点路由器后的一个终端设备并为其分配一个IP地址。各节点路由器通过BGP协议生成路由规则,从而实现不通节点上Pod间的通信。如下图:与Flannel相比,Calico的一个显著优势是对网络策略的支持,它允许用户定义访问控制规则以

  10. k8s网络插件之Calico - 2

    Calico简介Calico官方文档:https://projectcalico.docs.tigera.io/getting-started/kubernetes/quickstartCalico是一套开源的网络和网络安全解决方案,用于容器、虚拟机、宿主机之前的网络连接,它是一个纯三层的虚拟化网络解决方案,它把每个节点都作为一个虚拟路由器,并把每个节点上的Pod当作是节点路由器后的一个终端设备并为其分配一个IP地址。各节点路由器通过BGP协议生成路由规则,从而实现不通节点上Pod间的通信。如下图:与Flannel相比,Calico的一个显著优势是对网络策略的支持,它允许用户定义访问控制规则以

随机推荐