TL;DR
- 表題みたいなことが起こったら、kubectlのバージョンとkubernetesのバージョンを揃えよう。
この記事は
ingress controllerの動きを確認するために、ingressの情報を確認しようとしたら、
$ kubectl describe ingress
Error from server (NotFound): the server could not find the requested resource
と出てきて困ったというお話
近況
久々の投稿です。最近は社内でもKubernetesやCI/CDを回してみたいという話が少しずつでてきており、その人身御供管理人として、Kuberentes周りの勉強をしています。
今回はingress controllerの動作確認で少しハマったので、記事として書いておきます。(同じような記事がQiitaには見当たらなかったので)
やったこと
$ kubectl apply -f ingress.yaml
$ kubectl get ingress -> OK
$ kubectl describe ingress ***
Error from server (NotFound): the server could not find the requested resource
- ingressは正常にできていて、リソースとしても登録されているのだけれど、describeできない
- namespace間違えているとか、そういう話でもない
結論
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:36:53Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.10", GitCommit:"37d169313237cb4ceb2cc4bef300f2ae3053c1a2", GitTreeState:"clean", BuildDate:"2019-08-19T10:44:49Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"linux/amd64"}
クライアントとサーバのバージョンが違うからおきている問題らしい。
クライアントのバージョンを下げるか、サーバのバージョンを上げるかして対処しましょう、とのこと。