运维小哥的工作自述

简介:   光阴似箭,日月如梭!弹指间,回首想想,进公司的时间也不短了。在平凡的岗位上默默地耕耘着,似乎是那么不起眼~~但作为一颗螺丝钉,我要大声的告诉自己:螺丝钉也能有自己的价值体现!        于是乎,三省吾身!        几千号员工的上市企业,以总部和分部为个体划分,在个体中又以部门为单位划分,各部门的管理、财政、人事都实现独立。

  光阴似箭,日月如梭!弹指间,回首想想,进公司的时间也不短了。在平凡的岗位上默默地耕耘着,似乎是那么不起眼~~但作为一颗螺丝钉,我要大声的告诉自己:螺丝钉也能有自己的价值体现!

       于是乎,三省吾身!

       几千号员工的上市企业,以总部和分部为个体划分,在个体中又以部门为单位划分,各部门的管理、财政、人事都实现独立。总而言之,一个独立的部门就像只小麻雀,五脏俱全!从新人入职的身份到看着新人入职,从环境的陌生到熟悉,从同事的初识到相处,一切的一切,似乎都是那么顺理成章的进行着~~

      现在总结来看,上份工作算是系统运维,上至集群的升级和扩容,下至机房的上架与拉线,还得拉个箱子满世界的跑~~而目前的运维类型能也就给归个应用运维的类吧,部门做的是医疗健康的app,在进公司之前总想着偌大个企业,在运维体制、系统架构、服务优化、技术规范、监控手段等方面应该高大上,肯定很多地方能大开眼界,但是事实却是并不是想象中的那么高B格,啊哦~

       公司的应用运维流程是开发在本地将代码调试好推送到Gitlab,通过Jenkins构建,实现将代码打成war包,提取包的md5值并传输到备份服务器,同时将包部署到Tomcat,上线后由测试进行功能验证。系统架构体系则是Nginx+Tomcat !

       因是传统的war包方式持续集成,故Jenkins中并未用到太多插件,打包、备份、部署等都是通过在Jenkins中添加的相关Shell命令进行操作。于是乎,当在Jenkins中新建Project时,通过原有的模板进行Copy后,还需多次手动的修改那些频繁出现在Shell命令中的参数(打包的包名、备份服务器地址、部署服务器地址等)。为了删繁就简,于是乎,我将内容集成在脚本中,通过运行脚本并传参的方式实现一次传参达到多次Shell内容参数的调用,Oye!

       然后说说Gitlab,公司的一些数据资料、项目代码等都存在Gitlab中,而Gitlab权限掌管在运维手中,部门需要新开项目,在Gitlab上建立相应的代码Project都得是运维操办,原有的流程是确定新开项目,运维在Gitlab建立相应Project,然后通过SourceTree工具对新建的Project进行git初始化和指定分支的创建。于是乎,每次新开项目,Gitlab新建完Project后,都得别扭的在Windows中用SourceTree工具,总感觉怪怪的。为了删繁就简,于是乎,我将相关操作集成进脚本,并建立Jenkins执行操作,抛弃了Windows工具的同时实现了相应功能,麻麻再也不担心我不会用工具了,Oye!

       随着工作的循序渐进,有天开发突然抱着电脑来找我了,说线上Bug紧急修复,要提取线上的代码为基底进行改动,所以问我要线上的代码。然后我就在想:“讲道理,运维负责项目上线,顶多也就支配下项目的版本回滚,代码是开发的命脉,确定线上代码的版本都还要找运维?开发难道不会对代码打好相应的版本标签么?”诶呀!脑壳疼,最终讨论出的结果就是:一个项目可能对应多个开发,项目上线运维一定在,而开发不一定在,开发的水平参差不齐,标签不知道打,或者没法统一等等~~好吧好吧!最后我还是选择在项目上线前通过脚本对其进行版本标记,实时确定线上代码版本,Oye!

       运维字面上理解为运营、维护;而更深层次的是扮演着管理、制度、推行和监督角色,处理着自动化、网站架构优化、监控预警、流量及日志分析统计、权限管理、安全优化等事务,负责维护整体项目架构体系的稳定运行;同时让自动化的持续集成体系更具有制度化、规范化、流程化~~

       然而我渐渐的发现了,此刻我不是个单纯的应用型运维,这简直就是啥活都干的功能型运维吖!好吧,既来之,则安之!干着干着,事儿慢慢就多了,譬如:Hi,Gitlab给开个账号;Hi,Gitlab给开个权限;Hi,项目接口502了;Hi,Web页面404了;Hi,项目加个代理;Hi,项目日志哪里看;Hi,这个项目上个预发;Hi,新建个项目环境;Hi,项目上个线~~等等,然后同事的内部访问地址异常了找你给配个DNS;SourceTree拉代码异常了找你给解决下;新同事入职了装些软件给支持一波~~~然后我自我安慰的告诉自己:这是一个认识小哥哥、小姐姐的机会,嗯,不错!

       话说,不想当将军的士兵不是好士兵,Nice!于是乎,虽然我是一颗螺丝钉,却有着一个顶梁柱的梦~~所以,带着严谨性和责任心默默地耕耘在平凡的岗位上,尽自己的能力去规范化、流程化整个持续集成的运维体系及运作方式,尽自己的努力去将运维流程的自动化做到最大化。当然,这不仅是岗位价值的体现,更重要的是提高工作效率和工作质量,方便了大家的同时也提升了自我!

       哦,对了,聊正事了。部门做的是app项目,绝大多数项目都是以war包的形式部署到Tomcat中,而当大量新项目的产生,涉及到服务部署、项目迁移等,最让人头疼的问题就是环境的一致性问题。为了删繁就简,于是乎,在老大的默许下,用上了Docker(测试环境)。通过Jenkins+Harbor+Tomcat+Docker+Nginx等服务衔接,配合自己写的Docker容器项目部署脚本,基本实现了个小小的自动化,在实现功能的同时简化了大量环境一致性的操作。因项目需多次更新代码重启服务进行调试,故容器的删除与启动较为频繁,脚本的大致思路是跑a项目容器前,先判断其是否已经在运行,若是,则彻底删除容器并更新代码重新启动,若项目容器是第一次启动,则随机生成映射端口,启动后将服务映射的端口记录到指定文件,当同一个项目需更新代码重新启动容器时,将到记录文件中调用记录的映射端口作为重新启动容器时的映射信息,即保证了容器重新生成的映射端口与第一次的生成信息的一致性!当然,目前只是单纯的用docker,后续估计要慢慢的用上编排工具Kubernetes~~~

       诶呀!扯了辣么多,不知道读者有没有看晕,反正我差点给自己写晕了~~

       目前个人工作的运维状况及运维体系大致就是这些了,不知道是不是也有和我感同身受的同僚,希望看了博文的技术小哥小姐们给个鼓励,同时,更希望的是有技术大佬能给一些建议和指教,站在现有的运维基底,怎么让运维体系更具自动化?更有B格范儿?傲娇的小眼神期望着你呢!哼哼哼~~

       最后来一句:打酱油,我是认真滴!

       Thank you !

