问题标签 [knative]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - Knative 设置的确切系统要求是什么?为什么基本设置指南导致我资源枯竭?
我一直在尝试在我的系统上设置 Knative 开发环境。但是每次我部署 Istio 时,pilot 都处于挂起状态,我发现它是因为资源耗尽。
我遵循了 Knative 文档中的基本设置指南。即服务/blob/master/DEVELOPMENT.md
现在,如果我根据它安装和部署 istio,资源会耗尽,并且 istio-pilot 由于没有可用的节点而保持挂起状态。
如果我尝试与安装指南中给出的相同,即 https://knative.dev/docs/install/installing-istio/
它工作正常,直到后来我重新启动集群时,api-server 才停止,根据我通过搜索发现的内容,这也是由于缺乏资源。
那么 Knative 设置的具体要求是什么?
我使用的是 8 核处理器和 32GB RAM 的系统。
我分配错了吗?据我所知,我们必须为单节点 kubernetes 结构提供至少 8Gb 内存和 6 个 CPU(这就是我正在使用的)。Istio 和 Knative 部署使用的资源如何?
我检查了节点中的资源和限制,并将限制设置为 0%。
我已经尝试在 minikube 配置中限制 CPU 和 RAM,然后在启动 minikube 时使用 --cpu 和 --memory ,但输出保持不变。
Minikube 开始于:minikube start
ISTIO 部署者:
飞行员仍然待定,在描述了我们得到的吊舱后:
输出kubectl describe node nodename
:
设置应该已经成功,因为我也使用 RequestQuotas 和 LimitRange 设置了限制。但没有任何工作。
我在这里做错了什么?
kubernetes - 对 config-autoscaler configmap 的编辑会在应用更改后几分钟自动恢复
我正在尝试为启用了云运行插件的 Google Kubernetes Engine 集群调整自动缩放器。当我编辑 configmap 时,API 服务器接受了更改。但是,几分钟后,configmap 恢复为原始版本。有没有办法在使用云运行集群插件时调整自动缩放器?
重现步骤:
- 编辑配置图
- 检查结果:
- 等待几分钟,然后再次检查:
是否有我遗漏的东西,或者无法编辑管理 knative 服务自动缩放器的配置映射?如果没有,我的替代方案是什么?
vagrant - 如何为 knative eventing 测试设置一个简单的测试环境?
我想开始学习 Knative 和特别Knative Eventing
的部分。我在设置环境方面苦苦挣扎了两个多星期。
总是有错误发生。有时 Kubernetes 卡住了ImagePullBackOFF
,有时ErrPullImage
。
我安装了k3s
,当我gloo
为 knative 安装时,它只是说没有 environemnt 变量 as kubeconfig
... 以及很多很多其他错误。
有人可以帮我设置一个测试环境(使用vagrant
等)或将我引导到一个 github 页面或一个我可以实际获取一些文件和代码的地方,以便我可以着手使用 knative 并做一些事情来学习它吗?
请帮我!我非常感谢,谢谢。
google-cloud-platform - GKE 上的 Knative 无法处理某些图像,显示 RevisionMissing 错误
我在 GKE 集群上运行 Knative。Knative 网站上提供的示例图像可以工作,但是当我切换到其他一些图像时,它会停止工作。3 个容器中只有 2 个容器工作,并且路由的就绪状态保持“未知”,原因显示为“RevisionMissing”。
我尝试了多个图像,k8s.gcr.io/hpa-example 就是其中之一。
编辑:集群有一个配置类型为 n1-standard-4 的两个节点(4 个 vCPU,15 GB 内存)。我使用带有最新版本 kubernetes 的 GCP 控制台创建了这个集群,并选中了 Enable Istio 复选框。我使用以下命令安装 Knative:
谢谢
docker - 在 Google Cloud Run 或 Cloud Run on GKE 上从另一个容器创建服务或容器
我可以在 Google Cloud Run 或 Cloud Run on GKE 上从另一个容器创建服务或容器吗?
我基本上想从另一个容器动态管理我的容器/服务,但不知道该怎么做
添加更多细节:
我的一个微服务需要创建新的隔离容器来运行一些用户级代码。我想对这些容器进行完整的生命周期控制,运行代码,然后根据需要销毁。
我还查看了 Cloud Run API,但不确定如何通过 API 运行类似“kubectl create ...”的内容?这是正确的方法吗?
kubernetes - 在 knative 服务定义中更改公共 url
我目前正在玩 knative,并使用 gloo 和 glooctl 引导了一个简单的安装。开箱即用,一切正常。但是,我只是问自己是否有可能更改生成的 url,该服务在哪里可用。
我已经更改了域,但我想知道是否可以选择一个不包含命名空间的域名,所以helloworld-go.namespace.mydomain.com
会变成helloworld-go.mydomain.com
.
当前的 YAML 定义如下所示:
感谢您的帮助!
google-cloud-platform - GCP Cloud Run:创建服务失败
我正在尝试将 Cloud run 与私有 GKE 集群一起使用。我使用以下命令创建了集群:
我在同一 VPC 和子网中创建了一个堡垒主机,可以使用以下命令联系此集群:
gcloud container clusters get-credentials
我在堡垒主机上安装了 kubectl,并使用命令将上下文切换到该集群。
我使用以下命令确保在默认命名空间上启用了 Istio:
现在,当我尝试使用以下命令部署服务时,出现错误:
错误:
我都试过了--connectivity=internal
,--connectivity=external
我得到了同样的错误。
当我尝试使用控制台创建服务时,出现以下错误:
我已确保为容器注册表 ( gcr.io ) 和 GKE 集群保留相同的项目。
确切的事情适用于公共集群。我无法找到特定的文档来让它与私有 GKE 集群一起工作。有什么我想念的吗?有什么我做错了吗?
knative - 如何在 Knative 中从一个服务向另一个服务发出集群本地请求?
我已按照本指南https://knative.dev/docs/serving/cluster-local-route/使服务集群本地化。
我正在尝试使用 curl 命令从群集内的另一个服务访问该服务,但我总是遇到无法解决主机错误。
我尝试使用 curl helloworld-default.svc.cluster和curl -H "Host: helloworld-go.default.svc.cluster " http://< cluster_ip > 命令发出请求。
我错过了什么?我是否需要对 Istio virtualService 进行任何配置才能使其正常工作?(我在 GKE 中运行 Knative)
kubernetes - Knative:混淆服务名称和路由
我开始使用 Kubernetes、Knative 和 Gloo。我的目标是将一个简单的 http 服务部署到一个 gke 集群。我已经成功地设置了 knative、gloo 并在那里部署了一个名为backend
. 下一步是设置路由/api/v1
-> backend
。我创建了一个名为 的虚拟public-api
服务,现在我需要添加一个路由。根据文档,我需要运行
我很困惑。我想如果我只是在普通 gke 上安装普通 gloo,这会更容易。但是对于 Knative,我看到了四个上游:
我有四个问题:
- 使用哪一个?mb-backend-bdtr2-80 或 mb-backend-bdtr2-zz6t9-80
- 为什么我有两个带有端口 80 的上游?
- 这些带有端口 9090 和 9091 的上游是什么?
- 如何定义更具描述性的名称?Gloo 的系统上游命名更好,没有任何后缀。
knative - Knative 部署的 pod 最初无法通过浏览器访问,但在 k8s 集群中执行 curl 命令后,我可以在浏览器中访问
我想在不执行 curl 命令的情况下第一次访问浏览器,注意 - 初始命令(如导出 IP 地址和 config-map 命令)执行成功。
我没有收到任何错误。我的期望是当我使用浏览器请求我的 URL 时,我的 pod 想要自动创建。