在 RHEL 7.1 little endian 上设置 Mesos/Marathon 集群(4)

Mesos-DNS 可在 https://github.com/mesosphere/mesos-dns 网站上获得。它需要 Go 编译器,如果 Go 编译器可用,在任何平台上构建它都很简单。

源代码本身包含一个示例配置文件,该文件可在 https://github.com/mesosphere/mesos-dns/blob/master/config.json.sample 网站上找到。

以下是用于该设置的示例配置:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

 

{

  "zk": "zk://192.168.122.48:2181/mesos",

  "masters": ["192.168.122.48:5050"],

  "refreshSeconds": 60,

  "ttl": 60,

  "domain": "mesos",

  "port": 53,

  "resolvers": ["8.8.8.8"],

  "timeout": 5,

  "listener": "0.0.0.0",

  "SOAMname": "ns1.mesos",

  "SOARname": "root.ns1.mesos",

  "SOARefresh": 60,

  "SOARetry":  600,

  "SOAExpire":  86400,

  "SOAMinttl": 60,

  "dnson": true,

  "httpon": true,

  "httpport": 8125,

  "externalon": true,

  "IPSources": ["netinfo", "mesos", "host"],

  "EnforceRFC952": false

}

 

其中:

zk 是运行 ZooKeeper 的位置

masters 是运行主节点的位置

domain 是 Mesos 集群的域名

port 是 Mesos DNS 端口

listener 是绑定到 mesos-dns 的 IP

resolver 是外部 DNS 服务器

httpport:将运行 mesos-dns HTTP API 的端口

有关 mesos-DNS 配置参数的更多信息,请参阅 Mesos-DNS 配置参数 网站。

您可以在任何主机上运行 mesos-dns 目录或通过 Marathon 框架运行它。例如:

1

 

curl -X POST :8080/v2/apps -d @mesos-dns.json -H "Content-type: application/json"

 

这将通过 Marathon 启动 mesos-dns。

1

 

curl -X POST :8080/v2/apps -d @mesos-dns.json -H "Content-type: application/json"

 

这将通过 Marathon 启动 mesos-dns。

1

2

3

4

5

6

7

8

 

# cat mesos-dns.json

{

    "cmd": "<path>/mesos-dns -config=<path>/config.json",

    "cpus": 1.0,

    "mem": 1024,

    "id": "mesos-dns",

    "instances": 1,

}

 

使用以下命令直接在主机上运行 mesos-dns:

1

 

# mesos-dns -v=1 -config=<path_to_config_json>

 

使用以下格式对该服务命令:

1

 

<service-name>.<framework>.<domain-name>

 

因此,MySQL 服务 DNS 名称将是 mysql.marathon.mesos

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/3bdc2089e653c52f31beb667a3cb34c0.html