kubectl create -f notRelevantToThisQuestion.yml
私が得る応答は次のとおりです。
サーバーからのエラー(NotFound):サーバーは要求されたリソースを見つけることができませんでした
要求されたリソースのうち、見つからなかったものを判断する方法はありますか?
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クラスターは正しくデプロイされています(すべてがほぼ1年間機能しており、現在新しいポッドを追加しています)。
これを解決するには、クライアントをダウングレードするか、サーバーをアップグレードします。私の場合、サーバー(新しい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
から http://words.yuvi.in/post/kubectl-rbac/
ランニング kubectl create -f notRelevantToThisQuestion.yml -v=8
は、すべてのHTTPトラフィック(要求と応答!)を読みやすい方法で出力します。このようにして、http応答から使用できないリソースを特定できます。
バージョンの問題の原因:
ドキュメント から
クライアントは、マスターからマイナーバージョンを1つだけ歪める必要がありますが、最大で1つのマイナーバージョンまでマスターをリードできます。たとえば、v1.3マスターはv1.1、v1.2、およびv1.3ノードで動作し、v1.2、v1.3、およびv1.4クライアントで動作する必要があります。