有没有办法使用更高版本的kubectl来请求更低版本的kubernetes?

有没有办法使用更高版本的kubectl来请求更低版本的kubernetes?,kubernetes,kubectl,Kubernetes,Kubectl,我有一个kubectl哪个版本是1.8.0,还有一个kubernetes集群,哪个版本是1.7.4。使用此kubectl请求kubernetes集群在某些情况下是错误的,例如应用CronJobyaml文件 我搜索了很多,但找不到一种方法来使用更高版本的kubectl来请求更低版本的kubernetes集群 对于Docker,我可以将Docker\u API\u VERSION设置为与Docker客户端的服务器API兼容。那么对于库伯内特斯来说,有没有类似的方法 是的,在我的kubectl1.6.

我有一个
kubectl
哪个版本是
1.8.0
,还有一个kubernetes集群,哪个版本是
1.7.4
。使用此
kubectl
请求kubernetes集群在某些情况下是错误的,例如应用
CronJob
yaml文件

我搜索了很多,但找不到一种方法来使用更高版本的kubectl来请求更低版本的kubernetes集群


对于Docker,我可以将
Docker\u API\u VERSION
设置为与Docker客户端的服务器API兼容。那么对于库伯内特斯来说,有没有类似的方法

是的,在我的
kubectl
1.6.6版中有这样一个选项

kubectl选项

--api version='':已弃用:与服务器对话时要使用的api版本


但它被弃用了。我猜这个选项在1.8.0中被删除了是的,在我的
kubectl
1.6.6版中有这样一个选项

kubectl选项

--api version='':已弃用:与服务器对话时要使用的api版本


但它被弃用了。我猜这个选项在1.8.0版中被删除了,尤其是kubectl apply,它没有能力(它在注释中嵌入了一个特定的版本,并且必须永远处理该版本)

对于资源的常规获取,您可以完全限定从服务器请求的资源的API组和版本:

# no qualification, defaults to preferred server group and version
kubectl get deployments

# group qualification, defaults to preferred server version of that group
kubectl get deployments.extensions
kubectl get deployments.apps

# fully qualified resource.version.group
kubectl get deployments.v1beta1.extensions
kubectl get deployments.v1beta1.apps
kubectl get deployments.v1beta2.apps

kubectl apply
尤其无法(它将特定版本嵌入到注释中,并且必须永远处理该版本)

对于资源的常规获取,您可以完全限定从服务器请求的资源的API组和版本:

# no qualification, defaults to preferred server group and version
kubectl get deployments

# group qualification, defaults to preferred server version of that group
kubectl get deployments.extensions
kubectl get deployments.apps

# fully qualified resource.version.group
kubectl get deployments.v1beta1.extensions
kubectl get deployments.v1beta1.apps
kubectl get deployments.v1beta2.apps

IMO,只需安装较低版本的kubectl,并将其与较低版本集群一起使用

kubectl
是一个单文件应用程序,我们可以有多个版本共存

curl -L https://storage.googleapis.com/kubernetes-release/release/v1.7.4/bin/linux/amd64/kubectl -o kubectl-1.7

IMO,只需安装较低版本的kubectl,并将其与较低版本集群一起使用

kubectl
是一个单文件应用程序,我们可以有多个版本共存

curl -L https://storage.googleapis.com/kubernetes-release/release/v1.7.4/bin/linux/amd64/kubectl -o kubectl-1.7

这是否意味着APIServer可以支持一个资源的多个版本?是的。如果您在extensions API组中创建部署对象,您可以通过apps API组请求它,服务器将为您执行转换。这意味着APIServer可以支持资源的多个版本?是。如果在extensions API组中创建部署对象,则可以通过apps API组请求该对象,服务器将为您执行转换。它可以工作,但面对多个版本的k8s似乎不容易使用。它可以工作,但面对多个版本的k8s似乎不容易使用