kubernetes - Azure Kubernetes 服务 : using an NGINX ingress controller with a Ocelot-based API gateway

标签 kubernetes kubernetes-ingress azure-aks

我计划部署到 AKS 集群并使用 NGINX 入口 Controller ,这样我的微服务将位于集群内部,而 NGINX 入口 Controller 将成为微服务的入口点。

我的一个微服务使用 Ocelot 库充当 API 网关,它实现了 BFF 模式。所以我的入口 Controller 将只有一个规则,它将向路径“/(.*)”发出的请求路由到 API 网关微服务。

我的问题是 - 这是使用入口 Controller 和 API 网关微服务的传统方式吗?不知何故,这感觉是多余的,尽管我认为两者都有不同的责任。

最佳答案

我认为在这种情况下你不需要 Ingress-Controller,我们使用一个 API Gateway,它是 Ambassador,我们只需为其 kubernetes 服务分配一个公共(public) IP。

如果您不希望其他 pod 使用 Ingress 对象公开自己,并且所有流量都将进入您的 API 网关,我只需删除 Ingress-controller 并为您的 API 网关 pod 启用 LoadBalancer 类型的服务

关于kubernetes - Azure Kubernetes 服务 : using an NGINX ingress controller with a Ocelot-based API gateway,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61179491/

相关文章:

Azure-ML 部署看不到 AzureML 环境(版本号错误)

Azure AKS - 如何使用 Terraform 安装 azure-keyvault-secrets-provider 附加组件

kubernetes - 无法从 Ldapmain 对您进行身份验证,因为 "Invalid credentials for <username>"- 通过 Helm Chart 安装的 Gitlab 社区版

apache-spark - 如何在没有 kerberos 的情况下启动 spark 3.0.0 kubernetes 工作负载?

kubernetes - 如何在 EKS 中设置 Kubernetes 节点的名称

ssl - 如何在 Google Kubernetes Engine 上设置可扩展自定义域和自动 SSL 的架构

kubernetes多域动态路由

docker - k8s集群中的两个coredns Pods处于pending状态

kubernetes - 是否可以使用单个 GKE 入口 Controller 拥有多个入口资源

azure - Terraform - 如何查找用于网络对等互连的 Azure Kubernetes AKS vnet ID