【问题标题】:Kubernetes installation error in flannel step法兰绒步骤中的Kubernetes安装错误
【发布时间】:2020-03-26 02:30:36
【问题描述】:

我在 GCP Centos VM 上使用 kubeadm 安装 kubernetes,运行 flannel 步骤时出现以下错误。

错误:

[root@master ~]# kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml
clusterrole.rbac.authorization.k8s.io/flannel created
clusterrolebinding.rbac.authorization.k8s.io/flannel created
serviceaccount/flannel created
configmap/kube-flannel-cfg created
unable to recognize "https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml": no matches for kind "DaemonSet" in version "extensions/v1beta1"
unable to recognize "https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml": no matches for kind "DaemonSet" in version "extensions/v1beta1"
unable to recognize "https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml": no matches for kind "DaemonSet" in version "extensions/v1beta1"
unable to recognize "https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml": no matches for kind "DaemonSet" in version "extensions/v1beta1"
unable to recognize "https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml": no matches for kind "DaemonSet" in version "extensions/v1beta1"

为了解决这个问题,我应该进行哪些更改?

【问题讨论】:

    标签: json kubernetes google-cloud-platform linux-kernel app.yaml


    【解决方案1】:

    使用来自official documentation的flannel yaml

    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/2140ac876ef134e0ed5af15c65e414cf26827915/Documentation/kube-flannel.yml
    podsecuritypolicy.policy/psp.flannel.unprivileged created
    clusterrole.rbac.authorization.k8s.io/flannel configured
    clusterrolebinding.rbac.authorization.k8s.io/flannel unchanged
    serviceaccount/flannel unchanged
    configmap/kube-flannel-cfg configured
    daemonset.apps/kube-flannel-ds-amd64 created
    daemonset.apps/kube-flannel-ds-arm64 created
    daemonset.apps/kube-flannel-ds-arm created
    daemonset.apps/kube-flannel-ds-ppc64le created
    daemonset.apps/kube-flannel-ds-s390x created
    

    正如@suren 正确提到的那样——问题出在apiVersion: extensions/v1beta1

    在最新的 yaml 中看起来像

    ---
    apiVersion: apps/v1
    kind: DaemonSet
    metadata:
      name: kube-flannel-ds-amd64
      namespace: kube-system
      labels:
        tier: node
        app: flannel
    spec:
      selector:
        matchLabels:
          app: flannel
      template:
        metadata:
          labels:
            tier: node
            app: flannel
    ...
    

    【讨论】:

      【解决方案2】:

      这是 DaemonSet 和您的 kubernetes 集群的版本控制问题。您正在使用extensions/v1beta1,但DaemonSets 已升级为apps/v1

      如果您已经运行了api-server,请尝试kubectl explain daemonset,它会告诉您DaemonSetsapiVersion 应该是什么。

      如果没有,只需下载 flannel 文件,编辑它,将 apiVersion: extensions/v1beta1 更改为 apiVersion: apps/v1,它应该可以工作。

      【讨论】:

        猜你喜欢
        • 2021-07-07
        • 2017-01-15
        • 1970-01-01
        • 2021-06-24
        • 2020-03-22
        • 2020-05-21
        • 2017-07-05
        • 2012-10-31
        • 2022-11-03
        相关资源
        最近更新 更多