-------------------------------------------------------------

作者: 罗穆瑞

转载请保留此段声明,且在文章页面明显位置给出原文链接,谢谢!

------------------------------------------------------------------------------

如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

------------------------------------------------------------------------------

目录
相关文章
|
存储 弹性计算 运维
运维攻城狮的日子:解读运维职业的使命与挑战
从IT诞生之初,运维作为一项关键角色就开始扮演着重要的角色。而7月24日这一天,被定为了专属于运维攻城狮的日子,它涵盖了运维职业的使命和职业素养,展示了运维人的生存状态。在这个特殊的日子里,阿里云存储团队、阿里云弹性计算团队、阿里云开发者关系团队以及CSDN联合举办了一场面向运维人的技术沙龙,旨在为运维人员提供更多的学习和交流机会。关于本次沙龙,有很多干货,也有很多值得学习的地方,那么接下来就来简单聊一下。
287 1
运维攻城狮的日子:解读运维职业的使命与挑战
|
机器学习/深度学习 人工智能 运维
不仅会运维,还会写诗!
在我们的印象中,运维工程师是一群十分专业的技术人员,他们的工作内容主要是维护和管理企业的计算机系统和网络设备,确保系统的正常运行。他们需要具备扎实的技术水平和丰富的经验,以应对各种各样的技术问题。恰逢7月24日是一个专属于 IT人的日子,寓意是7×24小时待命电脑不离手、保障业务7×24小时高效可用。他们运筹“维”幄,有紧急情况发生,他们会坚守在机房直到问题解决;他们“时来运转”,每逢重大节日、重大活动,就能看见运维人忙碌的身影像陀螺一样运转。但是,你是否想过,运维工程师还有可能会写诗吗?
279 1
不仅会运维,还会写诗!
|
NoSQL 测试技术 API
从程序员到架构师开发运维场景实战篇:一人一套测试环境
一人一套测试环境 本篇开始讲第16次架构经历:一人一套测试环境。同样,先介绍业务场景。 业务场景:测试环境何时能释放出来使用 当时,公司的基础设施使用的是虚拟机,而且还未迁移到容器。
|
存储 缓存 运维
语雀生产故障不只是运维的锅
现在想来“客户第一”真的是一件很难的事情,说着虽然简单,但是站在用户视角不是一个口号,它需要管理的手段、产品的理念、研发的视线、运维的自动化去协同,我们要暂时放下部门的隔阂、放下旧的用户遗留的定位、放下研发技术手段的局限,真正站在一起去考虑才能形成合力。这个过程,我们有很多阻碍——持续商业化和变现压力、部门的拉扯、人力的变更、繁重的产品设计任务、改不完的bug、做不完的需求、甩不完的锅,还有当下不景气的整体经济现状和已过巅峰、不在风口、进入存量竞争的互联网行业大背景。
135 0
|
开发框架 运维 监控
你真得了解”运维开发“吗?
第一个层面,浅层意义,是指“运维工具的开发”。曾经确实如此,例如在HP(Service Manager)和IBM(Tivoli)等国外企业级解决方案为王的时代。那时,实施一套运维工具集,就像在实施SAP的ERP,全过程从咨询到落地实施,不但复杂得很,而且各位运维管理人员、运维工程师就像小学生那样好学(bei dong),毕竟领导说了,上运维系统就要走“固化-僵化-优化”的正路,但理想与现实的鸿沟,还是如此鸿沟
554 0
你真得了解”运维开发“吗?
|
运维 监控 安全
阿里云效DevOps之开发攻城狮、产品经理和运维小哥哥幸福生活的开始
DevOps是Development和Operations的简称,阿里云效DevOps帮助团队轻松共同制定计划、同步工作进展、共享工作资料、沉淀工作成果。 从策划活动、需求管理、研发软件、自动化交付流水线、企业级代码库到制造机器人、建设发电站,让跨部门、跨地区、跨企业的各类复杂协作化繁为简,交付高效顺畅,每一个目标都能加速实现。
阿里云效DevOps之开发攻城狮、产品经理和运维小哥哥幸福生活的开始
|
运维 监控 安全
开发攻城狮、产品经理和运维小哥哥幸福生活的开始之阿里云效DevOps
DevOps是Development和Operations的简称,阿里云效DevOps帮助团队轻松共同制定计划、同步工作进展、共享工作资料、沉淀工作成果。 从策划活动、需求管理、研发软件、自动化交付流水线、企业级代码库到制造机器人、建设发电站,让跨部门、跨地区、跨企业的各类复杂协作化繁为简,交付高效顺畅,每一个目标都能加速实现。
开发攻城狮、产品经理和运维小哥哥幸福生活的开始之阿里云效DevOps
|
运维 容器 云计算
运维七剑客——多个10年以上运维专家的感悟
阿里云MVP携手阿里云技术专家,分享多年实战运维经验。
5992 0
|
项目管理
艾伟也谈项目管理,我也发软件开发团队的思考(侧重点是人员)
  //上个月给我们老板的mail.洋洋洒洒6000多字.  //为了方便公开,改了一下.以致可能有些地方前言不搭后语.  //不管他同意不同意,先在我们组实行了再说.  //请多大家多提提意见,日后看有没有机会找老板当面交流  经历的几个项目,项目的进度老是不尽如人意。
1195 0
|
运维
如果对刚入行做运维的人提点建议,你会对他说什么?
本人带过2年的运维团队,尝试回答一下这个问题。 建议给自己3个月的试用期,因为运维工作并不一定适合所有人,同时没有深度体验,很难准确判断自己是否适合做这行。
1287 0