如何使用公共云服务设置内部环境?

时间:2018-12-08 14:09:38

标签: azure networking dns kubernetes azure-aks

对于具有AKS服务的Microsoft Azure云,我们希望部署仅可由我们的团队访问的内部应用程序。

这种情况:

  • 使用公共领域myawesomesite.com进行生产。
  • 使用子域internal.myawesomesite.com进行登台。 (限制访问)

即使使用private DNS也只能连接虚拟网络虚拟机。

那怎么办?

3 个答案:

答案 0 :(得分:1)

您可以在Azure中使用内部负载平衡器(ILB),它与常规负载平衡器一样,但是仅具有来自部署了AKS的同一VNET的私有IP(因此,没有公共IP)。它使用注释:

annotations: service.beta.kubernetes.io/azure-load-balancer-internal: "true"

,如本article中所述。您可以使用AzureDNS将A记录指向该IP。

答案 1 :(得分:0)

最后,这是正确的解决方案:

https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx/examples/whitelist

如果使用nginx-ingress,请使用以下设置进行安装:

helm install stable/nginx-ingress \
    --set controller.service.externalTrafficPolicy=Local

答案 2 :(得分:-2)

这是Calico在AWS上的解决方案:

https://docs.aws.amazon.com/eks/latest/userguide/calico.html