yupozhang
V2EX  ›  Python

轻量好用的 Python 开源自动化运维平台

By yupozhang at 2020 年 4 月 27 日 · 9595 次点击

推荐一款开源轻量级运维平台:Spug

简单好用,不需要安装 Agent,功能包含主机管理、主机批量执行、主机在线终端、应用发布、任务计划、配置中心、监控、报警等一系列功能。

Github: https://github.com/openspug/spug

官网: https://spug.dev

技术栈 :

后端:Python+Django

前端:React+Antd

公众号: openspug

如果你感觉不错。欢迎在仓库点击 Star 。

48 条回复  •  2020-05-13 09:52:25 +08:00
bnm965321
   1
bnm965321  
   2020 年 4 月 27 日
不考虑集成 ansible 吗
raslan
   2
raslan  
   2020 年 4 月 27 日
同事刚推荐了,老哥是开发者吗
kaixuan1901
   3
kaixuan1901  
   2020 年 4 月 27 日
已 Star
fly9006
   4
fly9006  
   2020 年 4 月 27 日
star +1
yupozhang
   5
yupozhang  
OP
   2020 年 4 月 27 日
@wampyl 对。 我是项目负责人
yupozhang
   6
yupozhang  
OP
   2020 年 4 月 27 日
@fly9006 感谢老哥。
yupozhang
   7
yupozhang  
OP
   2020 年 4 月 27 日
@kaixuan1901 感谢老哥。
yupozhang
   8
yupozhang  
OP
   2020 年 4 月 27 日
@bnm965321 没打算集成 Ansible 。
Guys
   9
Guys  
   2020 年 4 月 27 日
老哥 考虑集成下比较炫酷的 实时的服务器状态显示啊,比如实时的网络情况,cpu 占用,内存占用,存储空间占用等等,
这些吗?
yuyueMJ
   10
yuyueMJ  
   2020 年 4 月 27 日
demo 怎么登录呀
yupozhang
   11
yupozhang  
OP
   2020 年 4 月 27 日
@yuyueMJ

https://demo.spug.dev
账号:admin
密码:spug
github 上也有写演示环境地址。
yupozhang
   12
yupozhang  
OP
   2020 年 4 月 27 日
@Guys 你说这些属于巡检的功能,后面的版本可能会支持。
wxch111vv
   13
wxch111vv  
   2020 年 4 月 27 日
ssh 为啥没私钥登陆?
yuyueMJ
   14
yuyueMJ  
   2020 年 4 月 27 日
@yupozhang 谢谢 后来在 github 上找到了,但是官网上没写
yupozhang
   15
yupozhang  
OP
   2020 年 4 月 27 日
@yuyueMJ 好的。官网后续会完善一下 demo 地址。
yupozhang
   16
yupozhang  
OP
   2020 年 4 月 27 日
@wxch111vv 有呀。主机发布和管理都是走 ssh 密钥的。
bbbb
   17
bbbb  
   2020 年 4 月 27 日 via iPhone
star
szdubinbin
   18
szdubinbin  
   2020 年 4 月 27 日
牛逼,支持
skenan
   19
skenan  
   2020 年 4 月 28 日
之前记得是用 flask 写的 api,最近用 django 重写了?
yupozhang
   20
yupozhang  
OP
   2020 年 4 月 28 日
@bbbb 感谢感谢。
yupozhang
   21
yupozhang  
OP
   2020 年 4 月 28 日
@skenan 对,1.0 版本用的 Flask,现在是 2.0 用 Django 重构了。2.0 更强大更好用。
aaaaaaaaa
   22
aaaaaaaaa  
   2020 年 4 月 28 日
请问下批量执行命令是否支持变量?比如:echo ${server_name}
yupozhang
   23
yupozhang  
OP
   2020 年 4 月 28 日
@aaaaaaaaa 可以的。
A=123
B=456

echo $A
echo $B
上面这些可以批量执行。
aaaaaaaaa
   24
aaaaaaaaa  
   2020 年 4 月 28 日
@yupozhang 不是这个意思,我是说 A=123 B=456 需要配置在添加的主机上,然后在批量执行的脚本中引用这个变量,而不是直接把变量写在脚本里

场景:我需要在每台机器的 root 目录里增加一个 txt 文本,文本里写上本机在 spug 里对应的名字
yupozhang
   25
yupozhang  
OP
   2020 年 4 月 28 日
@aaaaaaaaa 可以这样:
现在主机里面定义好变量,批量执行前 source 一下,后面就可以引用。

source /tmp/a.txt
echo $A

结果:
1111
yupozhang
   26
