安装已停靠在Mesos群集上的Mesos DNS
我在尝试运行停靠在mesos群集上的mesos dns时遇到了一些问题 我已经在Windows8.1主机上安装了2台ubuntu trusty虚拟机。 我的虚拟机称为docker虚拟机和docker sl虚拟机;其中第一个运行mesos master,第二个运行mesos slave 虚拟机有2个网卡;一个运行NAT以通过主机访问internet,另一个是仅用于内部通信的主机适配器 虚拟机的IP为:安装已停靠在Mesos群集上的Mesos DNS,dns,docker,mesos,marathon,Dns,Docker,Mesos,Marathon,我在尝试运行停靠在mesos群集上的mesos dns时遇到了一些问题 我已经在Windows8.1主机上安装了2台ubuntu trusty虚拟机。 我的虚拟机称为docker虚拟机和docker sl虚拟机;其中第一个运行mesos master,第二个运行mesos slave 虚拟机有2个网卡;一个运行NAT以通过主机访问internet,另一个是仅用于内部通信的主机适配器 虚拟机的IP为: 192.168.56.101对于docker vm 192.168.56.102对于docke
- 192.168.56.101对于docker vm
- 192.168.56.102对于docker sl vm
{
"args": [
"/mesos-dns",
"-config=/config.json"
],
"container": {
"docker": {
"image": "mesosphere/mesos-dns",
"network": "HOST"
},
"type": "DOCKER",
"volumes": [
{
"containerPath": "/config.json",
"hostPath": "/usr/local/mesos-dns/config.json",
"mode": "RO"
}
]
},
"cpus": 0.5,
"mem": 256,
"id": "mesos-dns",
"instances": 1,
"constraints": [["hostname", "CLUSTER", "docker-sl-vm"]]
}
{
"id": "peek",
"cmd": "env >env.txt && python3 -m http.server 8080",
"cpus": 0.5,
"mem": 32.0,
"container": {
"type": "DOCKER",
"docker": {
"image": "python:3",
"network": "BRIDGE",
"portMappings": [
{ "containerPort": 8080, "hostPort": 0 }
]
}
}
}
这个config.json:
{
"zk": "zk://192.168.56.101:2181/mesos",
"refreshSeconds": 60,
"ttl": 60,
"domain": "mesos",
"port": 53,
"resolvers": ["8.8.8.8"],
"timeout": 5,
"email": "root.mesos-dns.mesos"
}
我还运行了一个名为peek的测试方案应用程序,其描述如下:
{
"args": [
"/mesos-dns",
"-config=/config.json"
],
"container": {
"docker": {
"image": "mesosphere/mesos-dns",
"network": "HOST"
},
"type": "DOCKER",
"volumes": [
{
"containerPath": "/config.json",
"hostPath": "/usr/local/mesos-dns/config.json",
"mode": "RO"
}
]
},
"cpus": 0.5,
"mem": 256,
"id": "mesos-dns",
"instances": 1,
"constraints": [["hostname", "CLUSTER", "docker-sl-vm"]]
}
{
"id": "peek",
"cmd": "env >env.txt && python3 -m http.server 8080",
"cpus": 0.5,
"mem": 32.0,
"container": {
"type": "DOCKER",
"docker": {
"image": "python:3",
"network": "BRIDGE",
"portMappings": [
{ "containerPort": 8080, "hostPort": 0 }
]
}
}
}
问题
在本教程中,dig命令,如dig\u peek.\u tcp.marathon.mesos SRV
得到了以下答案:
; <<>> DiG 9.9.5-3ubuntu0.5-Ubuntu <<>> _peek._tcp.marathon.mesos SRV
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57329
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; QUESTION SECTION:
;_peek._tcp.marathon.mesos. IN SRV
;; ANSWER SECTION:
_peek._tcp.marathon.mesos. 60 IN SRV 0 0 31000 peek-27346-s0.marathon.mesos.
;; ADDITIONAL SECTION:
peek-27346-s0.marathon.mesos. 60 IN A 10.141.141.10
;; Query time: 4 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Oct 24 23:21:15 UTC 2015
;; MSG SIZE rcvd: 160
看起来mesos dns无法解析\u peek.\u tcp.marathon.mesos SRV
有人知道为什么以及如何修复它吗?
提前谢谢你
更新
命令的结果/etc/resolv.conf
:
nameserver 10.10.11.1
nameserver 10.10.10.7
查看有关从属设备的设置:
要允许Mesos任务将Mesos DNS用作主DNS服务器,必须在每个从属服务器中编辑文件/etc/resolv.conf
,并添加新的名称服务器。例如,如果mesos dns在IP地址为10.181.64.13的服务器上运行,则应在每个从属节点的/etc/resolv.conf
开头添加行nameserver 10.181.64.13
我认为您的/etc/resolv.conf
中缺少本地IP(192.168.56.102
)地址
否则,您也可以尝试,但仍需编辑上述文件。我是上述教程的作者。很抱歉看到你有问题。
cat/etc/resolv.conf
给了你什么?嘿,迈克尔!谢谢你的指导和回答!我刚刚根据你的要求更新了这个问题。我已经读到一些人在ubuntu、docker和dns方面有困难。与使用53端口的dnsmasq相关的问题。因此,我关闭了它,但仍然没有结果。您可以尝试将first entry设置为127.0.0.1
,另请参阅,并让我知道这是否会改变什么?我做了更改,但它不起作用,但它对您的图像起作用!!