如何成为一名优秀的大数据运维工程师?
随着大数据技术的发展成熟以及国家对大数据产业发展的支持,搭建大数据平台也不在限与BAT级别的大型互联网企业,越来越多企业或个人参与到大数据行业中,并且已经尝到了大数据和大数据技术带来的甜头。
而由于大数据井喷式的发展,作为技术人员,很多的人考虑的是学习大数据开发技术,大数据与业务应用。但技术产业的不断发展成熟,分工也必将越来越明确,尤其是互联网产业,个人是很难完全掌控全局的。
大数据产业当中,企业的IT架构不断扩展,服务器、存储设备的数量越来越多,网络也变得更加复杂,从而给运维工作带来了巨大的挑战,特别是分支机构众多的大型企业或垂直层级较多的政府单位,为了保障良好的用户体验和数据时效性,运维工作显得十分艰巨。因此,在大数据集中趋势越来越明显的时代,具备实时采集和海量分析能力的IT运维管理产品将会成为数据分析应用的新增长点。
IT运维产品的发展趋势决定了,要在企业复杂的异构网络环境和系统面前毫不畏惧,有这种实力才能实现业务系统所依托的网络平台资源、服务器资源、应用系统资源、信息服务资 源等进行统一综合管理。
那么对于本身从事运维工作,或从其他岗位转做大数据运维工程师的朋友,应该掌握哪些技能,才能让我们在实际工作中得心应手,运筹帷幄呢?
首先Linux,对于从事开发工作的朋友,必然并不陌生,即使没有系统学习过,但是简单常用的命令必然了解。但对于想从事大数据运维朋友们,我们必须要进行系统的学习,除了常用的命令,基础的有网络安全、用户、磁盘管理,文件目录管理,系统监测维护;之后是Linux下部署企业中用到的各种服务和构建各种高级服务的方法,特别是系统管理员日常管理工作中常见的问题,最初步的安装到系统的安全和优化,以及各种服务的搭建和管理都有一些小技巧,都必须掌握。
关于Linux这块,作为大数据运维工程师,我们还需要具备Linux下进行进程控制开发、进程间通信开发、多线程开发、网络的开发能力,为后续深入掌握嵌入式Linux驱动和系统编程打下坚实的基础。然后逐步进阶,再通过项目实战,搞定Linux中小规模集群构建与优化。当然这里必须要提一下,需要熟练掌握运用Shell编程。
作为运维工作人员,常规数据库的操作必不可少,而针对大数据运维,一些高性能数据库必须熟悉,如Redis等。在此基础上,基本可以尝试完成一些大规模集群架构构建了。
自动化运维能够大大提高运维效率,而python凭借其灵活性,在自动化运维方面已经被广泛使用,而且服务器规模越大,优势越明显。通过python实现自动监控,系统安全、报表管理,Ansible,Saltstack等等。学习过程中可以可以使用python自动化运维实现大规模流量监控与管理,来体验自动化运维在实际业务场景的应用,提升实际使用能力。
既然是大数据运维,大数据平台集群构建和云计算平台集群构建自然需要熟练,了解hadoop生态体系,有条件的话,可以尝试搭建千万级的高并发大数据网站平台(自学估计比较困难)。针对云计算平台,OpenStack易于部署、功能丰富且易于扩展,应该作为我们重点学习对象。针对这块也有像COA认证等受认可的培训认证,有条件的朋友可以参与,对就业帮助还是非常不错的。
讲了这么多,其实很多本身从事企业网管、技术支持或者硬件网络方面的朋友,对文中的部分内容还是非常熟悉的。对于这类有一定经验基础的朋友,学习起来自然会更轻松。运维工作相对与编码,比较看重人的逻辑思维能力,对于未知情况做出逻辑判断,主动出击,对于沟通、团队能力更加看重。有兴趣的朋友可以尝试深入了解。
大数据时代,“连接一切”将是一个时尚的词句,物物相连,人人相连,人物相连。在这个巨大且复杂的网络中,以大数据、云计算为基础的智能感知世界,让我们张开双臂,拥抱未来,以大数据为基础,精准感知,精准运维。