运维过程中遇到过各式各样的问题,数据丢失,网站挂马,误删数据库文件,黑客攻击等各类问题,主要有以下几点: 1
线上操作规范 测试使用 Enter 前再三确认 忌多人同时操作 先看再备份后改 2
涉及数据 慎用rm -rf 备份大于一切 稳定大于一切 保密大于一切 3
涉及安全 ssh 防火墙 精细权限控制粒度 入侵检测和日志监控 4
日常监控 系统运行状况 服务运行状况 日志监控(安全) 5
性能调优 深入了解运行机制 调优框架以及先后 每次只调一个参数 基准测试 6
运维心态 控制心态 对数据负责 追根究底 测试和生产环境 一,线上操作规范 1
测试使用 当初学习 linux 的使用,从基础到服务到集群,都是在虚拟机做的,虽然老师告诉我们跟真机没有什么差别,可是对真实环境的渴望日渐上升,不过虚拟机的各种快照却让我们养成了各种手贱的习惯,以致于拿到服务器操作权限时候,就迫不及待的想去试试,记得上班第一天,老大把 root 密码交给我,由于只能使用putty,我就想使用xshell,于是悄悄登录服务器尝试改为xshell+密钥登录,因为没有测试,也没有留一个ssh 连接,所有重启sshd 服务器之后,自己就被挡在服务器之外了,幸好当时我备份了sshd_config 文件,后来让机房人员cp 过去就可以了,幸亏这是一家小公司,不然直接就被干了
庆幸当年运气比较好
第二个例子是关于文件同步的,大家都知道 rsync 同步很快,可是他删除文件的速度大大超过了rm -rf,在rsync 中有一个命令是,以某目录为准同步某文件(如果第一个目录是空的,那么结果可想而知),源目录(有数据的)就会被删除,当初我就是因为误操作,以及缺乏测试,就目录写反了,关键是没有备份
生产环境数据被删了,没备份,大家自己想后果吧,我不想再回忆了
测试的重要性我就不再多说了,大家自己体会吧