目录

Spug的使用

概述

因为工作原因,买了各种主机、微主机等设备在家中使用,主要都是用来做一些硬件或者 Kubernetes 相关的测试,机器多了,肯定就有管理的需求,以往在公司中,有类似的堡垒机,或者是中央控制台,也有些开源的 CMDB 等产品会自带主机的管理,在调研了开源的一些方案之后,选择了开源的 Spug 作为家中的运维平台。

why spug

社区里类似的开源产品很多,有用各种语言写的,常见的就是 Java, Python, Go 等等,如果只是在家里使用,服务器相对较少,包括一些云上的服务器等,像本人有六七台需要管理的设备,我们更需要的是一个轻量级的方案,而部分的开源产品做的是相当的复杂,在管理这个运维平台的同时,还需要运维 Redis、MySQL 等数据库,压力可谓不少。而 Spug 恰好就是一个很好的选择。

Spug是面向中小型企业设计的轻量级无Agent的自动化运维平台,整合了主机管理、主机批量执行、主机在线终端、应用发布部署、在线任务计划、配置中心、监控、报警等一系列功能。

以上是 Spug 的介绍,可以看到他的这些功能已经满足我日常的运维工作了,并且还提供了非常简单易用的 WebUI,更重要的是,他只需要依赖一个 MariaDB 数据库,相对来说大部分的同类产品还需要一个 Redis,虽然我知道 Spug 在 Docker 镜像里依然是内置了 Redis,但不妨碍我开始使用他,因为我只需要配置一个 MariaDB 就可以使用 Spug 了。

定时任务

使用 Spug 还有一个很重要的原因就是定时任务,之前在开源上寻找过一些定期任务的方案,最简单的当然是 Linux Crontab 这的工具,但是相对来说缺乏 UI,操作上比较麻烦,其他类似 Airflow 和 Argo Workflow 其实也是可以考虑的,但是两者的依赖太多了,相对来说比较重量级,我只是想有一个定时任务的可视化工具,而不想维护多个数据库甚至是一个 k8s 集群,所以最终还是放弃了。而 Spug 的定时任务满足了我可视化和轻量级的需求,是一个相当不错的功能。

/spug%E7%9A%84%E4%BD%BF%E7%94%A8/img.png

其他

Spug 的开源版还有很多功能,比如批量执行任务等,都是非常使用的运维工具,本文就不多介绍了,大家可以去官网看看。整体来说 Spug 作为一个轻量级的 CMDB/运维平台的工具已经是很实用了。