AWS的ESK启用插件kubesphere Devops异常 namespaces "kubesphere-devops-worker" not found
- 已编辑
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/crds
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/charts/s2i/crds
rm -rf kubesphere/ks-devops/charts/s2i-templates.yaml
helm template kubesphere/ks-devops/charts/ks-devops/charts/s2i/ \
-f kubesphere/ks-devops/ks-devops-values.yaml \
-s templates/binary.yaml \
-s templates/java.yaml \
-s templates/nodejs.yaml \
-s templates/python.yaml \
-s templates/tomcat.yaml > kubesphere/ks-devops/charts/s2i-templates.yaml
rm -rf kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/binary.yaml
rm -rf kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/java.yaml
rm -rf kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/nodejs.yaml
rm -rf kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/python.yaml
rm -rf kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/tomcat.yaml
helm upgrade --install devops kubesphere/ks-devops/charts/ks-devops*.tgz -n kubesphere-devops-system -f kubesphere/ks-devops/ks-devops-values.yaml
kubectl apply -f kubesphere/ks-devops/charts/s2i-templates.yaml
你这个报错,是没有安装 crd ,可能是之前彻底卸载过。
标准安装是这些命令。 手动 一行一行执行下,看是不是 执行过程中有什么报错。
我也是同样的版本,同样的问题。
EKS1.26+kubeshpere3.4,我也按照大神们建议的方式,试了一下,还是一样的错误。
- 已编辑
panpan ks-3.4.0 devops 是这个包:https://github.com/kubesphere/ks-installer/blob/v3.4.0/roles/ks-devops/files/ks-devops/charts/ks-devops-0.2.1.tgz
这个 解压后,我看是有 相应目录的。 解压的目录是 kubesphere/ks-devops/charts,
这个 s2i 应该是在 kubesphere/ks-devops/charts/ks-devops/charts/s2i/crds
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/crds
kubectl apply -f kubesphere/ks-devops/charts/s2i/crds
这两句上面目录发错了,按照代码,目录应该是
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/crds
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/charts/s2i/crds
chilianyi 这个 s2i 应该是在 kubesphere/ks-devops/charts/ks-devops/charts/s2i/crds
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/crds
kubectl apply -f kubesphere/ks-devops/charts/s2i/crds这两句上面目录发错了,按照代码,目录应该是
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/crds
kubectl apply -f kubesphere/ks-devops/charts/ks-devops/charts/s2i/crds
Usage: helm upgrade [RELEASE] [CHART] [flags]
ks-installer-6697794f55-8dmbz:/kubesphere$ helm upgrade --install devops kubesphere/ks-devops/charts/ks-devops*.tgz -n kubesphere-devops-system -f kubesphere/ks-devops/ks-devops-values.yaml
Release "devops" does not exist. Installing it now.
Error: unable to build kubernetes objects from release manifest: resource mapping not found for name: "devops" namespace: "" from "": no matches for kind "CronJob" in version "batch/v1beta1"
ensure CRDs are installed first
ks-installer-6697794f55-8dmbz:/kubesphere$ kubectl apply -f kubesphere/ks-devops/charts/ks-devops/crds
customresourcedefinition.apiextensions.k8s.io/clustersteptemplates.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/clustertemplates.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/devopsprojects.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/gitrepositories.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/pipelineruns.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/pipelines.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/templates.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/applications.gitops.kubesphere.io configured
ks-installer-6697794f55-8dmbz:/kubesphere$ kubectl apply -f kubesphere/ks-devops/charts/ks-devops/charts/s2i/crds
customresourcedefinition.apiextensions.k8s.io/s2ibinaries.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/s2ibuilders.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/s2ibuildertemplates.devops.kubesphere.io configured
customresourcedefinition.apiextensions.k8s.io/s2iruns.devops.kubesphere.io configured
ks-installer-6697794f55-8dmbz:/kubesphere$ rm -rf kubesphere/ks-devops/charts/s2i-templates.yaml
ks-installer-6697794f55-8dmbz:/kubesphere$ helm template kubesphere/ks-devops/charts/ks-devops/charts/s2i/ \
> -f kubesphere/ks-devops/ks-devops-values.yaml \
> -s templates/binary.yaml \
> -s templates/java.yaml \
> -s templates/nodejs.yaml \
> -s templates/python.yaml \
> -s templates/tomcat.yaml > kubesphere/ks-devops/charts/s2i-templates.yaml
Error: could not find template templates/binary.yaml in chart
ks-installer-6697794f55-8dmbz:/kubesphere$
ks-installer-6697794f55-8dmbz:/kubesphere$
ks-installer-6697794f55-8dmbz:/kubesphere$ ll kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/
bash: ll: command not found
ks-installer-6697794f55-8dmbz:/kubesphere$ ls kubesphere/ks-devops/charts/ks-devops/charts/s2i/templates/
NOTES.txt operator.yaml tests
_helpers.tpl prometheus-servicemonitor.yaml
之前两句执行 OK 了,但是往下执行,还是不行
chilianyi # kubectl api-versions | grep batch/v1
batch/v1
batch/v1beta1kubectl version
ks-installer-758d459599-592×9:/kubesphere$ kubectl api-versions | grep batch/v1
batch/v1
ks-installer-758d459599-592×9:/kubesphere$ kubectl version
Client Version: version.Info{Major:“1”, Minor:“23”, GitVersion:“v1.23.7”, GitCommit:“42c05a547468804b2053ecf60a3bd15560362fc2”, GitTreeState:“clean”, BuildDate:“2022-05-24T12:30:55Z”, GoVersion:“go1.17.10”, Compiler:“gc”, Platform:“linux/amd64”}
Server Version: version.Info{Major:“1”, Minor:“26+”, GitVersion:“v1.26.7-eks-2d98532”, GitCommit:“c9c3fc1fdf677f38b8d26568c10b921a1235fa43”, GitTreeState:“clean”, BuildDate:“2023-07-28T16:51:21Z”, GoVersion:“go1.20.6”, Compiler:“gc”, Platform:“linux/amd64”}
WARNING: version difference between client (1.23) and server (1.26) exceeds the supported minor version skew of +/-1
请大神抽空再帮看看,做最后的努力 了
kubesphere/ks-devops#998
你好,是个 bug,错误的识别了 k8s 的版本,导致安装时,cronjob 用了 batch/v1beta1, 但 k8s 1.26 里已经只有 batch/v1 没有 batch/v1beta1 了, 导致安装失败。
目前已经做了修复,在 helm chart 中,kubesphere-sigs/ks-devops-helm-chart#122/files
晚些 会提供下 新的 helm chart,到时 更新下 ks-installer 中对应的 helm 包,就可以正常安装了。
YyudongK零S
panpan 你好,经过我们测试发现是创建 cronjob 的 apiversion 有问题,在 chart 包里的比较当前 k8s 版本没有生效;针对 ks 3.4.0 麻烦先参考下面步骤,先临时手动修复下,后面会在新版本 3.4.1 修复此问题:
- 编辑 ks-installer deployment,修改 securityContext.runAsUser 为 0,以 root 用户运行 ks-installer:
kubectl -n kubesphere-system edit deployments.apps ks-installer
- 下载更新后的 ke-devops helm 包 ks-devops-0.2.1.tgz
- 等待 ks-installer 重启完成之后,替换 helm 包:
kubectl -n kubesphere-system cp ks-devops-0.2.1.tgz $(kubectl get pod -n kubesphere-system -l app=ks-installer -o jsonpath='{.items[0].metadata.name}'):/kubesphere/installer/roles/ks-devops/files/ks-devops/charts/
- 重新开启 ks-devops 组件
kubectl -n kubesphere-system edit cc ks-installer
如果 status.devops 存在,删除 status.devops,即删除截图中的三行;
修改 spec.devops 配置里任意一项,如图中的 jenkinsCpuReq ,触发重新安装 DevOps 即可;