在工作中会经常对数据库进行运维操作,例如大表清理等等统计数据库占用的空间统计同一个实例下面的所有数据库的容量大小SELECT  table_schema as '数据库', sum(table_rows) as '记录数', sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)', sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)', sum(truncate(DATA_FREE/1024/1024, 2)) as '碎片占用(MB)' from information_schema.tables group by table_sch
缘由        最近看到了2个项目,促使我再次核查了以下这个软件是什么。这两个项目是 webterminal 和 jumpserver 。这两个项目里面都有一个功能 运维审计,用户行为录像。挺好奇这个录像怎么做的,就去找了下有咩有类似的开源软件。其实以前在上海安居客的时候我们运维也有这种软件,但是具体是不是叫这个名字我不太清楚,我个人觉得这种录屏软件挺神奇了 就想了解下,当然由于种种原因 直到本周我才认真查阅了下,找到了这个可以实现这个功能的软件:asciinema介绍        asciinema 是一个开源命令行终端录制器,它可以将命令行输入输出的任何内容加上时间保存在文件中,同时还提供方法在终端或者web浏览器中进行回放。asciinema的录制和播放都是基于文本的,相比传统的video有很多好处,例如录制
引言代码发布系统是互联网公司必备的运维系统,作用主要用户发布业务代码 到 业务服务器为什么需要代码发布系统有的同学可能说,我们公司服务器就那么一台,做个发布系统太麻烦了? 不认同这说法发布系统有如下好处流程管理,加上权限管理,可以在系统记录 谁 做了 什么 操作减少人工误操作影响,登录服务器本身操作就是有误操作的可能的运维自动化  为运维工作减负加快发布速度  不用人工登录N台服务器发布方便快速回滚版本技术选型git:代码管理工具  git使用笔记rsync:同步代码到指定服务器Yii2:php mvc 框架Bootstrap3:前端框架jquery:js库代码发布系统流程框架图Web界面化操作,流程化管理 ,提交发布任务定时脚本 获取发布任务制定同步策略 发布代码界面化操作,流程化管理流程化管理在人员比较多的时候优势特别明显,人多手杂很容易出问题。所以在代码发布系统中加入流程化管理也是与时俱进上图是我画的一个比较完善的流程图(以前公司实现过这么复杂的流程)
  服务器经常会产生各种各样的日志文件,我们需要定期清理日志的分类系统日志应用日志系统日志例如系统的history 历史信息   crontab的运行日志  一般系统日志系统都帮我们运维好了,不需要额外配置应用日志例如nginx  的access 和 error 日志 ,php框架的运行日志,这些日志是我们排查问题的有力证据工具logrotatelogrotate是什么logrotate是大多数linux系统自带的日志切割工具logrotate的适用场景logrotate常用来切割仍在被写的“动态”文件,它支持 按时间间隔或文件大小 来触发文件的自动切分(automatic rotation)实战按天保存一周的Nginx日志压缩文件,保留30天,配置文件为「/etc/logrotate.d/nginx」最后代码如下(本人ubuntu系统)/data/logs/nginx/*.log {      &nb
  老外整理的 Devops Tools 周期表,可以用酷炫屌炸天形容,划分了数据库、CI、日志、安全、监控、配置管理、云服务等15个大类,120个工具。我是有点孤陋寡闻,很多都没听说过,你要是全学会了你就是全栈工程师原文地址:https://xebialabs.com/periodic-table-of-devops-tools/#rd
  • 微信公众号 微信小程序
  • 微信机器人
  • 群1:1046090432
  • 群2:585567981