【问题标题】:Kubernetes http requests from frontend to backend service从前端到后端服务的 Kubernetes http 请求
【发布时间】:2021-08-15 06:24:03
【问题描述】:

我不确定我是否在这里问这个问题,但我需要澄清一下我有一个 Kubernetes 集群,我想知道因为前端在客户端的 Web 浏览器上运行。我是否只能在内部公开 API 并仍然从客户端向它发出 HTTP 请求,或者我只能使用节点端口、入口和负载均衡器将服务公开给互联网?

提前感谢您的反馈

【问题讨论】:

    标签: kubernetes


    【解决方案1】:

    您可以通过入口将其公开给前端,也可以(同时)在内部为您在集群中运行的其他服务/pod/容器公开,这完全取决于您如何配置它。

    假设您只希望它在内部运行,您所要做的就是不创建入口。如果要公开它,请创建入口。在这两种情况下,您都应该始终创建“服务”,因为这会将您的 pod 代码暴露给集群(通过入口在内部和外部)。

    服务:https://kubernetes.io/docs/concepts/services-networking/service/

    入口:https://kubernetes.io/docs/concepts/services-networking/ingress/

    希望能澄清一下!

    【讨论】:

    • 感谢您的回复,所以说在我的 Angular 前端我向backend 发出一个 http 请求,而我的 api 有一个称为后端的内部服务,我是否使用入口重写规则将其连接到后端服务无需对外暴露?
    • 如果你有一个 Angular 前端,你必须将它暴露在外部,因为 Angular 在浏览器上运行,它需要一个 HTTPS 端点来连接到 API,这是通过创建入口和服务。如果您不想公开后端,则必须使用在服务器上运行的前端,例如 ASP.NET、Blazor Server、PHP 等,而不是 Angular 等前端系统。在这种情况下,您的前端会在内部连接到服务,因为该流量不会离开服务器。
    猜你喜欢
    • 2018-03-26
    • 1970-01-01
    • 2020-08-03
    • 2019-04-26
    • 1970-01-01
    • 2015-11-13
    • 1970-01-01
    • 2016-04-10
    • 2019-09-19
    相关资源
    最近更新 更多