gpt4 book ai didi

azure - 如何让云服务与 Azure 中的 VM 进行通信?

转载 作者:行者123 更新时间:2023-12-04 05:24:22 24 4
gpt4 key购买 nike

我在 Azure 中设置了云服务和 VM 角色。 My Cloud Service 是一个在 Server 2012 上运行的简单 MVC 站点,VM 是安装了 redis 的 Ubuntu 操作系统。 Azure 中的角色间通信如何进行? (一切都在同一个数据中心。)

我可以在虚拟机上设置一个公共(public)端点,但我不想让我的 redis 机器暴露。有没有正确的方法来做到这一点?分配给我的虚拟机的私有(private) IP 是固定的吗?如果是这样我就可以使用它,对吗?

最佳答案

您必须使用 Windows Azure 虚拟网络 (WAVN) 才能打开 Windows Azure 虚拟机和 Windows Azure 云服务之间的通信。

请注意,WAVN 对指定关联组有明确的要求。因此,如果您没有 - 您可以在创建虚拟网络时创建。现在,您的云服务(即您的 Web/ worker 角色)必须位于同一个关联组中,以便能够“加入”该虚拟网络。我不确定创建服务后是否可以更改云服务的关联组。因此,只需指定您在其中创建虚拟网络的 Affinity 组即可创建新的云服务。

下一步是配置虚拟机以使用您创建的虚拟网络 - 这是“来自库”过程的一部分。

现在您需要指示云服务(Web/worker 角色)。这是通过 Visual Studio 中云项目的 .csconfig 文件完成的。目前还没有用于配置网络的 UI。您必须包含一个 NetworkConfiguration 部分作为 Configuration 根元素的直接后代:

<NetworkConfiguration>
<VirtualNetworkSite name="SampleNetwork" />
<AddressAssignments>
<InstanceAddress roleName="ContactManager.Web">
<Subnets>
<Subnet name="FrontEnd" />
</Subnets>
</InstanceAddress>
</AddressAssignments>
</NetworkConfiguration>

描述您的角色以及您希望角色驻留的虚拟网络名称和子网。

祈祷吧,现在一切都应该在同一个网络中——您创建的网络。名称解析必须正常工作,但它处于预览状态,因此预计会出现问题。现在,您的 MVC 应用程序可以直接“调用”您的 Linux VM。只需使用虚拟机名称即可进行寻址。

如果您想从 Linux VM 调用 MVC - 您必须寻址 WebRole 的特定实例。

至于 IP 地址 - 内部 IP 地址(又称直接 IP 地址或 DIP)永远不会固定!即使您创建虚拟网络,也只能使用 DHCP 分配的 IP 地址。它们将从您在虚拟网络设置中指定的池中分配。

关于 Windows Azure 虚拟网络的好读物可以在 here 找到。 .

关于azure - 如何让云服务与 Azure 中的 VM 进行通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13365028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com