send_linux 发表于 2013-04-12 09:34

运维管理人生之一:如何在项目实施过程提高系统运维水平(获奖名单已公布-2013-6-7)

获奖名单已公布,详情请看:http://bbs.chinaunix.net/thread-4085370-1-1.html

背景简介:
跟很多朋友在做线下交流活动时,发现不少朋友在从事项目实施工程师的工作,也发现蛮多系统管理员也作为项目实施人员参与到项目中,此时的身份就转成了项目实施工程师, 项目实施工程师与网站系统运维人员性质不一样,它要求项目实施工程师在规定时间内必须要完成合同规定的相关项目事宜,让客户能看到网站效果,特别是UI和功能,很多时在 高可用方面有一定的特殊要求。由于项目实施前期,基本都是测试数据(此时进行一些破坏性实验问题也不大),而且机器性能较卓越,进行压力测试也不需要担心影响用户体验 等等......那么作为项目实施工程师的朋友如何利用这段时间,在项目实施的过程中提高自己的运维水平呢?

活动组织:
yuhongchun-余洪春(抚琴煮酒)《构建高可用Linux服务器(第一版、第二版)》一书作者,系统架构师,ChinaUnix集群和高可用版版主。

本期话题:
话题1: 如何在项目实施过程中提高自己的系统运维水平
话题2:在项目实施过程中的注意事项
话题3:以真实案例(可做无害处理)来说明1、2这两个话题。

活动时间:2013.4.11——2013.4.30

邀请嘉宾:
老男孩 (老男孩linux培训)老男孩Linux实战运维培训中心总裁
周华飞 北京弘睿千里信息技术有限公司认证部经理
崔晓辉( coralzd )大众网高级系统管理员
刘晗昭(wenzizone)昆仑万维高级架构师
胡安伟(king_819)   系统运维主管,Chinanix自动化运维版版主
刘鑫 (gray1982)    高级系统运维工程师,Chinanix集群和高可用版版主

活动奖励:《构建高可用Linux服务器(第一版)》10本
          《构建高可用Linux服务器(第二版)》5本

xiaodylan 发表于 2013-04-12 10:36

话题1: 如何在项目实施过程中提高自己的系统运维水平
    话题好大。我觉得工作中重在实施才能学到更多的东西。可能大部分公司没有把实施工程师和网站运维工程师分的那么清晰,在中小型企业
就只有运维工程师这一个职位或者还有一个网络工程师来负责机房网络。
通过实施项目从中可以遇到好多问题 如: 错误、依赖、安全问题、性能问题、用户问题、权限问题、后期维护问题 等等
那么我们在遇到这些问题的同时需要做好详细的记录,这便是经验和学习到的东西(对于我这种记性不好的人就只能做记录了)

话题2:在项目实施过程中的注意事项
   1、前期要做好项目实施文档,做好前期的测试工作(如压力测试,安全测试,性能测试等)
   2、用户实施环境问题(系统版本、部署用户) 尽量做到线下测试的环境与线上环境一致
   3、依赖问题 在软件包的安装中大部分都会依赖于某些其他的包文件,这时可能就会引起编译出错等情况,所以还是要保持测试环境与生产环境一致
   4、权限问题 用户部署环境权限保持统一
   5、做好各项定时任务工作 (如log的清理等等)
   6、做好后期扩展性的考虑
   6、做好详细的实施记录
话题3:以真实案例(可做无害处理)来说明1、2这两个话题。
    在之前某公司做游戏的上线操作 基本上 话题1和话题2中的问题我都遇到了 具体就不描述了 呵呵..(很衰),但这并非坏事,也许这就是经验吧。

刺客阿地 发表于 2013-04-12 11:18

话题1: 如何在项目实施过程中提高自己的系统运维水平

答:参与项目的代码管理,测试环境配置和搭建,同时参与并执行项目代码发布上线和配置
出现错误,要及时排查解决问题,这样,肯定能提高运维水平,呵呵。

话题2:在项目实施过程中的注意事项

答:测试环境配置过程中,要注意服务器上的web端是否有编译错误,查看服务log
仿真环境也要监控错误信息,遇到错误,排查原因,协助开发解决问题。
上线发布,操作步骤一定要谨慎,使用一般用户,sudo执行发布动作。
这是俺公司上线发布要注意的事项,呵呵。

话题3:以真实案例(可做无害处理)来说明1、2这两个话题。

答:真实案例1,项目实施,要搭建测试环境,仿真环境,哈哈,亲自动手搭建,就会提高运维水平。

      真实案例2, 如果上线发布过程中,使用rm -rf误删了问题,嘿嘿,那麻烦拉。。操作命令一定要谨慎,而且要知道命令是否可以逆向的。
                     俺们公司,我就感受这些。

