我是 Azure 新手,正在尝试在 Azure 中设置我们公司的测试环境。
据我了解,两台机器要在 Azure 中相互通信,它们需要位于同一个云服务中,即我们的 Web 服务器和 DB 服务器。
因此,我创建了一个服务,然后创建了该服务中的每个 VM。它们都在运行。在端点中我可以看到:
网络服务器:
NAME PROTOCOL PUBLIC PORT PRIVATE PORT LOAD-BALANCED SET NAME
HTTP TCP 80 80 -
HTTPS TCP 443 443 -
PowerShell TCP 5986 5986 -
Remote Desktop TCP 50232 3389 -
数据库服务器:
NAME PROTOCOL PUBLIC PORT PRIVATE PORT LOAD-BALANCED SET NAME
MSSQL TCP 1433 1433 -
PowerShell TCP 54327 5986 -
Remote Desktop TCP 52459 3389 -
在云服务中输入区域
INPUT ENDPOINTS
protoApp : 123.456.789.227:80
protoApp : 123.456.789.227:443
protoApp : 123.456.789.227:5986
protoApp : 123.456.789.227:50232
protodb : 123.456.789.227:1433
protodb : 123.456.789.227:54327
protodb : 123.456.789.227:52459
我可以连接到 protodb 服务器,但不能连接到 protoapp 服务器(在给定的端口上)。
确实有两个/三个问题。
- 它们应该都在同一个云服务中吗?
- 实时数据库和 Web 服务器是否应位于单独的云服务器中(尚未创建)
- 有人能想到为什么我无法再通过 MSTSC/rdp 连接到其中一台机器的原因吗,即使端点表示一切正常,机器正在运行并且云服务表示它将其作为端点。
答案1
正如您自己指出的那样,您问了多个问题。我将尝试触及所有这些问题:
“云服务”是指相同服务器的逻辑分组。实际上,云服务意味着一个外部 IP 地址。例如,您可以在同一个云服务中轻松形成负载平衡的 Web 服务器场,或者如果您有不应公开访问的服务器,那么将它们也放在那里也没什么坏处。您不能在多个服务器的同一端口上发布端点,除非这是一组负载平衡的(相同服务器)。
一种更灵活的方法是使用虚拟网络。在这里,您可以更好地控制内部 IP 寻址,并且能够将服务器放在同一个虚拟网络内的不同云服务中。如果您有 4 台前端服务器和 2 台后端数据库服务器,我可能会为它们全部创建一个虚拟网络,然后将它们分组到两个不同的云服务中,一个用于 Web,一个用于数据库。但这只是我的想法 - Azure 很灵活,而且本来就应该如此。
您绝对应该能够通过 RDP 连接到您的两台服务器。如您所见,它们被分配了一个唯一的公共端口,该端口被转换为虚拟机上的默认 RDP 端口 (3389),因此您应该能够同时访问这两个服务器。也许虚拟机本身上运行的操作系统或 Windows 防火墙有问题。