• DevOps
  • yaml中,配置apiVersion: apps/v1,在devops时会报错

k8s部署配置文件yaml中,配置apiVersion: apps/v1,在devops时会报错。同样的配置文件在master机器上运行kubectl apply是能成功部署的。不知为何devops时会报错?

Starting Kubernetes deployment
Loading configuration: /home/jenkins/workspace/project-RRK0YX6k1QAj/machine-service-application-deploy/machine-service-application/deploy/devops-machine-service-application-svc.yaml

Created Service: Service(apiVersion=v1, kind=Service, metadata=ObjectMeta(annotations=null, clusterName=null, creationTimestamp=2019-10-28T08:05:51Z, deletionGracePeriodSeconds=null, deletionTimestamp=null, finalizers=[], generateName=null, generation=null, initializers=null, labels={app=machine-wise, component=machine-service-application}, name=machine-service-application-svc, namespace=project-jzny-machinewise-namespace, ownerReferences=[], resourceVersion=6776001, selfLink=/api/v1/namespaces/project-jzny-machinewise-namespace/services/machine-service-application-svc, uid=c1ca4e38-f959-11e9-a9fe-e4b97aed9147, additionalProperties={}), spec=ServiceSpec(clusterIP=10.233.60.11, externalIPs=[], externalName=null, externalTrafficPolicy=Cluster, healthCheckNodePort=null, loadBalancerIP=null, loadBalancerSourceRanges=[], ports=[ServicePort(name=null, nodePort=30786, port=8086, protocol=TCP, targetPort=IntOrString(IntVal=8086, Kind=null, StrVal=null, additionalProperties={}), additionalProperties={})], selector={app=machine-wise, component=machine-service-application, tier=backend}, sessionAffinity=None, type=NodePort, additionalProperties={}), status=ServiceStatus(loadBalancer=LoadBalancerStatus(ingress=[], additionalProperties={}), additionalProperties={}), additionalProperties={})

Loading configuration: /home/jenkins/workspace/project-RRK0YX6k1QAj/machine-service-application-deploy/machine-service-application/deploy/devops-machine-service-application.yaml

ERROR: ERROR: io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST at: https://172.31.16.47:6443/apis/extensions/v1beta1/namespaces/project-jzny-machinewise-namespace/deployments. Message: the API version in the data (apps/v1) does not match the expected API version (extensions/v1beta1). Received status: Status(apiVersion=v1, code=400, details=null, kind=Status, message=the API version in the data (apps/v1) does not match the expected API version (extensions/v1beta1), metadata=ListMeta(resourceVersion=null, selfLink=null, additionalProperties={}), reason=BadRequest, status=Failure, additionalProperties={}).

hudson.remoting.ProxyException: io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST at: https://172.31.16.47:6443/apis/extensions/v1beta1/namespaces/project-jzny-machinewise-namespace/deployments. Message: the API version in the data (apps/v1) does not match the expected API version (extensions/v1beta1). Received status: Status(apiVersion=v1, code=400, details=null, kind=Status, message=the API version in the data (apps/v1) does not match the expected API version (extensions/v1beta1), metadata=ListMeta(resourceVersion=null, selfLink=null, additionalProperties={}), reason=BadRequest, status=Failure, additionalProperties={}).

	at io.fabric8.kubernetes.client.dsl.base.OperationSupport.requestFailure(OperationSupport.java:472)
	at io.fabric8.kubernetes.client.dsl.base.OperationSupport.assertResponseCode(OperationSupport.java:411)
	at io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:381)
	at io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:344)
	at io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleCreate(OperationSupport.java:227)
	at io.fabric8.kubernetes.client.dsl.base.BaseOperation.handleCreate(BaseOperation.java:756)
	at io.fabric8.kubernetes.client.dsl.base.BaseOperation.create(BaseOperation.java:334)
	at com.microsoft.jenkins.kubernetes.KubernetesClientWrapper$DeploymentUpdater.createResource(KubernetesClientWrapper.java:426)
	at com.microsoft.jenkins.kubernetes.KubernetesClientWrapper$DeploymentUpdater.createResource(KubernetesClientWrapper.java:392)
	at com.microsoft.jenkins.kubernetes.KubernetesClientWrapper$ResourceUpdater.createOrApply(KubernetesClientWrapper.java:369)
	at com.microsoft.jenkins.kubernetes.KubernetesClientWrapper.apply(KubernetesClientWrapper.java:157)
	at com.microsoft.jenkins.kubernetes.command.DeploymentCommand$DeploymentTask.doCall(DeploymentCommand.java:168)
	at com.microsoft.jenkins.kubernetes.command.DeploymentCommand$DeploymentTask.call(DeploymentCommand.java:122)
	at com.microsoft.jenkins.kubernetes.command.DeploymentCommand$DeploymentTask.call(DeploymentCommand.java:105)
	at hudson.remoting.UserRequest.perform(UserRequest.java:212)
	at hudson.remoting.UserRequest.perform(UserRequest.java:54)
	at hudson.remoting.Request$2.run(Request.java:369)
	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at hudson.remoting.Engine$1.lambda$newThread$0(Engine.java:93)
	at java.lang.Thread.run(Thread.java:748)
	Suppressed: hudson.remoting.Channel$CallSiteStackTrace: Remote call to JNLP4-connect connection from 10.233.87.237/10.233.87.237:52348
		at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1741)
		at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
		at hudson.remoting.Channel.call(Channel.java:955)
		at hudson.FilePath.act(FilePath.java:1163)
		at com.microsoft.jenkins.kubernetes.command.DeploymentCommand.execute(DeploymentCommand.java:67)
		at com.microsoft.jenkins.kubernetes.command.DeploymentCommand.execute(DeploymentCommand.java:46)
		at com.microsoft.jenkins.azurecommons.command.CommandService.runCommand(CommandService.java:88)
		at com.microsoft.jenkins.azurecommons.command.CommandService.execute(CommandService.java:96)
		at com.microsoft.jenkins.azurecommons.command.CommandService.executeCommands(CommandService.java:75)
		at com.microsoft.jenkins.azurecommons.command.BaseCommandContext.executeCommands(BaseCommandContext.java:77)
		at com.microsoft.jenkins.kubernetes.KubernetesDeploy.perform(KubernetesDeploy.java:42)
		at com.microsoft.jenkins.azurecommons.command.SimpleBuildStepExecution.run(SimpleBuildStepExecution.java:54)
		at com.microsoft.jenkins.azurecommons.command.SimpleBuildStepExecution.run(SimpleBuildStepExecution.java:35)
		at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		... 1 more
Kubernetes deployment ended with HasError