Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建Kubernetes作业会导致';batch/,Kind=作业匹配多种类型';_Kubernetes - Fatal编程技术网

创建Kubernetes作业会导致';batch/,Kind=作业匹配多种类型';

创建Kubernetes作业会导致';batch/,Kind=作业匹配多种类型';,kubernetes,Kubernetes,我最近从Kubernetes 1.2.0升级到Kubernetes 1.3.0,现在在尝试启动作业时出现以下错误: $ kubectl create -f pijob.yaml unable to recognize "pijob.yaml": batch/, Kind=Job matches multiple kinds [batch/v1, Kind=Job batch/v2alpha1, Kind=Job] 其中pijob.yaml是本教程中的作业定义: apiVersion: bat

我最近从Kubernetes 1.2.0升级到Kubernetes 1.3.0,现在在尝试启动作业时出现以下错误:

$ kubectl create -f pijob.yaml 
unable to recognize "pijob.yaml": batch/, Kind=Job matches multiple kinds [batch/v1, Kind=Job batch/v2alpha1, Kind=Job]
其中
pijob.yaml
是本教程中的作业定义:

apiVersion: batch/v1
kind: Job
metadata:
  name: pi
spec:
  template:
    metadata:
      name: pi
    spec:
      containers:
      - name: pi
        image: perl
        command: ["perl",  "-Mbignum=bpi", "-wle", "print bpi(2000)"]
      restartPolicy: Never
该错误令人困惑,因为它表明
apiVersion:batch/v1,Kind:Job
应该有效。如果我尝试
apiVersion:batch/v2alpha1,Kind:Job
,我还会得到一个错误:

$ kubectl create -f pijob.yaml
error validating "pijob.yaml": error validating data: couldn't find type: v2alpha1.Job

我做错了什么?

您是否尝试过使用
apiVersion:extensions/v1beta1

检查您的kubernetes服务器和客户端版本,并制作相同的版本

[root@allinone dan]# kubectl version

Client Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.0", GitCommit:"86dc49aa137175378ac7fba7751c3d3e7f18e5fc", GitTreeState:"clean", BuildDate:"2016-12-15T16:57:18Z", GoVersion:"go1.6.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.1", GitCommit:"82450d03cb057bab0950214ef122b67c83fb11df", GitTreeState:"clean", BuildDate:"2016-12-14T00:52:01Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}
[root@allinone dan]# kubectl create -f ./job.yaml 

error: unable to recognize "./job.yaml": batch/, Kind=Job matches multiple kinds [batch/v1, Kind=Job batch/v2alpha1, Kind=Job]

[root@allinone dan]# wget https://storage.googleapis.com/kubernetes-release/release/v1.5.1/bin/linux/amd64/kubectl

[root@allinone dan]# chmod +x kubectl

[root@allinone dan]# mv kubectl /usr/local/bin/kubectl

[root@allinone dan]# kubectl version

Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.1", GitCommit:"82450d03cb057bab0950214ef122b67c83fb11df", GitTreeState:"clean", BuildDate:"2016-12-14T00:57:05Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.1", GitCommit:"82450d03cb057bab0950214ef122b67c83fb11df", GitTreeState:"clean", BuildDate:"2016-12-14T00:52:01Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}

[root@allinone dan]# kubectl create -f ./job.yaml 
job "pi" created

我也有同样的错误,所以我遵循以下方法:

    [root@host141 tensorflow]#wget https://storage.googleapis.com/kubernetes-release/release/v1.5.1/bin/linux/amd64/kubectl  ./
    [root@host141 tensorflow]#  cp /usr/bin/kubectl /usr/bin/kubectl.bak
    [root@host141 tensorflow]#  cp kubectl /usr/bin/kubectl
    [root@host141 tensorflow]# kubectl version
    Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.1",           GitCommit:"82450d03cb057bab0950214ef122b67c83fb11df", GitTreeState:"clean",   BuildDate:"2016-12-14T00:57:05Z", GoVersion:"go1.7.4", Compiler:"gc",  Platform:"linux/amd64"}
    Server Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.0",  GitCommit:"86dc49aa137175378ac7fba7751c3d3e7f18e5fc", GitTreeState:"clean",  BuildDate:"2016-12-15T16:57:18Z", GoVersion:"go1.6.3", Compiler:"gc",  Platform:"linux/amd64"}

然后我创建了作业,没有留下任何错误。

我收到了相同的错误消息,结果是我没有登录…

kubectl和api服务器都是1.3版本吗?@EricTune是的,apiserver、kubectl和kubelet(在节点上)都是Kubernetes 1.3.0您使用的是什么运行时配置?@EricTune默认值,也就是说,我没有在任何地方设置它。可能是因为您的kubectl服务器没有运行,请尝试
gcloud container clusters get credentials cluster\u name