gpt4 book ai didi

kubernetes - GCP-如何使用Ingress在负载均衡器上服务多个应用程序?

转载 作者:行者123 更新时间:2023-12-02 11:55:28 24 4
gpt4 key购买 nike

我正在尝试在GCP上的kubernetes上设置负载平衡,现在卡住了。
因此,我正在按照本教程(Tutorial)进行操作,但无法绕过步骤6:(可选)在负载均衡器上服务多个应用程序

我正在使用仅从配置映射中打印名称的节点简单应用程序。
遵循每个步骤后,找不到我的路径(404)。

这是我的部署示例(我的服务都使用“相同”部署,仅更改名称和镜像):

kind: Deployment
metadata:
name: nodetestfoo
namespace: default
spec:
selector:
matchLabels:
run: nodetestfoo
template:
metadata:
labels:
run: nodetestfoo
spec:
containers:
- image: gcr.io/e3-dev-227917/nodetestfoo:v4
imagePullPolicy: IfNotPresent
name: nodetestfoo
ports:
- containerPort: 3333
protocol: TCP
envFrom:
- configMapRef:
name: env-config
---
apiVersion: v1
kind: Service
metadata:
name: nodetestfoo
namespace: default
spec:
ports:
- port: 3333
protocol: TCP
targetPort: 3333
selector:
run: nodetestfoo
type: NodePort

这是我的入口:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: api-ingress
spec:
rules:
- http:
paths:
- path: /test
backend:
serviceName: nodetest
servicePort: 3333
- path: /foo
backend:
serviceName: nodetestfoo
servicePort: 3333

我的kubectl描述了入口输出:
enter image description here

使用路径的请求响应
enter image description here

没有路径的请求的响应(此默认后端确实不存在,所以我认为这是预期的行为)
enter image description here

我应该怎么做才能使其正常工作?我有点迷路了。 (显然,在我学习之初,我是云的新手)

最佳答案

让我告诉你你做了什么。您具有功能配置,但没有给它足够的时间来部署负载均衡器。具有功能的http负载均衡器通常需要5分钟左右。但是您可能会感到焦虑,并且永远不要让它完全配置。因此,只需返回到原始Ingress,创建它,然后等待即可。大约5分钟后,将其 curl 。

您说的是“我必须添加此批注...”。通过添加该注释,您可以切换到其他Ingress Controller(您必须先前安装)。 Nginx Ingress Controller需要毫秒来准备,就像更新Nginx服务器配置文件一样。流量也通过tcp负载均衡器(也可以非常快地准备就绪)到达作为Pod的Ingress Controller。因此,这里有一个负载平衡器,它可以在约30秒内准备就绪,因此看来它可以工作,而另一个则不能。

现在,我之所以这样说是因为您似乎对所发生的事情有些困惑,而不是因为我建议回到GKE Ingress Controller。您仍然可能希望坚持使用nginx Ingress Controller。这是可靠的。我个人比较喜欢GKE,这有几个原因。否则您可能会遇到其他任何问题。现在有数十个Ingress Controller。

关于kubernetes - GCP-如何使用Ingress在负载均衡器上服务多个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61669394/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com