现在搞啥都要自动化,除了妹子。那咱们今天就来聊聊运维的自动化,应该有哪些是可以做的。
要想富先修路,一个成功的男人背后肯定有一个了不起的女人。那么要想实现自动化我们首先要修标准化这条路。
运维标准化
物理设备层面:
2.网络划分、远程控制卡、网卡端口。
3.服务器机型、硬盘、内存统一。根据业务分类。
4.资产命名规范、编号规范、类型规范。
5.监控标准。电压、温度、摄像头等等。
操作系统层面:
应用服务层面:
1.Web服务器选型(Apache、Nginx、Tomcat、Tengine等)
2.进程启动用户(相同进程采用相同的用户,建议采用非root用户)、端口监听规范、日志收集规范(访问日志、错误日志、运行日志)
3.配置管理(配置文件规范、脚本规范)
4.架构规范(Nginx+Keepalived、LVS+Keepalived等等)
5.部署规范(位置、包命名、权限的控制等)
运维操作层面:
1.机房巡检流程(周期、内容、报修流程)
2.业务部署流程(先测试、后生产。回滚)
3.故障处理流程(紧急处理、故障升级、重大故障管理)
4.工作日志标准(如何编写工作日志)
5.业务上线流程(1.项目发起 2.系统安装 3.部署Nginx 4.解析域名 5.测试 6.加监控 7.备份)
6.业务下线流程(谁发起,数据如何处理。)
7.运维安全规范(密码复杂度、更改周期、VPN使用规范、服务登录规范)
运维工具化:
1.SHELL脚本(功能性(流程)脚本、检查性、报表性、)
2.开源工具:Zabbix ELKStack SaltStack Cobbler
目标:
1.促进标准化的实施
2.将重复的操作,简单化
3.将多次操作,流程化
4.减少人为操作的低效和降低故障率
工具化和标准化是好基友!
运维操作平台化
将运维的工作迁移到一个WEB平台上,通过鼠标进行选择,将枯燥的bash转化成性感的页面。
随机想到的几个可以实现的web平台
1.DNS Web管理 bind-DLZ
2.负载均衡Web管理
3.Job管理平台
4.监控平台 Zabbix
5.操作系统安装平台
比如做一个Job管理平台
1.做成Web界面
2.权限控制
3.日志记录
4.弱化流程
5.不用ssh到服务器,减少人为操作造成的故障 Web ssh
给同学们一个参考