yuhongchun 发表于 2013-04-12 11:36

xdsnet 发表于 2013-04-12 12:44

话题比较大的,尽可能回答一些
话题1: 如何在项目实施过程中提高自己的系统运维水平
      重点在于明确项目实施关键点,一般的实施关键点也是运维监控的重点。
      对项目实施的各个步骤进行收集整理和梳理,理清形成规范化操作流程,这样的流程是运维的基本规范,特别是做大的系统恢复、迁移等事项时的重要指针。而且在实施时因为系统还是非生产系统,可以做一些小的实验来检验流程的有效性,优化过程等以保证流程的效率、和效果。
      此外实施过程中的一些文档进行整理,比如硬件环境清单、线路连接图、软件环境清单(依赖关系图)、系统服务加载顺序表、重要日志的位置、备份机制......这些重要的文档对运维工作十分必要。

话题2:在项目实施过程中的注意事项
      项目实施过程中运维人员的加入其实还是有必要的,但需要明确的是实施环境和当前(在线)环境可能有区别,要注意区分。
      运维人员的很多经验可以直接用于项目实施方案的改进,这需要运维在日常收集,也需要项目实施中进行甄别利用。
      项目实施中要考虑一些系统长期运维工作情况,进行必要的支持性开发,提升运维效率,特别是一些工作尽量提供自动化支持(同时防错处理),完善的日志检查支持以减轻运维工作强度。

话题3:以真实案例(可做无害处理)来说明1、2这两个话题。
      如一个资源服务应用,因为链路问题,资源的发布涉及到电信、联通等多个不同位置的外部资源服务器,资源需要长期添加,先添加到一个内部的备份(备用)服务器上,再分发到外部的服务器上。
      这样运维人员就涉及管理3处的服务器(外部服务器硬件基本一致,只是链路和位置不同,内部服务器硬件还不尽相同),并监管实施资源的分发工作,这需要运维人员对不同的服务器做好资料整理记录,能尽快的定位错误,排除硬件故障,或者进行系统恢复。分发是个长期持续进行的工作(实际上包括资源到备份服务器这一步我们也安排由运维实施),必须要有一套完整的规范保障。这时运维就需要了解应用部署各方面的关键点,在系统许可的情况下自定一系列的自动化脚本等工具来帮助实施了。因为资源本地上载有很多不确定性(数量、大小、发生时间、位置),单个上载用的时间也比较长,更不用说向外发布了(有时需要小时甚至天计的时间——受限于发布环境),所以不好直接利用同步工具直接同步,这就需要运维根据情况开发有效的机制来保障这个工作了。此外这样的经验对项目的升级换代收集了大量数据,提出了更高的需求,就可以在下一步的改造中进一步优化。

wenhq 发表于 2013-04-12 13:39

话题1: 如何在项目实施过程中提高自己的系统运维水平
要提高运维水平,需要不断的实践,操作理论知识。同时不断扩充新的理论知识。再加以实践。
有些时候光知道理论也不行,只有加以实践才能掌握提高,同时发现一些从理论层面学不到的东西。
话题2:在项目实施过程中的注意事项

项目实施的过程需要注意的是:从开始项目的规划与实施计划要做的比较严谨还包括如果发生紧急情况的应对策略。
在项目真正实施的时候需要关注的细节及后期运维的方便性等。
话题3:以真实案例(可做无害处理)来说明1、2这两个话题。
有一次一个app工程在重启后,出现无法访问的问题。报504错误。经查发现进程在重启后,当client访问该app之前,此工程的端口状态是listen的,但是访问后就会从LISTEN->ESTABLISHED->CLOSE_WAIT。经分析是需要修改下面参数。
net.ipv4.tcp_keepalive_intvl
net.ipv4.tcp_keepalive_probes
net.ipv4.tcp_keepalive_time
同时再次温习了一下TCP/IP 建立连接的细节。

刺客阿地 发表于 2013-04-12 14:17

回复 5# xdsnet


    好详细,呵呵!:mrgreen: 学习!

刺客阿地 发表于 2013-04-12 14:18

回复 6# wenhq


    兄弟搞手游运维的?

wenhq 发表于 2013-04-12 14:19

回复 8# 刺客阿地

internet.not only game,but also others...

You will know.


   

刺客阿地 发表于 2013-04-12 14:23

回复 9# wenhq


    额。。。你的英文水平不错,哈哈!:mrgreen:
页: [1] 2 3 4 5 6
查看完整版本: 运维管理人生之一:如何在项目实施过程提高系统运维水平(获奖名单已公布-2013-6-7)