Google cloud platform GKE上的Knative无法处理某些图像,显示修正缺失错误

Google cloud platform GKE上的Knative无法处理某些图像,显示修正缺失错误,google-cloud-platform,google-kubernetes-engine,knative,knative-serving,Google Cloud Platform,Google Kubernetes Engine,Knative,Knative Serving,我在GKE集群上运行Knative。Knative网站上提供的示例图像可以工作,但当我切换到其他图像时,它停止工作。3个集装箱中只有2个集装箱工作,路线的就绪状态仍然为“未知”,原因显示为“修订缺失” 我尝试了多个图像,k8s.gcr.io/hpa-example就是其中之一 编辑:集群有一个n1-standard-4类型的双节点配置(4个VCPU,15 GB内存)。我使用GCP控制台和最新版本的kubernetes创建了这个集群,并选中了Enable Istio复选框。我使用以下命令安装Kna

我在GKE集群上运行Knative。Knative网站上提供的示例图像可以工作,但当我切换到其他图像时,它停止工作。3个集装箱中只有2个集装箱工作,路线的就绪状态仍然为“未知”,原因显示为“修订缺失”

我尝试了多个图像,k8s.gcr.io/hpa-example就是其中之一

编辑:集群有一个n1-standard-4类型的双节点配置(4个VCPU,15 GB内存)。我使用GCP控制台和最新版本的kubernetes创建了这个集群,并选中了Enable Istio复选框。我使用以下命令安装Knative:

kubectl apply --selector knative.dev/crd-install=true \
-f https://github.com/knative/serving/releases/download/v0.8.0/serving.yaml \
-f https://github.com/knative/eventing/releases/download/v0.8.0/release.yaml \
-f https://github.com/knative/serving/releases/download/v0.8.0/monitoring.yaml

kubectl apply \
-f https://github.com/knative/serving/releases/download/v0.8.0/serving.yaml \
-f https://github.com/knative/eventing/releases/download/v0.8.0/release.yaml \
-f https://github.com/knative/serving/releases/download/v0.8.0/monitoring.yaml

谢谢

谢谢你的精确

当您安装Knative时,您应该会看到这种错误

# Without CRD 
unable to recognize "https://github.com/knative/serving/releases/download/v0.8.0/serving.yaml": no matches for kind "Gateway" in version "networking.istio.io/v1alpha3"
unable to recognize "https://github.com/knative/serving/releases/download/v0.8.0/serving.yaml": no matches for kind "Gateway" in version "networking.istio.io/v1alpha3"
unable to recognize "https://github.com/knative/serving/releases/download/v0.8.0/serving.yaml": no matches for kind "Image" in version "caching.internal.knative.dev/v1alpha1"
unable to recognize "https://github.com/knative/eventing/releases/download/v0.8.0/release.yaml": no matches for kind "ClusterChannelProvisioner" in version "eventing.knative.dev/v1alpha1"


# Without CRD 
Error from server (NotFound): error when creating "https://github.com/knative/serving/releases/download/v0.8.0/monitoring.yaml": namespaces "istio-system" not found
Error from server (NotFound): error when creating "https://github.com/knative/serving/releases/download/v0.8.0/monitoring.yaml": namespaces "istio-system" not found
Error from server (NotFound): error when creating "https://github.com/knative/serving/releases/download/v0.8.0/monitoring.yaml": namespaces "istio-system" not found
Error from server (NotFound): error when creating "https://github.com/knative/serving/releases/download/v0.8.0/monitoring.yaml": namespaces "istio-system" not found

你没有。这样做,重新启动knative安装(有CRD和没有CRD)以解决以前的错误并享受

好的,我发现了问题。我试着发布自定义图片。在我将端口(内部图像)更改为80之前,所有这些都正常工作。此映像不仅可以作为Knative服务使用,而且在云运行服务上也不起作用。
底线是,要么从环境变量中提取端口号,要么将其硬编码到80以外的任何其他端口。

您能分享更多信息吗?你是如何安装knative的?你有多少个节点?节点的大小(cpu和内存)?感谢@guillaume blaquiere,我已经在问题中添加了所需的信息。亲爱的gillaume,我忘了明确提到(现在已编辑)集群是使用Istio创建的(GCP提供了一个复选框来启用)。此外,安装knative时也没有错误。请再读一遍这个问题。我能够使用在knative网站上共享的图像创建knative服务(内部创建配置、路由和修订)(示例中)。但如果我使用任何不同的图像,它都不起作用。未创建虚拟服务,路由显示“RevisionMissing”错误。当我在没有istio的情况下使用knative时,我有完全相同的行为。istio是必需的先决条件。在没有istio的情况下测试它是没有意义的。除了你不知道先决条件,就像我一样,我第一次测试knative。我只是分享了我个人的失败!