dc/os 主机 OS 是否可以使用服务地址?

Are service addresses available to the dc/os host OS?

我试图让我的 dc/os 1.8 docker 容器通过使用服务地址将日志消息发送到也在 dc/os 中 运行 的 logstash logstash 服务。

这似乎不起作用,因为 docker 抛出错误:logstash.marathon.l4lb.thisdcos.directory: no such host

服务地址是否未暴露给主机系统(或者我是否需要为此配置一些东西)?

在 dc/os 1.7 我在我的 logstash 配置中使用了一个固定的主机端口和 logstash.marathon.mesos 作为主机,但是这些 .marathon.mesos 主机名似乎不再存在于 1.8 中。

当我尝试从容器中使用它们时,服务地址工作正常(例如 link 我的 prometheus 服务到我的 alertmanager 服务)。但从主机层面来看,它们并不存在。

编辑:

我关于缺少 marathon.mesos 网址的陈述是错误的。它们确实有效,但我用错了。现在这解决了我的问题。我使用此主机和固定容器端口配置了日志记录。

对于每个尝试相同事情的人:每次通过 json 模式更改 ui 中的服务配置时,您都必须配置固定的主机端口。 ui 的网络选项卡中不再提供固定主机端口配置,因此 dc/os ui 将在每次加载时删除主机端口配置。

仍然不知道为什么 l4lb 网址不起作用。

EDIT2

仍然不知道,但我发现 minuteman 每隔一秒生成一次崩溃和错误日志:

/opt/mesosphere/active/minuteman/minuteman/error.log:

CRASH REPORT Process <0.25809.2> with 0 neighbours exited with reason: {timeout,{gen_server,call,[{lashup_kv,'navstar@10.2.140.216'},{start_kv_sync_fsm,'minuteman@10.2.103.143',<0.25809.2>}]}} in gen_server:call/2 line 204

/opt/mesosphere/active/minuteman/minuteman/log/crash.log

2016-10-12 13:16:49 =CRASH REPORT====
  crasher:
    initial call: lashup_kv_sync_tx_fsm:init/1
    pid: <0.29002.2>
    registered_name: []
    exception exit: {{timeout,{gen_server,call,[{lashup_kv,'navstar@10.2.140.216'},{start_kv_sync_fsm,'minuteman@10.2.103.143',<0.29002.2>}]}},[{gen_server,call,2,[{file,"gen_server.erl"},{line,204}]},{lashup_kv_sync_tx_fsm,init,1,[{file,"/pkg/src/minuteman/_build/default/lib/lashup/src/lashup_kv_sync_tx_fsm.erl"},{line,23}]},{gen_statem,init_it,6,[{file,"gen_statem.erl"},{line,554}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,247}]}]}
    ancestors: [lashup_kv_aae_sup,lashup_kv_sup,lashup_platform_sup,lashup_sup,<0.916.0>]
    messages: []
    links: [<0.992.0>]
    dictionary: []
    trap_exit: false
    status: running
    heap_size: 610
    stack_size: 27
    reductions: 127
  neighbours:

dc/os ui 声称 spartan 和 minuteman 是健康的,但是当 dns 调度程序的 crash.log 为空时 l4lb 每隔一秒就会发生新的崩溃。

它们肯定可以从主机 OS 获得。这些主机服务 运行 是 "Spartan" 和 "Minuteman" 服务吗?

我的问题是双重的:

  1. l4b 不正确运行,仅在完全重新安装集群后才修复

  2. l4b 仅支持 TCP 流量。因为我想使用它使用 udp 将容器日志发送到 logstash(docker-gelf 仅支持 UDP)这失败了