监控、日志记录和调试

了解如何通过 DC/OS 监控数据中心运行的健康状况

DC/OS 组件是构成 DC/OS 核心的 单元 这些组件由我们的内部诊断实用工具 () 进行监控。dcos-diagnostics.service). 此实用程序扫描所有 DC/OS 单元,然后揭示每个主机上的 HTTP API。有关 DC/OS 组件的完整说明,请参阅 . 组件健康状况页面提供 systemd 中运行的所有 DC/OS 系统组件的健康状况。您可以按健康状况、主机 IP 地址或特定 systemd 进行深入查看。

启动 DC/OS UI 并导航到系统 -> 组件页面。您可以按健康状况对组件进行排序。

图 1. 显示健康状况的组件页面

您可以单击 DC/OS 组件以查看详细信息,包括角色、节点和健康状况。

节点详情

图 2. 单个组件的详细信息

通过点击节点查看组件 journald(日志)输出,您可以进一步调试。

图 3:Journald 日志输出

健康状态

  • 健康 所有群集节点均健康。单元已加载但不处于“活跃”或“不活跃”状态。
  • 不健康 一个或多个节点存在问题。单元未加载或者处于“活跃”或“不活跃”状态。

系统健康 API 有四个可能的状态:0 - 3, OK(良好);CRITICAL(严重); WARNING(警告);UNKNOWN(未知)。

系统健康端点通过管理节点上的 DC/OS 诊断实用程序展示:

聚合

群集健康端点的聚合通过管理节点上的相同诊断应用程序完成。您可以通过对群集中的任何管理节点进行几个查询来进一步了解此 API:

  1. 运行此命令以打开 root 会话:

  2. 运行以下命令以获得群集健康状况:

    • 系统健康状况(按单元):

      1. curl --unix-socket /run/dcos/dcos-diagnostics.sock http://localhost/system/health/v1/units
    • 系统健康状况(按节点):

    • 系统健康状况报告:

    DC/OS 用户界面使用这些聚合端点生成您在系统健康状况控制台浏览的数据。

    缺少群集主机

    系统健康 API 依靠 Mesos-DNS 来了解所有群集主机。它通过结合来自 A 记录的查询以及 leader.mesos:5050/slaves 来找到这些主机,以获取群集中主机的完整列表。此系统有一个已知的漏洞,如果 Mesos 代理节点的服务不健康,代理节点将不会出现在从 leader.mesos:5050/slaves 返回的列表中。这意味着系统健康 API 不会显示此主机。如果您遇到这种运行状态,最有可能是缺失的主机上的 Mesos 代理节点服务不健康。

    生成捆绑包的内容不会随着时间的推移而稳定,而且任何内部或第三方捆绑分析工具在这方面都应该进行防御性编程。

    故障排除

    如果您有任何问题,您可以通过对 Mesos 领导管理节点执行 SSH 和查看诊断组件 (systemd) 的 ). 状况,来检查诊断服务是否在运行。

    [

    性能监控

    监控 DC/OS 群集

    ]($9e2d230cb2e92b92.md)[

    了解 DC/OS 核心组件和服务的诊断和状态日志

    ]($e55e4165393dbedb.md)[

    调试

    使用 CLI 和 UI 调试 DC/OS

    ]($227e6a1b146c9d54.md)