安装calico一个组件0/1 unable to connect to BIRDv4 socket: dial unix /var/run/bird/bird.ctl: connect: no su

安装calico一个组件0/1

报错:
unable to connect to BIRDv4 socket: dial unix /var/run/bird/bird.ctl: connect: no such file or directory

Readiness probe failed: caliconode is not ready: BIRD is not ready: BGP not established with 10.117.

1,配置calico.yaml配置文件。
搜索 Alway 。

 calico.yaml 文件添加以下二行
        - name: IP_AUTODETECTION_METHOD
          value: "interface=ens.*"  # ens 根据实际网卡开头配置

在这里插入图片描述

2,删除calico并重新部署。

kubectl delete -f calico.yaml
kubectl apply -f calico.yaml

完结,如有错误,愿听指教。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 错误:无法识别“calico.yaml”:在版本“policy/v1”中没有与“poddisruptionbudget”匹配的种类。 这个错误通常是由于Kubernetes集群的版本太旧,不支持PodDisruptionBudget资源。您可以尝试升级Kubernetes集群或使用较旧版本的Calico YAML文件。 ### 回答2: 这个错误提示出现的原因是因为Kubernetes API服务器不能识别或匹配calico.yaml文件中定义的资源类型。在这种情况下,相信calico.yaml中定义的资源对象版本与当前Kubernetes集群的API服务器版本不兼容,导致API服务器无法识别资源对象。 其中,错误信息中指出资源类型为"poddisruptionbudget",版本为"policy/v1",提示意味着Kubernetes API服务器的当前版本不支持policy/v1的poddisruptionbudget资源类型。这意味着calico.yaml文件中的poddisruptionbudget配置无法在该版本中使用。 要解决这个问题,可以通过以下两种方式之一来解决这个问题: 1.升级Kubernetes集群的API服务器:如果您的Kubernetes版本太老,不支持poddisruptionbudget的policy/v1版本,则需要升级到支持它的版本。一旦升级完成,您应该能够上传calico.yaml文件成功并使用其中定义的资源类型。 2.降低calico.yaml文件中定义对象的版本:如果您不想升级Kubernetes集群,也可以通过修改calico.yaml文件中的资源版本来解决问题。通过降低版本至Kubernetes支持的版本,例如,将poddisruptionbudget资源类型的版本从policy/v1更改为extensions/v1beta1或升级到可接受的版本,此时API服务器就可以识别并匹配该资源类型了。 综上,此错误是由calico.yaml文件中定义的不支持的资源类型或版本引起的。您需要更新Kubernetes集群或修改calico.yaml文件中的资源对象版本,以使它们与Kubernetes API服务器兼容。 ### 回答3: 该错误提示表示在尝试使用“calico.yaml”文件时,Kubernetes无法识别该文件中“poddisruptionbudget”资源的版本“policy/v1”,因此导致了错误的发生。 这个错误的发生可能由于以下原因导致: 1. YAML文件中的资源版本与目标Kubernetes集群版本不匹配。可能您使用的YAML文件是在较早的版本上编写的,但您正在使用的Kubernetes集群版本大于该文件中定义的版本。 2. 在您的Kubernetes集群中未安装或启用适当的API版本。如果您的Kubernetes集群中不存在“policy/v1”版本的API,则将无法识别包含此API版本的资源的YAML文件。 3. 文件名或文件路径错误。检查文件名或路径,确保它们是正确的,并且在Kubernetes集群上的相应位置上才能找到。 为修复此错误,您可以尝试以下解决方法: 1. 检查Kubernetes集群版本:在使用YAML文件之前,请确定您使用的Kubernetes集群与YAML文件中定义的资源版本兼容。 2. 检查使用的API版本:确保在您的Kubernetes集群中启用了正确的API版本,以便Kubernetes可以识别相应资源。 3. 检查文件名或路径:确认文件名和路径与YAML文件的位置匹配,以便在Kubernetes集群上正确加载并使用此文件。 总之,通过检查Kubernetes版本、API版本和文件路径,可以修复“unable to recognize”错误。如果一切都正确,那么可能是您的YAML文件中有其他错误。在这种情况下,您将需要调试YAML文件以了解更多问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值