尝试安装django-defectDojo掌舵图并遇到StatefulSet版本错误

时间:2020-01-17 14:53:17

标签: kubernetes-helm kubectl kubeadm helmfile

我试图按照此处https://github.com/DefectDojo/django-DefectDojo/blob/master/KUBERNETES.md

的说明在我的CentOS计算机上安装django-defectDojo舵图。

但是在运行helm install命令时,我遇到了这个问题-

错误:验证失败:[无法识别“”:没有同类匹配项 版本“ extensions / v1beta1”中的“部署”,无法识别“”: 版本“ apps / v1beta2”中没有与“ StatefulSet”类型匹配的内容]

经过进一步检查,我认为这与postgresql图表有关,但是我无法解决该问题。

我的kubectl版本是

kubectl版本

GitVersion:“ v1.17.1”, GitCommit:“ d224476cd0730baca2b6e357d144171ed74192d6”, GitTreeState:“干净”,BuildDate:“ 2020-01-14T21:04:32Z”, GoVersion:“ go1.13.5”,编译器:“ gc”,平台:“ linux / amd64”}服务器 版本:version.Info {主要:“ 1”,次要:“ 17”,GitVersion:“ v1.17.1”, GitCommit:“ d224476cd0730baca2b6e357d144171ed74192d6”, GitTreeState:“干净”,BuildDate:“ 2020-01-14T20:56:50Z”, GoVersion:“ go1.13.5”,编译器:“ gc”,平台:“ linux / amd64”}客户端版本:version.Info {主要:“ 1”,次要:“ 17”,

在此方面的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

显然,此图表存在问题,并且如果不作任何其他修改,它将不适用于更新版本的 Kubernetes (1.16及更高版本)。我在 django-DefectDojo github页面上发现了this问题。 Here报告了与您相同的问题。

该问题与version 1.16 Kubernetes API 的一些重大更改有关。

Changelog since v1.15.0中,您可以阅读以下内容:

默认情况下不再提供以下API:(#70672,@ liggitt) * apps/v1beta1apps/v1beta2下的所有资源-改用apps/v1 * *下的daemonsetsdeploymentsreplicasets资源 extensions/v1beta1-使用apps/v1代替* networkpolicies资源 在extensions/v1beta1下-使用networking.k8s.io/v1代替* podsecuritypolicies下的extensions/v1beta1个资源-使用 改为policy/v1beta1

此外,甚至提供了临时解决方案:

  • 可以使用 --runtime-config apiserver标志。
  • apps/v1beta1=true
  • apps/v1beta2=true
  • extensions/v1beta1/daemonsets=true,extensions/v1beta1/deployments=true,extensions/v1beta1/replicasets=true,extensions/v1beta1/networkpolicies=true,extensions/v1beta1/podsecuritypolicies=true

  • 在v1.18中将完全删除提供这些资源的功能。

由于您的Kubernetes版本是 1.17 ,因此您仍然可以使用此替代方法。

或者,您可以按照建议的here使用较旧的 Kubernetes 版本,也可以自行手动修改django-DefectDojo项目中的yaml清单,以使其与当前的 Kubernetes API 结构。

相关问题