运维是什么
有很多人包括公司的一些七零八碎的人及自己周边的人,有时候问我运维到底是干啥的…我瞟了他一眼, 漫不经心的回答到”打杂的”.后闲下心来,好好总结了入坑以来自己对运维的理解,我个人认为运维要从两个层面去理解,从狭义角度来讲,就单指运维工程师,从广义来讲,应该还要包含整个运维团队和运维服务体系…
云化对传统运维的冲击影响
早些年属于传统运维时代, 大量的人力投入带动整个业务驱动. 后来云计算新生要求运维人员不仅仅要关注系统层的技术, 还要增加对程序代码的调优/持续交付/容器化等基础架构方面的技能提升,同时还需要关注整个业务/应用/服务的生命周期管理. 对传统运维带来了巨大压力,迫使传统运维投入更多精力跟上时代的变化.随着变化日渐凸显,可能对传统运维带来失业困扰, 但一定不会淘汰运维服务体系建设…
运维工程师与运维开发工程师的区别
运维服务体系建设离不开运维自动化, 运维自动化离不开运维开发, 很多人都说运维开发是程序员来做, 而不是运维工程师. 这种说法不敢苟同, 个人觉得搞运维开发还是得要找对运维相关技术理解的程序员或运维工程师来搞. 运维工程师在已有运维技术的基础上向研发能力提升, 多参与实践项目, 巩固运维开发水平. 所以结合网上的一些参考资料, 做了一个运维技能树的知识图谱和运维服务体系及技能水平量化的知识图谱,希望能借助这些知识图谱鞭策自己…
运维技能树
作为一个专业的运维, 自己需要掌握的技能一定要清楚明了, 缺哪里补哪里, 才能走的更远
运维服务体系及技能水平量化
下图为自己理解的运维服务体系,这属于个人经验未必能适用其他运维团队。每个运维工程师心中其实都有自己的想法,不妨用思维导图的形式将其列出来,找出自己感兴趣的点,持续深入,打造自己的核心竞争力。而思维导图也可以继续往横向纵向扩展,形成自己心中的完整的一套运维概念。
由于运维一般讲究广度而忽略了深度,所以容易导致自身的技术栈广而不精的情况,怎样量化自己的技能水平是否足够深入呢?举一个都熟悉的MySQL技能,如果把MySQL水平定义成1~6级,下面是我对各种级别水平的理解。
级别 描述
1 等级1:基本安装/配置/使用
2 等级2:能对常用配置项根据实际情况修改
3 等级3:熟练定位性能瓶颈,并作出相应改进
4 等级4:精通xx运行机制及体系结构,能从源码解析定位根源
5 等级5:精通业务程序/源码,高效解决各种相关问题
6 等级6:从架构及运维建设体系出发考虑, 解决此问题
运维能力要求
最低要求
运维是一种需要技能面比较广的工种,大家普遍都是处于技术面广但不深的状态,我把2级定义为科普级,意思是达到该级就可以满足各种日常工作要求。所以说上面的路人A,最好尽快争取把还在1级水平的 Shell 和 MySQL 都提升到2级,就可以满足日常工作要求,这也是对运维工程师的最低要求。
进阶要求
除了满足最低要求之外,培养自己的核心竞争力,为日后的发展打下基础,推荐大家对1~2项深入学习,达到4、5级甚至更高的水平。随着互联网运维行业的各种 PaaS、IaaS 普及后,自动化程度越来越高,现在已经不像以前那样需要那么多「操作员」。也就是说技能水平偏低的运维急需技能升级或者技能转型,简单来说,能支撑你走多远的不是那些1、2级的技能,而是4、5级以上的技能。
合格的PM
受<<人人都是产品经理>> “毒害”, 加上工作中做项目时会用到一些产品的知识, 自己无意中临时充当了产品经理一职, 总得来说就是”让正确的事情相继发生”是成为一个好的PM唯一标准,用结果说话,过程中吃了多少苦根本不重要。如果在这个过程中需要懂技术,就去学技术,需要懂交互,就去学交互,需要懂画图,就去学画图,需要懂公开演讲,就去学公开演讲,需要懂 XX,就去学 XX。团队中,谁都可以说这不是我的职责范围,只有产品经理不行。希望专业的PM看到这段话时不要打我…
团队合作
关于招聘
搞技术的,不缺千里马,却的是伯乐。我们要强大自己的团队,就需要招聘到对的人:技术和思想都一致的人。
STAR招聘原则
所谓STAR原则,即Situation(情景)、Task(任务)、Action(行动)和Result(结果)四个英文单词的首字母组合。STAR原则是结构化面试当中非常重要的一个理论。
S指的是situation,中文含义是情景,也就是在面谈中我们要求应聘者描述他在所从事岗位期间曾经做过的某件重要的且可以当作我们考评标准的事件的所发生的背景状况。
T指的是task,中文含义为任务,即是要考察应聘者在其背景环境中所执行的任务与角色,从而考察该应聘者是否做过其描述的职位及其是否具备该岗位的相应能力。
A指的是action,中文含义是行动,是考察应聘者在其所描述的任务当中所担任的角色是如何操作与执行任务的。
R指的是result,中文含义为结果,即该项任务在行动后所达到的效果,通常应聘者求职材料上写的都是一些结果,描述自己做过什么,成绩怎样,比较简单和宽泛。
而在面试的时候,则需要了解应聘者如何做出这样的业绩,做出这样的业绩都使用了一些什么样的方法,采取了什么样的手段,通过这些过程,可以全面了解该应聘者的知识、经验、技能的掌握程度以及他的工作风格、性格特点等与工作有关的方面。而STAR原则正是解决上述问题的。
培训新人
所谓师傅领进门, 学艺靠自身, 师傅得要把门领对. 在团队内部引入SOP操作指南, 把日常工作形成SOP规范操作及流程,操作时按照流程一步一步执行.
领导能力
自己也算一个leader吧, 虽然目前没啥卵用.但从我的角度来看我们组及部门的情况,我得出一个好的leader得具有以下条件及因素:
1.合理的分解, 分配工作, 千万不要逮着人就让人做这做那, 任务传达要层次分明, 明确任务价值和目标;
2.保持和上面的领导良好沟通;
3.团结成员, 不要偏心;
4.能帮团队成员说话, 顶得出去;
5.在业务上能帮助成员成长;
6.有胆放手让别人去做, 如果技术全面且自己有充足时间, 建议是自己先小范围试点, 没啥大问题再分配给其他小伙伴;
7.工作指标尽量与公司的业务指标挂钩, 防止公司忘记运维;
8.技术管理前提的要懂技术, 不懂的人或不懂装懂的人来做技术管理很蛋疼,深有体会;
9.所有的技术实现一定要以业务驱动为主, 提升部门及个人技术水平为辅, 不是为了技术而搞技术, 不然就是华而不实;
对于一个小公司来说, 虽然一开始可能必须得靠管理者亲力亲为, 但是当业务逐渐成型、走上正规之后, 一定要把团队成员的能力都锻炼出来。否则公司的发展可能会受到限制, 因为管理者的精力有限, 被日常琐事缠绕就无法集中精力思考发展方向, 或者是谋求外部的合作机会。所以要学会彻底的放权, 让团队的成员都忙起来。在可以承受的范围内让大家去犯错, 去成长, 去做一线的决策, 最终成为能独当一面的人。
获取知识
英语学习
日常工作中, 用到英文的地方还是有很多.比如看个django的使用文档, 虽然现在有翻译这种神器,但是保不齐哪天领导让你搞个啥英语演讲或者以后面试公司要求英语四六级, 到时候机会有自己没把握住只能怪自己,所以坚持每天记住1-2个新单词, 特别是计算机类的.推荐看这个网站的英语学习资料,针对入门等级不同学习不同的英语资料.
设计学习
学好PS, 或许你能找到女朋友…
学好auxre, 或者你能找到男朋友…
前端学习
项目缺少前端开发, 不得不学习前端, 太痛苦了. nodejs简直就是派来折磨我的…懵懵懂懂的写BUG, 不过总比没有学好,至少我知道nodejs如何hello word….
关注健康
过劳检测
每天说好的只工作8小时, 都是忽悠自己的. 最近感觉力不从心, 上班超过8小时,脑袋后脑勺就开始各种痛,要炸了的感觉, 有时候感觉是不是自己要挂了…所以还是高效工作,到点下班的工作流水线比较好.搞啥996有啥意思…
关于睡眠
每天都在担心工作和生活, 没有到12点是睡不着觉的…即使躺在床上也是东想西想的, 就酱紫迷迷糊糊天亮了. 也许是年纪大了, 依靠和牵绊太多, 真的是睡不着. 可长期以往这样下去, 睡眠质量真的有问题了. 为此,制定了一个作息时间表,虽然我可能不会按照这个时间表作息….
1、晚上7点左右吃饭;
2、晚上8点溜娃;
3、晚上9点躺在床上,9-11点为免疫系统(淋巴)排毒时间,此段时间应安静或听音乐/看视频;
4、晚间11点-凌晨1点,肝的排毒,需在熟睡中进行;
5、凌晨1点-3点,胆的排毒,亦同。
6、凌晨3点-5点,肺的排毒。此即为何咳嗽的人在这段时间咳得最剧烈,因排毒动作已走到肺;不应用止咳药,以免抑制废积物的排除。凌晨5-7点,大肠的排毒,应上厕所排便。
7、早上7-9点,小肠大量吸收营养的时段,应吃早餐。
8、疗病者最好早吃,在6点半前,养生者在7点半前,
9、不吃早餐者应改变习惯,即使拖到9、10点吃都比不吃好。
10、半夜至凌晨4点为脊椎造血时段,必须熟睡,不宜熬夜。
提升效率
学会阅读
看一些书籍或者文章, 我个人比较倾向于 面 –> 线 –> 点 这种方式来获取知识, 首先得要知道你阅读的这些书籍或者文章的标题是啥, 其次看序言/引言啥的, 接着读目录,了解这个作者的写作思路及想要给我们传达哪些知识点, 然后粗略浏览章节标题和小标题,根据这个索引,找到自己喜欢的术语或者兴趣点.最后过一遍每篇文章的第一段,因为第一段基本上是在概述总结.
学会提问
参照这篇的文档,提问提的好, 解决效率高.
善用搜索
百度解决不了的问题, 就用google.google都解决不了的问题就是自己的问题…
学会写作
闲暇时间, 总结一段时间内的知识用博客记录下来. 也算是对自己一个交代和安慰.本博客所写的文档都用的hexo托管在codinig及七牛.
使用gitbook
暂时没用gitbook写文章
使用hexo
关于hexo相关的教程请访问, 教程中包含了如何安装/调优/常用插件等说明.
科学上网
最近搞得很严, 有些资料需要google, 没办法查. 就只有干瞪眼了.
时间管理
合理利用好每一天,时间每天都在做减法. 离你GG的那天又进了一步. 计划好每天要做什么, 哪些是今天非常重要必须要做的, 怎么做, 做了有啥影响, 不做有啥影响. 先把计划排出来, 虽然有时候大部分不会按照这个计划来做, 但是其实自己心里很清楚方向和目标, 我觉得这点非常重要. 可以参照下 番茄工作法
知识管理
学习知识是好事, 但是要系统的学习, 规律的学习,才能促进知识的更好吸收.我比较喜欢用IPO方式(input-process-output)来获取知识. 摄入的知识并不是你的收获,而只有output出来的内容才是自己的。
文件管理
mac我用的icloud来同步文件及日常资料, windows用的百度云盘这种第三方云盘来同步windows下的软件及资料, 不要在乎保密性啥的. 我还不相信你会比马云爸爸有钱…
密码管理
工具系统太多了, 有些系统没有接入LDAP, 无法统一账号密码,就找了一个开源的密码管理系统, 运维内部用的 , 个人mac用的google自带的同步密码工具, 配合 1password 和 keepassword 多方存储.
制作视频
有时经常忘记的事情不知道需要做哪些步骤, 用mac自带的屏幕录制工具记录一些重要的事情, 以及有时候一些BUG排查需要录屏保留重要证据.
制作PPT
季度汇报需要汇报工作,用PPT按照模板填写内容…
论音乐对效率的影响
运维的工作是枯燥繁琐的, 有时排了计划要做些事情被其他人在工位上打扰, 等解决了不知道接下来要做啥了. 所以,趁没人打扰的时候,听着音乐,沉下心来思考解决问题, 效率比平时要高很多, 真的…
关于工作
找工作前需要思考的问题
如果真的到了换工作的时候,肯定不是一天两天才做的决定。所以当你打算换工作之前,不妨先思考一些问题。
为什么辞职
先想想自己在当前的发展环境下发展遇阻的原因。多从自己的内因上找,不要带着抱怨情绪。不能勇于面对自己的不足,迟早还会因为自己能力不足而离开。对上一家公司的抱怨什么的不建议和hr说,因为你面试的下一家,以后也可能成为你的上一家。
真正离职的理由主要是:
家庭: 买了房,结了婚, 家庭开支增大,个人压力增加
能力
个人能力的成长低于行业平均水平,通常说的天花板。
以及公司与团队与行业相比缺少变化和生命力。
一个人在同一岗位两年,胜任并已进入了舒适区,此时一般都会转岗或升职以迎接更大的挑战。
价值: 当前环境中无法发挥价值,并持续一段时间,换工作属于止损。
薪资: 不解释。
现在的我
我觉得在找工作的时候,认清自我是很关键的一点。不然过分的以为自己的能力超群,往往会给自己带来挫败感。
“知己知彼,百战不殆”,我们不仅要了解自己,也还需要对外面的市场进行一下了解,比如问问其他公司的朋友,大概工作年限和水平的人待遇如何,也是为自己定价的一个方式。
出去找工作,也以为着你要放弃现在的工作条件和人脉,到一个新的环境中成长,我们的心态也很重要。谦逊有礼会给你未来的工作之路带来好处。
追求什么
静下心来想想自己想要什么, 需要达到什么目标, 达到这个目标需要做哪些事情来铺垫. 不管是追求名还是利, 有了方向才有目标, 有了目标才有动作, 有了动作才有动力.
找工作时需要避免的几点
简历不要出现错别字和明显的错误
平时的工作之余,不要忘了对自己技术的追求, 多理解多写一些代码
没有不加班的IT公司, 摆在心态, 主要看你觉得这种加班值不值得
面试原则与技巧
运维面试可能面试官问的东西比较广泛, 这也同时要求你平时在日常工作中多与大公司的技术文档学习了解, 并不是要你一定要掌握精通, 但必须你要知道有这么个东西存在,然后在慢慢接触深入.面试的套路一般就是 笔试+问答面试, 这里跟招聘的人思维一样,同样适合STAR法:
背景(SITUATION): 通过不断提问与工作业绩有关的背景问题,可以全面了解该应聘者取得优秀业绩的前提,从而获知所取得的业绩有多少是与应聘者个人有关,多少是和市场的状况、行业的特点有关。
工作任务(TASK): 每项任务的具体内容是什么样的。通过这些可以了解应聘者的工作经历和经验,以确定他所从事的工作与获得的经验是否适合所空缺的职位。
行动(ACTION): 即了解他是如何完成工作的,都采取了哪些行动,所采取的行动是如何帮助他完成工作的。通过这些,可以进一步了解他的工作方式、思维方式和行为方式。
结果(RESULT): 每项任务在采取了行动之后的结果是什么,是好还是不好,好是因为什么,不好又是因为什么。
面试前, 对这家公司做背调, 因为有些面试官就要问你来之前对这家公司了不了解,想从你这里掌握你对这次面试的重要性.
关于简历
好好写一篇简历是给面试官留下的直接印象, 个人建议1-2页纸就够了, 尽量在问答面试好好表现, 怎么写简历, 我建议在wps下载运维的简历模板, 然后相应改成自己的数据,最后自己通读一遍, 再心里模拟面试官看到这份简历的时,他应该会问哪些问题.
关于学历
学历是一块敲门砖, 我就是吃了学历的亏…只怪当初自己不好好学习, 现在还在努力自考本科, 人老了, 思维和经历已经不比年轻的时候了, 伤不起… 失业寒潮每年都要来一波, 一些门槛高的公司, 对学历要求也高, 动不动就要985 211 毕业的大佬…
硬件配置
工欲善其事必先利其器, 一般来说, 如果别人让我推荐电脑, 我会按照对方的需求去推荐。
办公型
就是简单的处理文档, 浏览网页, 逛逛淘宝的.这类的我比较推荐轻薄的, 便携和续航较强的电脑。我觉得小米笔记本就挺好的…
游戏型
Dota,LOL, 魔兽这类的, 内存和显卡有个保障就行。大型游戏, 最好还是显卡强劲一点。1090TI+CPUI7+SSD,杠杠的…
工作型
比如运维开发这种类型的程序员, 有时候要开虚拟机要测试啥东西, 所以还是要CPU I7的配置, 内存16G的配置,固态硬盘512G的配置, 满足日常工作.对显卡没要求. 如果要买笔记本的话,我推荐买 mac pro, 程序员标配, 如果要配置台式机, 价格应该也在最多6K左右.
关于外设
我推荐投入:
显示器:最为重要, 直接和效率挂钩, 推荐24寸以上。戴尔不错。
鼠标: 最好有多功能, 无线Mini接收器。罗技不错。
键盘: 只要手感舒适就行, 机械键盘我用过茶轴(介于青轴与黑轴之间), 准备尝试红轴。
音响: 耳机也行, 能隔绝外界的环境, 沉浸于属于你自己的世界。
系统安装
用utrsrio做U盘镜像启动, windows 10镜像, 1块256G的SSD盘作为系统盘, 一块512G的SSD盘作为程序安装盘, 另外全部划到一个盘,可以是SAS和STAT盘.