Kubernetes [错误:没有种类“CertificateSigningRequest”]

ati*_*589 3 virtualbox docker kubernetes minikube

当我尝试批准 Kubernetes 中的 RBAC 证书时,出现错误。

我为 student-csr 为 Kubernetes 创建了一个证书请求

apiVersion: certificates.k8s.io/v1beta1
kind: CertificateSigningRequest
metadata:
  name: student-csr
spec:
  groups:
  - system:authenticated
  request: <encoded key>
  usages:
  - digital signature
  - key encipherment
  - client auth
Run Code Online (Sandbox Code Playgroud)

然后我跑kubectl create -f signing-request.yaml出去了

已创建证书签名请求.certificates.k8s.io/student-csr

然后kubectl get csr显示

姓名 年龄 签名者姓名 申请者条件
student-csr 100s kubernetes.io/legacy-unknown minikube-user 待定 

到现在为止还挺好。但是当我尝试通过以下方式批准它时出现了问题kubectl certificate approve student-csr

没有找到资源
错误:在方案“k8s.io/kubectl/pkg/scheme/scheme.go:28”中没有为版本“certificates.k8s.io/v1”注册任何种类的“CertificateSigningRequest”

我不知道为什么。我尝试搜索,但没有与此类错误类似的内容。

我正在使用的工具:

  • Minikube:v1.13.1
  • Kubernetes v1.19.2
  • 码头工人 19.03.12
  • Mac 操作系统:Catalina (10.15.6)

*** 使用 minikube minikube start --container-runtime=docker --vm-driver=virtualbox

非常感谢任何形式的帮助。

先感谢您。

Dav*_*Wer 7

我在运行 kubectl 版本 v1.17 并且我的 k8s 集群版本为 v1.19 时遇到了这个问题:

$ kubectl version --short
Client Version: v1.17.0
Server Version: v1.19.2
Run Code Online (Sandbox Code Playgroud)

我通过将 kubectl 更新到 v1.19来修复它

$ kubectl version --short
 Client Version: v1.19.0
 Server Version: v1.19.2
Run Code Online (Sandbox Code Playgroud)