Devops
目录
what ?
我也是运维转运维开发的。首先,只会Python是不够的。做运维开发,基本上都得自己写前端……所以你还要会HTML,CSS,JavaScript。还要熟悉一Python个Web框架,Django,Flask,Tornado任选一个, 这是基础。然后自己做项目,不要写小脚本,没什么用,自己做个发布系统,做CMDB,做个简单的监控(数据采集,存储,展示,告警这些基本的要有)。这个期间你不仅有了项目经验,对Python理解也会更。然后你就去面试吧,面试如果不行,哪里不会补哪里。先做起来,不要等,既然是运维,基础技术肯定不怂,比起那些什么都不会也能转开发的同学的优势不是大很多吗?不要怂,就是干!这个时间大概需要多久呢?我也不知道,看个人情况,我用了一个月就转了。但是我之前花了很多时间去纠结!简直浪费生命!所以还是要行动起来。至于面试,一般问项目,问计算机基础,问算法这些。 首先你需要具备运维开发的能力,这个可以通过平时的学习获得。需要学习哪些知识呢?1 前端 HTML 常用的标签CSS 基本的样式,比如会该个字体大小 ,背景颜色啥的Javascript 这个是重点,必须掌握,特别是 Ajax 。 当然你也别怕,你都会 Python 了,学这个就是易如反掌的事情,相信我,因为我就是这么干的。其实这些,都不难,因为我们运维开发不需要都把前端的搞定,前端我们都是使用网上开源的框架,我们只需要会修改框架里的部分代码就行。这是我总结的必会的前端知识,还在持续更新中,感兴趣你看看。西瓜甜:1 | 运维开发人员必会 HTML 常用标签
常见在线教程
https://www.w3cschool.cn/tutorial
安全
前端
vue
Vue.js 教程vue2 vue-tutorial.html
SQL
更新发布
cmdb
django-vue-admin 使用django+vue进行极速开发的全栈管理系统
gin-vue-admin 使用gin+vue进行极速开发的全栈后台管理系统
Python---Django项目实战:CMDB资产扫描和DevOPS自动化运维
python
python文件开头声明UTF-8编码的几种常用形式
常用的形式有以下几种,放在码文件的第一行或第二行 1.# -*- coding: <encoding name> -*- : # -*- coding: utf-8 -*- 2. # coding=<encoding name> : # coding=utf-8 3. # coding:<encoding name> : # coding: utf-8 注意:coding不可省略,如 # utf-8 起不到声明编码的作用!
devops python3
看到 while True: 死循环 while大量练习: 2020年 10月 28日
python实现自动化运维项目_Python自动化运维项目开发最佳实战
django
Django实战2-自动化运维之配置管理-03:创建配置管理APP
monitor
要监控的东西
zabbix
zabbix server的图像展示接口 原创 zabbix server的图像展示接口: graph:host,template map:图像显示 screen:把多个graph整合于同一个屏幕进行展示; slide show:把多个screen以slide show的方式进行展示;
https://blog.51cto.com/afterdawn/1924150
如何通过python获取zabbix中的graph报表,Python 实现Zabbix自动发送报表
prometheus
Prometheus学习系列(八)之Prometheus API说明
Prometheus:在 HTTP API 中使用 PromQL
shell
常用脚本
cat warp #清空日志常用 ls 最后放个目录 不要搞错了 for loo in `ls . ` do echo >$loo #echo " warp$loo" done
books
Py - 基础(21) Py - 开发 - Ansible(3) Py - 开发 - Docker(8) Py - 开发 - FLask(10) Py - 开发 - Kubernetes(3) Py - 开发工具(2) 前端 - Vue(29) 前端 - 基础 - Bootstrap(5) 前端 - 基础 - CSS(1) 前端 - 基础 - Jquery(13) 运维 - Prometheus(1) 运维 - 基础(5)
https://www.cnblogs.com/cherylgi/
https://item.jd.com/67473491198.html
https://item.jd.com/35208147985.html
https://item.jd.com/29039577754.html
进阶
Python自动化开发-类Zabbix监控项目开发与实战-2.项目功能需求讨论
高级篇:
在深圳待了几年之后,已经对运维行业未来的前景也有了充分的认识,再加上随着多年的发展,西安的it行业也越来越好了,相应的运维岗位也越来越多,因此果断的回到了老家陕西。当时炒的比较火热的那就是python开发了,有着多年工作的我也灵敏的嗅觉到这个是以后的运维必不可少的一项技能,因此一心也扑向了python的编程海洋。当时学习python也是找不到北,不知道学了之后怎么应用到实战中去,这可能也是很多学习python朋友的苦恼的地方了,为了帮助这些朋友,我把我学习python的一些心得分享给大家。学习编程语言不能光看哦,一定要练,否则都是白搭,别给我说你找不到练习题,百度随便一搜一大把,根据找到的练习题,把之前的理论学习知识应用到练习题中去,这个就是你实战的第一步,把python的基础知识打牢之后。
下来对于我们运维人员来说,那就是自己写一个web方面的运维平台了,这里就牵扯到了Django框架的学习了,当然其他的框架也是可以实现的,但是基于Django的强大功能,因此我选择了Django,这里我们重点要学习的就是Django models、Django jinja2模板、Django url、Django视图,像Django form等内容如果你有空的话可以看看,这个不是重点,html form也可以实现。这里比较难的就是Django models的ORM,一对一、一对多、多对多经常把新手搞的晕头转向的,我当时就是这种感受,这个时候我的建议是查看官方文档,然后结合实例自己写一些小的案例,然后把关系搞清楚,对数据库的增删改查先搞清楚,然后再把各个表的关联查询搞清楚,这个时候千万不要着急,因为这个时候也是最容易让新手打退堂鼓的时候了,我当时就有想放弃的想法,最后咬牙坚持住了,之后是云开雾散了,其他内容的学习我觉的就没有什么难度了。
Django的各种知识打下基础之后,下来就是前端的学习了,对于我们运维人员来说也不需要太专业的前端知识,我们只需要学习下bootstrap、jquery、ajax、js就足以了,这里我们重点学习jquery和ajax,这个牵扯到我们后期要做前端和后端的数据交互。
Celery 是一个专注于实时处理和任务调度的分布式任务队列
lower
Celery提供了一个工具flower,将各个任务的执行情况、各个worker的健康状态进行监控并以可视化的方式展现,
pip3 install flower; celery flower --port=5566
https://flower.readthedocs.io/en/latest/install.html
celery backend mysql_Celery 部署小记
devops 日常
日常shell
#!/bin/bash #打包他们要的文件 for loop in `ls -l | grep 2021093016245406371 | awk '{print $9}'` do #echo $loop cp $loop /home/evan/13/ done #!/bin/bash #日常清空一个目录太多日志文件 for loop in `ls` do echo >$loop done
常用基础常识
运维的主要工作内容
运维的主要工作内容。总之运维是一个涉及知识面比较广的工作,需要对各个方面都有所了解,但是要做好运维还是要抓重点对核心问题进行重点关注。下面给大家附上关于Linux学习的视频资料,需要的可以点击链接进行学习。 1.基础设施管理 基础设施位于整个系统的最底层,为上层应用提供基本的运行环境。涉及到IDC机房或数据中心的网络、服务器、存储等,不仅要做到对这些资产的管理,还要保证及时掌握设备的运行状态,保证设备安全稳定运行。 2.环境管理 环境管理是指为开发提供各种应用环境,如开发环境、测试环境、生产环境等,保证一套代码能够在不同的环境下正常运行,避免因环境差异导致的各种应用问题,满足开发、测试、产品等不同团队的测试需求。 3.部署及交付 系统上线需要服务器上架、环境初始化、系统部署及版本更新,因为我们需要一套自动化的流程快速完成以上工作。 4.系统监控 系统监控可以帮助我们及时了解生产环境的各业务、应用、业务的运行状态,能够及时对告警进行响应,保证系统的无故障运行。 5.告警管理 随着业务系统的不断增多,监控系统也会慢慢变得庞大,此时如果做不好告警管理,一旦出问题可能会导致告警泛滥,将会使运维错过最重要的告警信息,因此运维需要做好告警层面的管理。 6.性能优化 性能优化是一个长期的过程,通过对运行数据的了解,我们需要对不同的业务节点进行优化,以满足业务需求。
jumpserver
「Jumpserver」- 通过 SSH 连接 Jumpserver 资产
少见的东东
ndisasm
NASM(The Netwide Assembler),是一款基于80x86和x86-64平台的汇编语言编译程序,其设计初衷是为了实现编译器程序跨平台和模块化的特性。
NASM支持大量的文件格式,包括Linux,*BSD,a.out,ELF,COFF,Mach−O,Microsoft 16−bit OBJ,Win32以及Win64,同时也支持简单的二进制文件生成。它的语法被设计的简单易懂,相较Intel的语法更为简单,支持目前已知的所有x86架构之上的扩展语法,同时也拥有对宏命令的良好支持