我关注了official instruction在自建的k8s集群上安装knative services。但是当运行第二行时
kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.9.2/serving-core.yaml
我得到了
unable to recognize "https://github.com/knative/serving/releases/download/knative-v1.9.2/serving-core.yaml": no matches for kind "HorizontalPodAutoscaler" in version "autoscaling/v2"
unable to recognize "https://github.com/knative/serving/releases/download/knative-v1.9.2/serving-core.yaml": no matches for kind "HorizontalPodAutoscaler" in version "autoscaling/v2"
我搜索了类似的错误,但发现一些有用的东西。
我的 k8s 集群构建在两台 virtualbox 虚拟机上,一台作为主节点,一台作为工作节点。两者都具有:
- Ubuntu 22.04
- docker 版本 20.10
- k8s 版本 1.21.14
这是我运行第一行后获得的自定义资源。
$ kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.9.2/serving-crds.yaml
customresourcedefinition.apiextensions.k8s.io/certificates.networking.internal.knative.dev created
customresourcedefinition.apiextensions.k8s.io/configurations.serving.knative.dev created
customresourcedefinition.apiextensions.k8s.io/clusterdomainclaims.networking.internal.knative.dev created
customresourcedefinition.apiextensions.k8s.io/domainmappings.serving.knative.dev created
customresourcedefinition.apiextensions.k8s.io/ingresses.networking.internal.knative.dev created
customresourcedefinition.apiextensions.k8s.io/metrics.autoscaling.internal.knative.dev created
customresourcedefinition.apiextensions.k8s.io/podautoscalers.autoscaling.internal.knative.dev created
customresourcedefinition.apiextensions.k8s.io/revisions.serving.knative.dev created
customresourcedefinition.apiextensions.k8s.io/routes.serving.knative.dev created
customresourcedefinition.apiextensions.k8s.io/serverlessservices.networking.internal.knative.dev created
customresourcedefinition.apiextensions.k8s.io/services.serving.knative.dev created
customresourcedefinition.apiextensions.k8s.io/images.caching.internal.knative.dev created
$ kubectl get crd
NAME CREATED AT
certificates.networking.internal.knative.dev 2023-03-03T01:09:49Z
clusterdomainclaims.networking.internal.knative.dev 2023-03-03T01:09:49Z
configurations.serving.knative.dev 2023-03-03T01:09:49Z
domainmappings.serving.knative.dev 2023-03-03T01:09:49Z
images.caching.internal.knative.dev 2023-03-03T01:09:50Z
ingresses.networking.internal.knative.dev 2023-03-03T01:09:49Z
metrics.autoscaling.internal.knative.dev 2023-03-03T01:09:50Z
podautoscalers.autoscaling.internal.knative.dev 2023-03-03T01:09:50Z
revisions.serving.knative.dev 2023-03-03T01:09:50Z
routes.serving.knative.dev 2023-03-03T01:09:50Z
serverlessservices.networking.internal.knative.dev 2023-03-03T01:09:50Z
services.serving.knative.dev 2023-03-03T01:09:50Z
我所做的就是这两行命令
$ kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.9.2/serving-crds.yaml
$ kubectl apply -f https://github.com/knative/serving/releases/download/knative-v1.9.2/serving-core.yaml
我是 k8s 自定义资源和 knative 的新手。预先感谢您的帮助。
最佳答案
我相信 Knative 1.9 需要 Kubernetes 1.23 或更高版本。去年左右发生的变化之一是删除了 v2beta2
自动缩放 API 并替换为 v2
API。我相信新的 API 已出现在 Kubernetes 1.22 中,但 Knative 1.9 已使用截至 1 月份的社区支持版本进行了测试,其中包括 1.26、1.25、1.24,可能还有 1.23。
关于kubernetes - 安装 knative 服务时,版本 "HorizontalPodAutoscaler"中没有匹配类型 "autoscaling/v2",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75624217/