0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

运维工程师是做什么的

工程师人生 来源:网络整理 作者:工程师吴畏 2018-09-11 09:22 次阅读

总结两句话:

1、保障业务长期稳定运行(如网站服务器、游戏服务器等)。

2、保障数据安全可靠(如用户名密码、游戏数据、博客文章、交易数据等)。

由这两句话推演运维工程师要学些什么?

一、保障业务长期稳定运行

出一点点差错,用户就要投诉了。

1、业务跑在什么上面?

网站服务器一般是apache,nginx,tomcat等。但是真正跑通流程还需要Mysql数据库来存储用户密码及其它。很多程序都要php的解析,所以LNMP、LAMP(即nginx、apache、mysql、php)环境部署是必须掌握的技能。

2、业务出了问题怎么及时知道?

这就需要监控软件来邮件或短信来通知你,常用的有zabbix,nagios等。报警发邮件,也得一个邮件程序呀,sendmail或postfix。

3、在家里收到报警,但服务器是内网IP,怎么也得解决问题吧?

公司搭建openvpn或pptp或openswan,在家里通过VPN拨入内网,24小时解决问题…唉,半夜爬起来解决问题也没工资。

二、保障数据安全可靠

出一点点差错,领导要找你喝茶了。

1、有时需要手动改数据库内容?

所以要会基本的Mysql数据库增删查改命令。

2、万一数据库服务器硬件坏了怎么办?

需要有个备库以备不时之需,所以需要Mysql主从复制。

3、数据库要还原怎么办?

所以需要在crond中定期全备Mysql数据,以便还原使用。如果要还原到指定时间点,还要学会Mysql增量备份与恢复。

4、如果是用户上传的图片或文件服务器坏了怎么办?

定时备份可能还不够,需要使用rsync加inotify来实时备份。以便任一时刻主服务器坏掉,也能保障所有图片有备份可以用来恢复。

5、小心黑客,要增加服务器安全性?

ssh轻易不能让外人访问,那么就设置只允许公司的IP或跳板机IP访问,这些都通过iptables来控制。

三、大性能

1、越来越多的用户来访问我们的网站,一台web服务器抗不住了怎么办?

那就需要多台web服务器来负担,但多台服务器之间怎么进行负载均衡呢,这就需要用到nginx反向代理或LVS+keepalived或haproxy+heartbeat了。

2、用户注册发表的文章与评论太多,一台数据库抗不住了怎么办?

数据库压力分为读和写,如果写抗不住,需要进行分表分库到多个服务器上。如果是读压力不够了,可以使用mysql-proxy读写分离,

来分担读的压力。更简单方便的方法,把数据库里的内容放到内存上,这就用上memcache或redis了。

3、N多用户上传下载文件,磁盘抗不住了怎么办?

把多块磁盘做成raid,或者使用分布式存储文件系统如MFS,GlusterFS来提高磁盘的读写能力。

4、网站上好多图片,总有用户反应网站加载太慢,怎么办?

这时可以把网站上的图片通过squid或varnish缓存到网站前端,尽可能的增加访问速度,当然,最好是购买商业的CDN加速。

5、运营商是个大难题,他们之间的带宽好像很小,联通IP访问我电信网站怎么就这么慢呢?

这时可以使用bind自建一个DNS服务器,把网站的DNS记录指向自建DNS服务器上,配置好解析规则,以后联通IP解析到联通网站上,

电信IP解析到电信网站上,体验就会好很多啦。

四、自动化

终极目标:跑死机器,闲死人。

1、公司新买100台服务器,公司竟然就1个移动光驱,这装系统得到什么时候?

使用kickstart或cobbler来网络远程自动安装系统吧。

2、每次装完机要优化很多内容,什么文件描述符、端口、软件安装啊,手动操作不累死去?

赶紧学会shell,将解放非常多的工作量。

3、系统装完后登陆要输入密码,这么多台啊?

使用expect吧,自动读取提示来输入密码,并执行命令。

4、要批量把新代码发布到线上服务器,怎么办?

使用saltstack或puppet或ansible吧,绝对爽歪歪。

五、其他

1、搭整套测试环境需要5台服务器,但公司穷的只有一台空闲服务器?

学会xen或kvm或docker吧,虚拟出多台服务器,就能解决资源问题了。特别是docker,强烈推荐,以后某个研发人员让你部署一套新环境,分分钟帮他解决。

2、研发人员的代码控制,权限控制,总要运维人员管呀?

svn或git,这个是肯定要有的。

结尾:

现在我们在回过头来思考,运维工程师平时干些啥呢?

1、 随时解决报警故障。

2、 业务程序更新。

3、 编写一些脚本,监控或完成其他可自动完成功能。

4、 运维架构完善,部署一些用起来更方便更可靠或性能更好的开源工具以及制定运维流程规范。

5、 打杂,如调交换机,装系统,部署新环境等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 运维工程师
    +关注

    关注

    4

    文章

    39

    浏览量

    8229
收藏 人收藏

    评论

    相关推荐

    工程机械远程平台是什么

    工程机械远程平台是一种基于互联网技术的监控和管理系统,用于对分布广泛的工程机械设备进行远程监控、故障诊断、数据采集和分析,以及设备维护和管理。这种平台能够帮助设备制造商、运营商和维
    的头像 发表于 05-20 09:26 147次阅读

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师,他们主要负责设计和开发嵌入式软件,
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    管理平台:从基础到智能的飞跃

    管理平台为企业提供了从基础到智能的飞
    的头像 发表于 04-16 16:26 159次阅读

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00

    请问Linear Lab Tool具体是做什么的

    请问Linear Lab Tool具体是做什么的呢?
    发表于 01-05 12:52

    【社区之星】彭仲:扎实的基本功与时间的沉淀才是工程师成功的关键!

    入了电子行业。 社区小助手:作为一名从业多年的工程师,能否分享你的工作经历和一些比较成功的工程项目或优秀作品?开发这个产品的整个过程,有什么记忆深刻的经历吗? 彭仲老师: 一体式胎心项目,涉及到很多本人
    发表于 10-13 14:15

    当不同工程师到了退休年龄,都在做什么?#搞笑 #内容过于真实 #电子 #工程师 #扬兴科技

    电子工程师扬兴科技
    扬兴科技
    发布于 :2023年09月01日 15:23:09

    深度学习算法工程师做什么

    深度学习算法工程师做什么 深度学习算法工程师是一种高级技术人才,是数据科学中创新的推动者,也是实现人工智能应用的重要人才。他们致力于开发和实现深度机器学习算法来解决各种现实问题,应用于各个领域,如
    的头像 发表于 08-17 16:03 955次阅读

    Linux工程师的6类好习惯和23个教训

    很多运人员比较忙,遇到问题解决就不会再管了,记得去年一个客户的网站老是打不开,经过 PHP 代码报错,发现是 session 和 whos_online 损坏,前任是通过 repair 修复的,我就也这样修复了,但是过了几
    的头像 发表于 07-17 15:47 226次阅读