运维经常需要同时查看各台windows/linux服务器的实时状态。有没有方便的方法能够同时查看状态,而且支持windows和linux呢?tmuxinator,tmux, 结合使用glances可以达到目的。

glances 是一款用于 Linux、BSD、windows 的开源命令行系统监视工具,它使用 Python 语言开发,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。glances可以以服务模式启动,以服务模式启动后,可以从任意一台linux客户端用glances命令连接到glances服务,从而显示服务器的状态,而达到从客户端远程监控服务器的目的。

tmux是linux下面的一个分屏幕,可以把你的屏幕分成多个工作区,同时进行不同的工作。而tmuxinator则让tmux可以按照预先的设置,同时在一个界面的多块区域分别运行指定的命令。这样我们可以利用tmuxinator同时运行多个glances命令, 监控多台服务器的状态。

glances: https://github.com/nicolargo/glances

tmuxinator: https://github.com/tmuxinator/tmuxinator

tmuxinator结合glances,可同时看到多台服务器上的预警和严重问题(严重问题,告警在glances中会显示红色,黄色)。 各台server启动glances server: glances -s 0.0.0.0, 找一台linux客户端可以同时显示多台服务器的状态。(glances可以监控windows/linux/mac的状态)

示例文件~/.tmuxinator/glances.yml的配置:

name: glances
root: ~/

windows:
      - editor:
      #layout: main-vertical
      layout: tiled
      panes:
        - glances -c 127.0.0.1
        - glances -c 192.168.1.5
        - glances -c localhost
        - glances -c 127.0.0.1
        - glances -c 127.0.0.1

tmuxinator start glances,运行效果如图: Alt Text