【问题标题】:Determine what resource was not found from "Error from server (NotFound): the server could not find the requested resource"从“来自服务器的错误(NotFound):服务器找不到请求的资源”中确定没有找到什么资源
【发布时间】:2018-12-13 06:39:18
【问题描述】:

我正在运行kubectl create -f notRelevantToThisQuestion.yml

我得到的回应是:

来自服务器的错误(未找到):服务器找不到请求的 资源

有什么方法可以确定请求的资源没有找到吗?

kubectl get ns 返回

名称状态年龄
默认激活243d
kube-public Active 243d
kube-system Active 243d

这不是 cron 作业。
客户端版本 1.9
服务器版本 1.6

这与https://devops.stackexchange.com/questions/2956/how-do-i-get-kubernetes-to-work-when-i-get-an-error-the-server-could-not-find-t?rq=1 非常相似,但我的 k8s 集群已正确部署(一切都运行了将近一年,我现在正在添加一个新的 pod)。

【问题讨论】:

    标签: kubernetes kubectl minikube


    【解决方案1】:

    对于 Openshift,我使用的是旧的 oc CLI 版本,在 更新到最新的 oc CLI 解决了我的问题

    【讨论】:

      【解决方案2】:

      此解决方案特别适用于 mac 用户。

      第 1 步:- 更新 kubernetes

      brew upgrade kubernetes-cli
      

      第 2 步:- 覆盖它

      brew link --overwrite kubernetes-cli
      

      【讨论】:

        【解决方案3】:

        应用这些然后尝试

        mkdir -p $HOME/.kube

        sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

        sudo chown $(id -u):$(id -g) $HOME/.kube/config

        【讨论】:

          【解决方案4】:

          要解决此问题,请降级客户端或升级服务器。就我而言,我已经升级了服务器(新 minikube),但忘记升级客户端(kubectl)并最终得到这些版本。

          $ kubectl version --short
          Client Version: v1.9.0
          Server Version: v1.14.1
          

          当我升级客户端版本(在本例中为 1.14.2)后,一切又开始工作了。

          如何安装(在您的情况下升级)客户端的说明在这里https://kubernetes.io/docs/tasks/tools/install-kubectl

          【讨论】:

          • 这里有趣的情况是minikube version 为我显示1.22.0,但minikube kubectl -- version 显示1.21.2
          【解决方案5】:

          我在尝试使用 JenkinsKubernetes 制作 CD 时遇到同样的错误。在管道中我执行kubectl create -f app-deployment.yml -v=8 这张图片显示了有关错误的更多信息:

          【讨论】:

          • 我遇到了同样的问题,忘记了我在后台运行了 jenkins,这搞砸了一切,所以我什至无法正确初始化 kubernetes。非常感谢您为我指明了正确的方向。詹金斯删除后,它解决了。
          【解决方案6】:

          来自http://words.yuvi.in/post/kubectl-rbac/

          运行 kubectl create -f notRelevantToThisQuestion.yml -v=8 将以易于阅读的方式打印所有 HTTP 流量(请求和响应!)。通过这种方式,可以从 http 响应中识别出哪些资源不可用。

          【讨论】:

            【解决方案7】:

            版本问题的原因:

            来自documentation

            客户端的偏差不应超过一个次要版本 master,但最多可以领先 master 一个次要版本。为了 例如,v1.3 主节点应与 v1.1、v1.2 和 v1.3 节点一起使用, 并且应该与 v1.2、v1.3 和 v1.4 客户端一起使用。

            【讨论】:

            • 那么如何解决呢?@Nick
            • @Karthikeyan 降级客户端或升级服务器
            • 我做到了。谢谢。
            猜你喜欢
            • 2020-06-08
            • 2020-06-03
            • 2021-05-10
            • 2019-01-11
            • 1970-01-01
            • 1970-01-01
            • 2015-11-15
            • 2015-12-12
            • 2020-01-29
            相关资源
            最近更新 更多