Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Virtual machine 一个Kubernetes吊舱如何为多个用户服务?_Virtual Machine_Kubernetes Pod_Linode - Fatal编程技术网

Virtual machine 一个Kubernetes吊舱如何为多个用户服务?

Virtual machine 一个Kubernetes吊舱如何为多个用户服务?,virtual-machine,kubernetes-pod,linode,Virtual Machine,Kubernetes Pod,Linode,我的同事和我有一个问题,一个Kubernetes吊舱如何能为多个用户服务。我们的信念是一个吊舱服务于一个终端用户。这是我们的实验 我们有一个基本的角度前端与一个.NETAPI服务器对话,该服务器使用运行在Linode Kubernetes集群上的MySQL PVClaim结构。集群有3个节点,具有大量的RAM、磁盘空间和CPU。这是“kubectl获得全部”的打印件: C:\development\Kubernetes >kubectl get all NAME

我的同事和我有一个问题,一个Kubernetes吊舱如何能为多个用户服务。我们的信念是一个吊舱服务于一个终端用户。这是我们的实验

我们有一个基本的角度前端与一个.NETAPI服务器对话,该服务器使用运行在Linode Kubernetes集群上的MySQL PVClaim结构。集群有3个节点,具有大量的RAM、磁盘空间和CPU。这是“kubectl获得全部”的打印件:

C:\development\Kubernetes >kubectl get all

NAME                                  READY   STATUS    RESTARTS   AGE
pod/dataapi-server-57c87f56c6-2fcdz   1/1     Running   0          21h
pod/gems-deployment-c9f6dbdbb-2qhff   1/1     Running   0          20h
pod/mysql-6d4b9f6f46-8m66h            1/1     Running   0          21h

NAME                            TYPE           CLUSTER-IP      EXTERNAL-IP      PORT(S)        AGE
service/dataapi-server          ClusterIP      10.128.6.155    <none>           80/TCP         21h
service/gems-frontend-service   LoadBalancer   10.128.76.185   104.***.**.**    80:31190/TCP   20h 
service/kubernetes              ClusterIP      10.128.0.1      <none>           443/TCP        4d23h
service/mysql                   ClusterIP      None            <none>           3306/TCP       21h

NAME                              READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/dataapi-server    1/1     1            1           21h
deployment.apps/gems-deployment   1/1     1            1           20h
deployment.apps/mysql             1/1     1            1           21h
C:\development\Kubernetes>kubectl获取全部
名称就绪状态重新启动
pod/dataapi-server-57c87f56c6-2fcdz 1/1运行0 21小时
pod/gems-deployment-C9F6DBB-2qhff 1/1运行0 20小时
pod/mysql-6d4b9f6f46-8m66h 1/1运行0 21小时
名称类型CLUSTER-IP外部IP端口年龄
服务/dataapi服务器群集IP 10.128.6.155 80/TCP 21h
服务/gems前端服务负载平衡器10.128.76.185 104.*.*.*.**80:31190/TCP 20h
service/kubernetes ClusterIP 10.128.0.1 443/TCP 4d23h
service/mysql集群无3306/TCP 21h
姓名就绪最新可用年龄
deployment.apps/dataapi-server 1/1 21h
deployment.apps/gems-deployment 1/1 20h
deployment.apps/mysql 1/1 21h
我的同事和我在两台不同的客户机上并肩工作,在各自的Chrome浏览器中启动了前端,并且都做了一些基本的独立工作。令我们惊讶的是,我们都能击中同一个吊舱(“gems-deployment-c9…”),并且工作效率很高。基于我们对POD和虚拟机的理解,这对我们来说毫无意义。我将在这里指出,我们对库伯内特和容器世界相当陌生

有人能解释为什么会这样吗?有什么文件可以指给我们看吗?我的谷歌搜索只在每个吊舱的多个容器上找到了文件,这不是我们的情况


提前谢谢

当您向Angular应用程序发出常规HTTP GET请求时,负载平衡器(服务)会根据节点上的压力确定应该接受请求的pod。因为您有一个前端pod,所以它只驻留在一个节点上,所以该节点处于选中状态

然后,节点创建一个新线程,该线程将持续发送响应(即网页)所需的时间。如果您的请求是同时进行的,那么节点通常只会打开另一个线程并同时为您提供服务,这与在Kubernetes之外托管此前端时发生的情况相同


对于您担心的问题,节点必须接收到的请求数量超过其有效处理的数量。在这种情况下,优化负载平衡器或提高节点功率都是有效的响应。

非常感谢。回答得好!