我在Azure中有一个Cloud Service,它包含3个VM(A,B和C)。 B& C是BizTalk服务器,A是客户端应用程序。
B& C应该是负载平衡的,这意味着 - 无论使用哪种算法(它可以是循环的),A都会调用一些URL,这将对B或C的调用进行负载均衡。
我该怎么做?
据我所知,Cloud Service中的负载均衡适用于整个服务均衡的场景。
答案 0 :(得分:1)
在云服务中,您可以定义端点,每个端点可以是直接映射的,也可以是负载平衡的。使用前者,您可以指定映射到特定VM的端口(例如1433)。对于后者,您可以创建负载平衡端点(例如,端口80),然后为一个或多个VM设置它。
现在:在您的特定情况下,您可以让VM A接受流量,例如端口80(端口转发或负载均衡,假设您有多个应用服务器)。然后,假设您的BizTalk服务器正在侦听端口8000.应用服务器可以调用yourcloudservice.cloudapp.net:8000
,然后在BizTalk服务器上进行负载平衡。
这有一个潜在的安全漏洞,其他人可以致电yourcloudservice.cloudapp.net:8000
。为了防止这种情况,您可以在端点上设置访问控制列表(ACL),以便只允许您使用特定的IP地址(基本上将云服务的公共IP地址添加为唯一允许的入站IP地址)。
您还可以将BizTalk服务器部署到其他云服务,并通过虚拟网络连接两个云服务。但是,如果您这样做,那么您将负责执行自己的负载平衡,因为您将直接访问BizTalk VM。