使用DNS名称在两个VM之间进行通信

时间:2014-08-20 21:53:28

标签: mysql linux azure dns

首先,如果之前有人问过,请道歉。

假设我有运行Linux的虚拟机A和B. VM A将访问VM B中的MySQL服务器。在Azure仪表板中,对于两个VM,它显示关联的DNS名称(对于每个VM显然不同)。从Azure外部的计算机上,我可以使用这些DNS名称直接连接到任何这些虚拟机。

但是,当我尝试使用VM B的DNS名称从VM A连接到VM ​​B中的MySQL服务器(通过MySQL客户端或使用PHP功能)时,每五次连接尝试中就有两次成功。其余尝试表明主机未知(因此,如果我正确,则VM A在解析VM B的DNS名称时出现问题)。

我一直在查看MySQL的配置文件和两个虚拟机的主机文件,但到目前为止我还没有找到任何能够解释为什么VM A有时能够连接到虚拟机的原因B MySQL通过其DNS名称,有时则不是。这似乎是完全虚假的。

如果我用其公共虚拟IP地址替换MySQL虚拟机的DNS名称,我想我可以解决这个问题。但是当VM B的公共虚拟IP发生变化时,这将会出现问题......

任何见解都将受到赞赏。

感谢您的时间。

1 个答案:

答案 0 :(得分:1)

您需要创建一个虚拟网络并将其添加到VNET,以使2机器进行通话。