如何从主机访问虚拟机上运行的 Mesos DNS

如何从主机访问虚拟机上运行的 Mesos DNS

我有一台主机(Mac OS X 10.11.1)通过 运行虚拟机vagrant。我在其中一个节点上安装了 Mesos DNS,并resolv.conf在其他集群节点上进行了修改,因此我可以从任何节点成功使用 DNS。但问题是我如何才能从主机上使用它。如果我在端口上运行应用程序,8000我可以通过 成功连接到它private_node_IP:8000,但如果集群上应用程序的解析域名是,myapp.marathon.mesos:8000我无法从主机连接到它。

Vagrant文​​件

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure(2) do |config|
  config.vm.box = "bento/centos-7.1"

  config.vm.define "masterslave" do |masterslave|
      masterslave.vm.network "private_network", ip: "192.168.10.10"
      masterslave.vm.hostname = "masterslave"
  end
  config.vm.define "slavedns" do |slavedns|
      slavedns.vm.network "private_network", ip: "192.168.10.11"
      slavedns.vm.hostname = "slavedns"
  end  
  config.vm.define "slave" do |slave|
      slave.vm.network "private_network", ip: "192.168.10.12"
      slave.vm.hostname = "slave"
  end  
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "1024"
  end
end

从属节点上的 ** resolv.conf **

# Generated by NetworkManager
nameserver 192.168.10.11

答案1

没有办法直接使用 dns 来执行此操作。我目前正在使用 nginx 代理传递来重定向 marathon 应用程序端点。

首先,您需要一个服务发现工具,例如 bamboo。这样,您就可以通过 nginx 将所有子域重定向到 bamboo 端点。

相关内容