我正在使用Azure容器服务(AKS而不是ACS)来支持某些API - 其中一些用于公共消费,其中一些不是。
对于公共访问路由,一切都如您所料,创建绑定到公共IP的负载平衡器服务,DNS区域包含转发到公共IP的A记录,流量路由到NGINX控制器然后转发到正确的内部服务端点。
目前预览版本分配一个新的VNET以放置AKS资源组,向前移动我将AKS实例放置在已存在的VNET中,该VNET包含其他组件(App Services,在App Service Environment上)。
我的问题是如何将私有API的访问权限授予同一VNET内的其他组件以及其他VNETS中的组件?
我相信AKS支持ILB类型的负载均衡器,我认为这可能是从其他VNETS路由流量所需要的?但是组件驻留在同一个VNET中的位置呢?
提前谢谢!
答案 0 :(得分:1)
如果需要从AKS群集外部的其他服务访问这些服务,则仍需要ILB在群集中的不同节点上跨服务进行负载平衡。您可以使用在服务中使用注释创建的ILB。另一种方法是使用NodePort,然后按照自己的方式将流量分散到托管端点的所有节点上。
我会使用ILB而不是尝试使用NodePort服务类型。唯一可能是在您的vnet中使用某种类型的API网关VM,您可以在其中定义后端池,如果您通过托管在Azure VM上的第三方API网关托管API或其他内容,这可能是一个解决方案互联星空。
埃迪·维拉尔巴 MCSD:Azure Solutions Architect | CKA:认证的Kubernetes管理员