首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从公共互联网提供对Azure私有kubernetes集群中托管的应用程序的入站访问

如何从公共互联网提供对Azure私有kubernetes集群中托管的应用程序的入站访问
EN

Stack Overflow用户
提问于 2020-05-29 04:42:51
回答 3查看 386关注 0票数 1

我在Azure K8S集群中部署了一个应用程序,使用NGINX作为网关,具有公共静态IP,基于AKS & PUBLIC-IPAKS & NGINX

现在,我需要在Azure私有集群中部署应用程序,即,在私有vnet (参见CREATE PRIVATE AKS)中运行;尝试将公共静态IP分配给NGINX不起作用,这是可以预期的,因为负载均衡器期望的是私有IP,而不是公共IP。

如何使用NGINX和公网静态IP提供内网集群app的入站访问?

EN

回答 3

Stack Overflow用户

发布于 2020-05-29 07:01:04

正如上面的注释所述,您可以通过Azure中的应用程序网关执行相同的操作。但是如果你打算只使用AKS,你可能只想使用Application Gateway作为你的入口控制器,它已经用私有集群创建了。

请遵循此操作以实现相同的https://microsoft.github.io/AzureTipsAndTricks/blog/tip256.html

票数 0
EN

Stack Overflow用户

发布于 2020-05-29 14:23:41

根据您的描述,我知道您希望通过NGINX入口控制器进行入口流量,NGINX入口控制器具有具有静态IP的负载均衡器服务。如果您的部署配置正确,则应将负载均衡器服务分配给具有公网IP的NGINX入口控制器。由于我不知道您的名称空间,部署的命名等尝试:

代码语言:javascript
复制
kubectl get services --all-namespaces | grep -i loadbalancer

您应该可以发现nginx负载均衡器服务有公网IP。现在,由于NGINX是您的入口控制器,这意味着您有一个第7层负载均衡器作为入口,因此您需要创建一个入口路由到在AKS中运行的应用程序。这里有来自Azure NGINX ingress的文档,也有Ingress K8s的文档

票数 0
EN

Stack Overflow用户

发布于 2020-06-03 03:14:49

您好,您有两种方法来根据您的需求实现that...Depending (和Azure成本...):

1-使用Azure Application Gateway。对于我自己,我使用Terraform。在这里你可以看到关于internal IP address的官方文档。

现在你可以使用这个作为你的新入口(去掉NGINX),如下所示:

代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: guestbook
  annotations:
    kubernetes.io/ingress.class: azure/application-gateway
spec:
  rules:
  - http:
      paths:
      - backend:
          serviceName: frontend
          servicePort: 80

或者,您可以在内部使用NGINX作为您的入口,如选项2中所述。

2-首先,您必须有一个公共IP与负载均衡器相关联的it.The后端从该LB必须符合您的需求。

但是这里的trick...Do不是使用该公网IP创建NGINX,而是使用内部IP和内部负载均衡,您可以在以下url中了解如何创建NGINX:

https://docs.microsoft.com/en-us/azure/aks/ingress-internal-ip

您必须做的重要的事情是在helm参数上使用nginx ovveride:

代码语言:javascript
复制
controller:
  service:
    loadBalancerIP: 10.240.0.42
    annotations:
      service.beta.kubernetes.io/azure-load-balancer-internal: "true"

当然,必须创建内部VNET,并且负载均衡器IP必须是正确的。

现在让NGINX在私有IP后面监听,最后一个技巧是验证来自公共IP 的流量是否被重定向到内部VNET...Of课程,这取决于您如何在持有公共IP的LB后面进行基础设施设置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62074177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档