我正在使用openshift
容器集群来运行我的项目。
在我的CI中,我使用helm
和kubectl
来升级和推出部署。
按照this指南,我创建了这个简单的DeploymentConfig
:
apiVersion: apps.openshift.io/v1
kind: DeploymentConfig
...
运行helm upgrade --install
时,我可以在openshift集群中看到新的部署。
但是我想使用kubectl
进行部署,但失败了:
helm upgrade --install --wait --namespace myapp nginx chart/
kubectl rollout status -n myapp -w "dc/nginx"
我收到此错误error: no king "DeploymentConfig" is registered for version "apps.openshift.io/v1" in scheme "k8s.io/kubernetes/pkg/kubectl/scheme/scheme.go:28"
运行kubectl api-versions
的确显示“ apps.openshift.io/v1”。
为什么不能使用kubectl
部署部署?
答案 0 :(得分:0)
Kubernetes的命令行界面(CLI) kubectl 用于对Kubernetes集群运行命令,而DeploymentConfigs
特定于OpenShift发行版,在标准Kubernetes中不可用。< / p>
不过,只要在 kubectl 上构建 oc ,就可以将 kubectl 二进制文件转换为 oc 就像将二进制文件的名称从 kubectl 更改为 oc 一样简单。
查看有关using kubectl and oc的更多信息