yupozhang  
OP
   2020 年 4 月 28 日
@aaaaaaaaa 欢迎关注公众号,加群交流。
公众号二维码: http://image.qbangmang.com/spug-weixin.jpeg
crc8
   27
crc8  
   2020 年 4 月 28 日
这个传统企业能用得着吗?
yupozhang
   28
yupozhang  
OP
   2020 年 4 月 28 日
@crc8 能啊。中小企业通用功能的平台,具体可以看一下 demo 了解一下。
aaaaaaaaa
   29
aaaaaaaaa  
   2020 年 4 月 28 日
@yupozhang 我的目的就是在每台主机立马写入 a.txt ,你让我先在每台主机里写入……
yupozhang
   30
yupozhang  
OP
   2020 年 4 月 28 日
你是不是找我另外一个朋友聊过了?
yupozhang
   31
yupozhang  
OP
   2020 年 4 月 28 日
@aaaaaaaaa SparkPro91Pls
sudoy
   32
sudoy  
   2020 年 4 月 28 日
点赞👍
MilkShake
   33
MilkShake  
   2020 年 4 月 28 日
支持一下,感觉很不错,如果能加文件上传就好,我们公司有自己的一套安装包,配合模板管理,感觉能提升我的工作效率
yupozhang
   34
yupozhang  
OP
   2020 年 4 月 28 日
@aaa5838769 文件分发,上传 功能已经排期中了,后面的版本会支持。可以关注公众号关注最新功能。
公众号二维码: http://image.qbangmang.com/spug-weixin.jpeg
dany813
   35
dany813  
   2020 年 4 月 29 日
牛逼
yupozhang
   36
yupozhang  
OP
   2020 年 4 月 29 日
感谢支持。
AloneS
   37
AloneS  
   2020 年 4 月 29 日
现在添加主机可以批量添加吗
tiancaiyong
   38
tiancaiyong  
   2020 年 4 月 29 日
先 Star 再说,参考参考
yupozhang
   39
yupozhang  
OP
   2020 年 4 月 29 日
@tiancaiyong 感谢感谢。
yupozhang
   40
yupozhang  
OP
   2020 年 4 月 29 日
@AloneS 后面的版本会支持。
ps1aniuge
   41
ps1aniuge  
   2020 年 4 月 30 日
欢迎楼主,的后台,集成卡死你 3000 。
《卡死你 3000 》 是世界第一的远程命令行,它开源,免费,跨平台,号称比 ansible 简单好用 10 倍。卡死你现已经基本成熟。
https://www.v2ex.com/t/644624
后期我还要基于它,开发一套山寨版 k8s,用于和 k8s 竞争。寨版 k8s,一年内 ga 。
欢迎进群详聊,,qq 群:700816263

卡死你 3000 的主要对手是 ansible,次要对手是阿里云助手,腾讯云蓝鲸。
JFallen
   42
JFallen  
   2020 年 5 月 1 日
好像不能批量添加主机吧,这是个问题啊
ps1aniuge
   43
ps1aniuge  
   2020 年 5 月 1 日
@aaaaaaaaa 不是这个意思,我是说 A=123 B=456 需要配置在添加的主机上,然后在批量执行的脚本中引用这个变量,而不是直接把变量写在脚本里------------shell 和 python,没有跨脚本的变量,只能用 source 。因为没有设计跨脚本使用变量。

powershell 和卡死你 3000 就不同了。有一个全局变量域,域位于 powershell 进程内,位于脚本外。是强类型。
你可以在所有脚本,函数中,用:
$global:a = 1
全局作用域内的变量,所有脚本都能读写。另外卡死你 3000,powershell 还支持远程强类型对象,而不需要自己手动序列化 /反序列化。---------世界第一的远程脚本命令行,绝非浪得虚名!
这在我写的《 ps 入门教程 087.txt 》里有写。

shell 和 py 总得去非 a 礼环境变量,而 ps1 自己有房外丫鬟 ;)
Qiled
   44
Qiled  
   2020 年 5 月 5 日
好东西。已 star
yupozhang
   45
yupozhang  
OP
   2020 年 5 月 6 日
@Qiled 感谢支持。
yupozhang
   46
yupozhang  
OP
   2020 年 5 月 6 日
@JFallen
@AloneS
主机批量导入功能很快会支持。在下个版本里面支持了。
bulabean
   47
bulabean  
   2020 年 5 月 12 日
已 star
yupozhang
   48
yupozhang  
OP
   2020 年 5 月 13 日
@bulabean 感谢支持。
推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
© 2026 V2EX · 131ms · 3.9.8.5