Kubernetes在版本“ extensions / v1beta1”中没有与种类“ Deployment”匹配的项

时间:2018-10-18 15:40:37

标签: jenkins kubernetes kubectl

我正在尝试使用Jenkins在Kubernetes中部署下一个frontend-deployment.yaml,但是出现下一个错误:

[frontend] Running shell script
+ kubectl apply -f IKonnekt/frontend-deployment.yaml
error: unable to recognize "IKonnekt/frontend-deployment.yaml": no matches for kind "Deployment" in version "extensions/v1beta1"

如果我从Kubernetes集群中的机器上运行kubectl apply -f IKonnekt/frontend-deployment.yaml,则运行正常。

Kubernetes Client Version: 1.12.1
Kubernetes Server Version: 1.11.0

这是我的frontend-deployment.yaml:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: ikonnekt-frontend-deployment
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: ikonnekt-frontend
    spec:
      containers:
      - name: ikonnekt-frontend
        image: ikonnektfrontend
        imagePullPolicy: Always
        env:
        - name: REACT_APP_API
          value: "http://IP:Port"
        - name: REACT_APP_AUTH_ENDPOINT
          value: "http://IP:Port/auth"
        ports:
        - containerPort: 80
      imagePullSecrets:
      - name: regcred

2 个答案:

答案 0 :(得分:10)

只需将 apiVersion 更改为此:apiVersion: apps/v1

答案 1 :(得分:0)

我的问题是因为我在Jenkinsfile中使用的是Kubernetes仪表板URL,而不是Kubernetes API URL,因此Jenkins的kubectl无法识别kubernetes服务器。

最后,使用API​​ URL并更新apiVersion,它对我有用。