最近,我用Nginx Ingres控制器在k8s集群中构建了几个微服务,它们工作正常。
在处理微服务之间的通信时,我尝试了gRPC并成功了。然后我发现当微服务A-
后来,我对istio产生了兴趣。我已成功将其部署到群集。但是,我观察到它总是创建自己的负载均衡器,这与现有的Nginx入口控制器不匹配。
此外,我尝试了prometheus和grafana以及k9s。这些工具让我对pod的cpu和内存使用有了更好的理解。
在这里,我有几个问题希望了解:
实际上我也想每天使用Service Mesh。
服务网格不是灵丹妙药,也不适合所有使用情形。服务网格不会为你做所有的事情,它也有缺陷和有限的功能。
简单的答案是:
不需要kubernetes服务器的服务网格
现在回答你的问题
如果我需要监视集群资源,我们有prometheus,grafana和k9s。他们是否执行与服务网格相同的监视角色(例如 linkerd、istio)?
K9s是一个cli工具,只是kubectl
cli工具的替代品。它不是监视工具。Prometheus和grafana是监控工具,需要使用应用程序(pod)提供的数据,并构建可以可视化为图表,图形等的时间序列数据。但是,应用程序必须向Prometheus提供监视数据。服务网格可以使用 sidecar,并提供一些对监视有用的默认指标,例如一秒钟内处理的请求数
。您的应用程序不需要对指标有任何了解或实现。因此,服务网格是可选的,它卸载了监视或授权等常见内容。
如果k8s DNS已经可以实现负载均衡,我们还需要服务网格吗?
负载均衡不需要服务网格。当您在集群中运行多个服务,并希望对所有服务使用单个入口点以简化维护并节省成本时,将使用入口控制器,例如Nginx,Traefik,HAProxy。此外,像 Istio 这样的服务网格也带有自己的入口控制器。
如果使用k8s而不使用服务网格,它是否落后于正常做法?
不,可能有现在没有服务网格的集群仍然使用库伯内特斯。
未来,Kubernetes可能会从服务网格中带来一些功能。
我是Kubernetes平台的新手,尝试启用部署在Kubernetes平台上的tomcat web app的HTTPS安全连接。我对舱单感到困惑。与部署、服务和入口控制器相关的yml。 那么,我是否也必须在部署(在端口:-containerPort:8080)服务(如端口:-端口:80 targetPort:8080协议:TCP名称:http)和入口(在后端:serviceName:tomcat
我只是在本地mac上使用mini kube设置kubernetes。 创建了一个类型为NodePort的服务,并且能够使用url
服务网格的主要特征是 < li >服务发现 < li >配置管理 两者都是由Kubernetes提供的。< br >那我们为什么需要服务网格呢? *我知道对于更复杂的任务,例如分区、安全、复杂的负载平衡和路由,服务网格是正确的工具。
我在windows 10中创建了两个在我的minikube环境中运行的POD。一个POD带有Spring boot应用程序容器,另一个POD带有mysql容器。对于Spring boot应用程序,服务类型为nodePort,对于MYSQL pod,服务类型为club sterIP。这意味着Mysql pod只需要在集群内部进行通信。但是对于Spring boot应用程序,需要从浏览器访问,所以我配
我是Kubernetes的新手,开始阅读文档。通常使用“endpoint”一词,但文档中缺乏明确的定义。 Kubernetes的“终点”是什么?它位于哪里? 我可以想象“endpoint”是单个“节点”的某种接入点,但这只是猜测。
我在两个节点上运行 Kubernetes,并在两个节点上部署一个应用程序(两个 pod,每个节点一个)。 这是一个Spring Boot应用程序。它使用OpenFygnd来实现服务可发现性。在应用程序中,我定义了一个一来控制程序,它有几个API和一个从API内部调用的@Autow的@Service。 每当我对其中一个API进行请求时,Kubernetes都会使用某种负载平衡来将流量路由到其中一个p