手把手教写devops全栈自动化工具(django2.1)
简单介绍一下自己之前写的一个全栈项目,框架用的是django2.1版本
主要对paramiko模块,salstack的API二次开发。
核心组件包括:
MQ,mysql,websocket,redis,web控制台采用shellinabox。
为了部署方便我已经把所有组件做成了docker镜像
如需试用saltstack功能,需要自行安装并配置相关api,然后修改本目录的settings.py配置即可。
该版核心功能如下:
1、 操作日志留存、审计、分析。
2、 动态分配临时账号,对服务器等资源进行临时授权。
3、 内部邮件系统。
4、 Ssh,saltstack,web界面三种方式的控制操控渠道。
5、 内部通信及沟通机制。
6、 容器管理(没开发完成)。
7、 物理机、虚拟机等底层资源日志分析及审计。
8、 定时任务。
9、 管理员控制面板。
管理员控制仪表板:

系统账号临时登录授权(内部邮件系统发送账号密码和临时token):

动态图表监视任务情况:
任务开始开始

任务结束:

日志系统可以查看主机系统日志,通过websocket反馈给页面,实现日志动态同步更新。但是我懒得弄了没写完。。。!

批量命令及文件传输下载:



文件下载

saltstack相信大家不会陌生吧,我对这个实用工具也进行的集成:

批量执行shell脚本

一个简单的CMD系统:

简单的工单系统:
报修工单列表:

故障工单列表:

编辑工单

全栈人生开始很难,慢慢的也就习惯了。可以关注我的个人公众号获取项目代码和相关讲解!

手把手教写devops全栈自动化工具(django2.1)的更多相关文章
- grandstack 基于graphql&&react&& apollo&& neo4j 的全栈开发工具
grandstack是一个基于graphql&&react&& apollo&& neo4j 的全栈开发工具. 有篇关于graphql 的5个常见问题的 ...
- 【震惊】手把手教你用python做绘图工具(一)
在这篇博客里将为你介绍如何通过numpy和cv2进行结和去创建画布,包括空白画布.白色画布和彩色画布.创建画布是制作绘图工具的前提,有了画布我们就可以在画布上尽情的挥洒自己的艺术细胞. 还在为如何去绘 ...
- 教你成为全栈工程师(Full Stack Developer) 〇-什么是全栈工程师
作为一个编码12年的工程师老将,讲述整段工程师的往事,顺便把知识都泄露出去,希望读者能少走一些弯路. 这段往事包括:从不会动的静态网页到最流行的网站开发.实现自己的博客网站.在云里雾里的云中搜索.大数 ...
- 教你成为全栈工程师(Full Stack Developer) 一-各显神通总结八大类编程语言的区别
为了能在最快的时间里理解更多语言的相同点和不同点,我用大家最熟悉的Hello World来展示一下各个语言的奥妙 请尊重原创,转载请注明来源网站www.shareditor.com以及原始链接地址 ...
- 手把手教你安装Ubuntu系统增强工具
如果你不安装VMware增强工具的话,VMware经常会给你弹出下图的界面,提示你安装增强工具. 那么VMware增强工具到底有啥特别之处咧?其实在VMware虚拟机中安装好VMwareTools之后 ...
- 手把手教你搭建Jenkins实现自动化部署Jar
centeros7 安装配置环境jdk1.8 1.先卸载centeros自带jdk rpm -qa | grep openjdk 查询出来的自带的openjdk 2.删除 rpm -e --nodep ...
- 教你成为全栈工程师(Full Stack Developer) 四十五-一文读懂hadoop、hbase、hive、spark分布式系统架构
转载自http://www.shareditor.com/blogshow?blogId=96 机器学习.数据挖掘等各种大数据处理都离不开各种开源分布式系统,hadoop用于分布式存储和map-red ...
- java全栈商业小程序开发
此次开发只为学习和巩固,第一次学习开发 一.开发前需要了解: 开发框架MVVM.痛点.开源工具.VUE前端框架.微信支付模块.uni-app前端框架.小程序申请.开发工具下载.编写测试小程序.小程序结 ...
- 知识全聚集 .Net Core 技术突破 | 我用C#手把手教你玩微信自动化一
知识全聚集 .Net Core 技术突破 | 我用C#手把手教你玩微信自动化一 教程 01 | 模块化方案一 02 | 模块化方案二 03 | 简单说说工作单元 其他教程预览 分库分表项目实战教程 G ...
随机推荐
- bzoj3462: DZY Loves Math II
状态很差脑子不清醒了,柿子一直在推错.... ... 不难发现这个题实际上是一个完全背包 问题在于n太大了,相应的有质数的数量不会超过7个 假设要求sigema(1~plen)i pi*ci=n 的方 ...
- Android 图片着色 Tint 详解
问题描述 在app中可能存在一张图片只是因为颜色的不同而引入了多张图片资源的情况.比如 一张右箭头的图片,有白色.灰色和黑色三种图片资源存在.所以我们可不可以只保留一张基础图片,在此图片基础上只是颜色 ...
- html5--6-67 阶段练习8-弹性三列布局
html5--6-67 阶段练习8-弹性三列布局 学习要点 运用弹性盒子模型完成一个三列布局,加深对学过知识点的综合应用能力. 了解用百分比设置元素高度的方法. @charset="UTF- ...
- 【HDU 3613】Best Reward
[题目链接] 点击打开链接 [算法] 正反两遍EXKMP,即可 [代码] #include<bits/stdc++.h> using namespace std; #define MAXC ...
- HNOI2008 明明的烦恼 (purfer序列 + 组合数学)
传送门 这道题题意描述很清楚,不过我自己做的时候确实是一头雾水……又看了题解,发现要用到一个新知识,叫purfer序列. 我们来简单说一下什么是purfer序列.它可以被看作一种树的表现形式.一棵含有 ...
- [laravel]phpunit
step1.install phpunit composer.json require中增加 "phpunit/phpunit":"4.0.*" 执行 comp ...
- CentOS6.6详细安装教程(图文教程)
CentOS 6.x最新版本为CentOS 6.6,下面介绍CentOS 6.6的具体安装配置过程,需要的朋友可以参考下说明: Centos6.6 下载地址:thunder://QUFodHRwOi8 ...
- nodejs 打造 多人对战游戏服务器(初级入门)
使用socket.set 和 socket.get 在存取玩家信息 百牛信息技术bainiu.ltd整理发布于博客园 socket.get('playerinfo', function (err, p ...
- hibernate -- 分页模糊查询中setParameter 和setParameterList
在分页模糊查询中碰到setParameter 和setParameterList这两个方法 setParameter 以前就只会用setParameter(int arg,String str),我用 ...
- 【208】CentOS 下安装 Wine
参考:centos6.5安装wine 参考:用FreeGate自-由-门软件在Linux上更新Android SDK 参考:CentOS 5.3 使用wine装QQ