系统工程师主要做什么_Filecoin运维工程师在做什么?

前言

固然运维这个职能范畴对于绝大多数人来说认知模糊,特别是在分布式存储领域,“运维”常常和“机房”“IDC”等名词相伴,导致很多异业者对于运维的了解停留在物理层面,以搬运机器、上下架服务器、管理网电等为标杆,好似网管般维护机器运行。事实上运维工程师从工作方式上分为多类,如:运维工程师、运维开发工程师、运维平台研发工程师、数据库工程师、数据库研发工程师等,体现运维能力更多于针对业务的定制化原生工具开发的方面。

运维工程师负责维护并确保整个服务的高可用性,同时不断优化系统架构提升部署效率、优化资源利用率提高整体的ROI。

伴随着Filecoin的主网临近,“运维”重要性的共识在业界基本达成一致,随着行业布道信息量和内容程度的升级,越来越多的投资参与者也步入理性分析,无论是从Filecoin项目的阶段性动态,亦或是对挖矿服务商的甄选,在主网上线的黎明前夕,现阶段最重要的运维工程师们,确定准备好了么?

初识运维

1.1运维是什么

运维普遍是指互联网运维,是和研发、测试、系统管理并头的4大技术部门。

细分来说运维的技术方向包含服务监控技术、服务故障管理、服务容量管理、服务性能优化、服务全局流量调度、服务任务调度、服务安全保障、数据传输技术、服务自动发布部署、服务集群管理、服务成本优化、数据库管理、平台化的开发、分布式存储平台的开发优化等等,分布式是其中很明确的一个技术要领。

同时在运维工作中,运维人员要照顾到Web服务器、监控、自动部署、配置管理、负载均衡、传输工具、备份工具、数据库、分布式平台、分布式数据库、容器、虚拟化、安全、问题追查等大而全、小而细的事项。

运维工程师通过软件或命令行实时与第三方系统做数据同步,实现可视化监控平台与各系统的无缝对接,确保系统数据的精准与稳定,及时处理告警信息,提高动环(动力环境)监控管理效率。

动环监控自2008年出现至今已有十二年的时间,主要包括以下模块:

  • 配电系统:UPS及直流电源、自备发电机、配电柜、防雷检测等。
  • 环境系统:空调、温湿度监测、漏水监测、气体监测等。
  • 消防系统:烟感、温感、早期预警系统、其它消防设备等。
  • 保安系统:图像监控、门禁监控、红外探测、玻璃破碎探测等。
  • IT网管监控:网络设备、PC服务器、操作系统、数据库及应用等。

除此之外,运维工程师们还需要关注:

  • 联动控制:电子开关、联动录像、数据存储、运动操控等。
  • 事件记录:操作记录、状态记录、异常记录、确认记录等。
  • 异常报警:声光报警、语音广播、电话报警、短信报警、邮件通知等。

运维人的一天从上班打卡开始到下班打卡结束,忙忙碌碌周而复始,“007”的工作模式屡见不鲜。

1.2运维发展史

运维要做的是将系统运行存在的变量做到可控,但运维环境的异构和复杂化导致日常运维工作需要付出的人力、时间成本越来越高。

从初级运维发展到最高新的智能化运维,主要是四个阶段的过渡:

  • 脚本时代
  • 工具时代
  • 自动化时代
  • 智能化时代

两年前,“智能化运维”开始被大家广泛关注,随着大数据分析、APM(应用性能管理)、智能异常检测、机器学习等技术的兴起和逐渐成熟,运维需求也逐渐向自动化和智能化过渡。

自动化的意义

2.1自动化的运维方式

自动化是智能化的前提。自动化的运维方式解决硬件和网络的自动管理、虚拟机的自动管理、操作系统和软件的自动化安装、配置,我们看到了很多“管理”,自动化的意义一方面是提高效率、优化成本、优化资源,更好的做一些弹性,把资源释放出来去干点别的;另一方面更是将运维结果标准化可复制。

当然,从工具化到自动化的过程并没有那么的容易,对整个行业来讲,目前更多的工作是在探寻自动化,深耕分布式存储多年和Filecoin源代码近两年的IPFS原理区作为为数不多的实现自动化运维服务的提供商,在此致敬为行业发展服务努力的技术大佬们。

说回运维,在Filecoin这个领域,标准的运维软件研发和其他相对传统的运维软件不太一样。比如说阿里从工具化到自动化这个过程中,笔者认为工具化挑战相对小,即使传统的运维人员也很容易写一些工具,比如用Python去写更多的工具体系。但是如果开发者的工具最终要变成能够到自动化这个阶段,就意味着对工具的要求会越来越高,比如说工具的质量,如果开发者写出来的工具经常有问题,规模一大就扛不住压力,这时从人性的角度来讲,开发者将会慢慢失去信任感,最后会很难完成这个过程。

当自动化运维实现监控、问题诊断、可视化等,运维人只留下一部分手工任务包括容灾切换、应急操作、应用部署和起停等,这样留下的大量精力就可以倾注于运维开发,给用户带来更好的服务体验。

2.2实现自动化的方式

一套完善的综合动环监控系统可以对分布的各个独立的动力设备、机房环境、安保监控等进行实时采集、实时监视系统和设备、安保的运行状态,记录和处理相关数据;及时侦测故障,并作必要的遥控遥调操作,适时通知驻场和远程运维处理;实现机房的少人甚至无人值守,以及电源、空调的集中监控维护管理,提高供电系统的可靠性和通信设备的安全,为机房的管理自动化甚至智能化和决策科学化提供有力的技术支持。

但目前Filecoin领域业内真正的自动化运维的落地实践占比不大,突出的、原生的定制运维系统更是少之又少,原力矿池占其一。

运维对Filecoin的重要性

3.1 DEVOPS理念

3.1.1 DevOps 的工作原理

在 DevOps 模式下,开发团队和运维团队不再“孤立”,他们会在应用程序的整个生命周期(从开发测试到部署再到运营)内相互协作,开发出一系列不限于单一职能的技能。这些团队会使用实践经验自动执行之前手动操作的缓慢流程,使用能够帮助其快速可靠地操作和发展应用程序的技术体系和工具,进一步提高团队的工作速度。

3.1.2 DevOps 的文化理念

向 DevOps 的过渡需要文化理念和心态上的转变。DevOps 的宗旨是消除两个传统上孤立的团队之间的壁垒。他们力求频繁沟通、提高效率,并改善客户服务的质量,他们能够完全掌控自己的服务,并且经常越过自己的既定角色或职能的传统工作范畴,思考最终用户的需求以及解决这些需求。

3.1.3 DevOps 实践说明

有一些重要的实践经验能够通过自动实施和简化软件开发与基础设施管理流程,帮助组织加快创新速度,这些实践经验有大部分需要通过适当的工具来完成。其中一个基本实践经验就是要频繁地进行小规模更新。

这是组织能为客户快速提供创新的有效方式。与传统发布实践中偶尔的更新相比,这种更新通常更具渐进性质。频繁的小规模更新能够降低每次部署的风险。它们可以帮助团队更快速地处理错误,因为团队能够确定引发错误的最近一次部署。虽然更新的节奏和规模可能有所不同,但使用 DevOps 模式的组织与使用传统软件部署实践的组织相比,会更频繁更新。

此外,组织还可以使用微服务架构来提升应用程序的灵活性,从而加快创新步伐。微服务架构将大型的复杂系统拆分为简单的独立项目。应用程序被拆分为许多单个组件(服务),每个服务限定到单个目的或功能,这些服务既可以与其同级服务相互独立运行,也可以与应用程序一起作为整体运行。这种架构降低了更新应用程序的协调开销,当每个服务都与掌控各项服务的敏捷小型团队一一对应时,组织就可以实现更快的发展。

但是,微服务与较高的发布频率相结合会导致部署量大幅度增加,会带来运维挑战。因此,持续集成和持续交付等 DevOps 实践经验有助于解决这些问题,让组织能够以安全可靠的方式快速交付。与基础设施即代码和配置管理一样,基础设施自动化实践经验也有助于维持计算资源的弹性和对频繁变更的适应性。此外,进行监控和记录这一实践经验可帮助工程师追踪应用程序和基础设施的性能,以便他们快速应对出现的问题。

3.2 Filecoin运维与传统运维的区别

Filecoin矿商的运维相较传统互联网运维难度呈数倍甚至数十倍提升,这主要受挖矿模式影响,比如当用整机串联并行方式参与时,难度仅围绕单一固件上的程序稳定性做工,但如果采用集群化或者分布式矿池的形式,集群间的各种请求调度和需求分钟级部署的高标准对于运维工程师来说是一大挑战。当Filecoin全网算力需求急剧提升时,集群化矿池模式的运维依然可以自如面对,而其他模式的运维就需要堆人堆资源来解决此类情况。

如果说Filecoin运维和传统运维的具体不同,这里举几个方向的例子:

  • 物理层:因类似阿里云的服务商,没有标准化的服务支持,Filecoin云服务更需要注重底层架构,需要定制化的自建IDC,这远远不止硬件范畴。
  • SaSS:Filecoin软件服务层也需要大量运营工具以支持数据可视化,这样运维需要将开发平台化,将工具可视化,这个过程中运维参与了大量的研发工作。
  • 运维流程:传统运维因参与个体少、逻辑简单,多以Web形式访问接口,做好端口监听,反馈结果基本可控绝大多数变量,流程简单;而Filecoin流程复杂,需要维护的模块多、自动化难度高、监听数据复杂且高频,特别是惩罚机制,犹如达摩克立斯之剑,时刻告诫矿工们即使如此难度也不容出错,客户的数据存储需求服务是Filecoin第一要务。
  • 准确性:运维需要物理层监控,但对于Filecoin来说,监控出块时间、出块率、算力走势、Lotus同步高度准确性等维度的重要程度不亚于物理层运行状态。在传统运维场景下,一个异常处理的要求可能在小时级,千万级用户的应用服务可能在分钟级,但Filecoin网络任何一个参数的异常都有可能对矿工造成巨额收益的损失及抵押的惩罚,易造成得不偿失的情况。

除此之外,原力区运维要针对官方的Lotus代码给予优化,考验运维的开发能力、程序运行结果的稳定性,要实现健康状态检查、故障自动重启、故障自愈等,这一切的一切为的是提升CPU使用率,从而提升算力、出块量、收益,效率提升达2-3倍。

3.3 项目发布的区别

3.3.1频率

传统互联网项目发布的频率固定、时间固定,如每周三,部署的原因多为修复BUG及功能新增,而就当前Filecoin网络状况,目前原力运维要做到的是灵活部署、随时可部署、随时更新链版本,实现在第一时间可以推倒已有集群,并重新部署一遍全流程,对于任何细节的调整要有数十倍的复查测试,实现对网络变化的快速反应,这也是实现实时最优挖矿收益的前置准备。

3.3.2颗粒度

Filecoin挖矿服务在实现数据监控可视化、运维应用状态监控可视化之外,颗粒度也是极细,比如做Sector的过程中自动化监控P1-P7状态及返回值。

当原力区运维工程师将数据化、自动化、精细化、平台化(后台)颗粒度足够精细后,海内外的自动化部署即达到分钟级执行完毕,通过后台一键管理全部服务器,并行部署新代码,自动化工具压缩部署时间,实现节省99%耗时的效率优化,这少则百兆的数据包的分钟级远程部署对行业来说是一个挑战,对Filecoin矿池技术的推进却是一个跨越。

自动化大体量运维

Filecoin大矿工测试中原定“5PB”的大矿工标准,在目前看来对行业已然不是挑战,据评估Filecoin主网在上线前3-6个月将达到1000PB,这个数据带来的是Filecoin运维工程师们提前准备的一项作业:如何大体量运维?

目前看来自动化运维是解决大规模集群运维的唯一方式,也是运维工程师面对的最大挑战。如何管理好几十万台服务器上的服务,同时保障服务的高可用性,这里需要集群复制能力,但相较传统运维项目,复制部署复杂度数十倍增长。做好24小时驻场维护保障设备上架;高频定时环动监控及日志记录保障设备运行;自动化分布式部署、分布式监控系统保障系统运行;核心网络监控,护航设备&系统&应用连通率;成熟的1保5冗余保护策略保障数据安全;攻防防护保障等等等等,这依然远远不够,运维的路很长,没有尽头……

4fd11cd3211fb60763638425cb7b57d6.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/336080.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql怎么返回上一行_月球上并没有发射基地,阿波罗飞船是怎么返回地球的?...

美国上世纪六七十年代成功实施了载人登月工程,这一壮举震惊世界。阿波罗系列载人登月飞船和用于发射飞船的土星五号运载火箭名声大噪,而用于发射土星五号,位于卡纳维拉尔角肯尼迪航天发射中心的39号发射台也格外引人瞩目。土星五号全长110多米…

凯立德地图导航2020年最新版车载_明明有车载导航,为什么很多人还是选择用手机导航?有5个原因...

提到导航,你首先会想到什么导航产品呢?如果是高德导航、百度导航之类的,那你主要用手机导航。但是如果除了高德导航和百度导航之外,你还能随口说出四维图新导航、凯立德导航,甚至是道道通导航之类的话,那你…

WebRTC Google的 BBR拥塞控制算法解析

正文之前,给出本文的图例: BBR的组成 bbr算法实际上非常简单,在实现上它由5部分组成: 1.即时速率的计算 计算一个即时的带宽bw,该带宽是bbr一切计算的基准,bbr将会根据当前的即时带宽以及其所处的pipe状态来计算pacing rate以及cwnd(见下文),后面我们会看到,这个即时…

python斐波那契数列前20项_兔子繁殖问题带来的智商碾压:斐波那契数列趣谈

本文来自公众号:超级数学建模微信号 :supermodeling原文标题:斐波那契数列趣谈via 善科by BB一般认为斐波那契数列的提出是基于兔子的繁殖问题:如果一开始有一对兔子,它们每月生育一对兔子,小兔在出生后一个…

jboss使用_使用JBoss Cool Store的终极云零售指南

jboss使用我们一直在讨论为什么应用程序开发人员在App Dev Cloud Stack系列中不能再忽略其堆栈了。 带有JBoss Cool Store的App Dev Cloud 我们从头到尾讨论了各个层次,但尚未为您提供除Red Hat Container Development Kit(CDK)之外的任何应…

C++ 11 深度学习(六)智能指针综述

以下三种智能指针均为类模板 1.shared_ptr 共享指针 ,多个指针指向同一个对象,最后一个指针被销毁时,这个对象会被释放。 2.week_ptr 是辅助shared_ptr工作的 3.unique_ptr 是独占式指针,同一时间只能有一个指针能指向该对象…

10 NAT网络地址转换

广域网技术 上面聊的内容都是内网的一些配置,但内网终将要访问外网的,我们需要怎么处理呢?一般使用HDLC(高级数据链路控制协议)或者PPP(点对点协议)。 使用PPP安全接入Internet PPP&#xff0…

java应用性能指标_性能与可靠性:Java应用为何像F1汽车

java应用性能指标再想一想。 性能和可靠性相关吗? 还是这些东西相互排斥? 我认为是后者。 如今,现实是IT部门将应用程序的性能和可靠性视为同一事物,但这离事实还差得远。 让我们看看一级方程式车队如何管理性能和可靠性。 上赛…

tomcat ajp协议安全限制绕过漏洞_Apache Tomcat文件包含漏洞(CVE20201938)复现

一、漏洞背景2020年02月20日,国家信息安全漏洞共享平台(CNVD)发布了关于Apache Tomcat文件包含漏洞(CVE-2020-1938/CNVD-2020-10487)的安全公告。Tomcat作为一款免费开源轻量级的web应用服务器,广泛应用于并发量不是很高的场合,Tomact默认端口…

【H.264/AVC视频编解码技术】第三章【熵编码】

熵编码的概念 熵:化学与热力学概念,用于度量能量退化的指标。熵越高,物体/系统做工能力越低。 信息学中的熵:用于度量消息的平均信息量,和信息的不确定性。越是随机的,前后不相关的信息,其熵越…

mock 抛出一个异常如何终止_教你使用Mock完成单元测试

更多精彩文章请关注本人微信公众号1、什么是Mock?mock是在测试过程中,对于一些不容易构造/获取的对象,创建一个mock对象来模拟对象的行为。比如说你需要调用B服务,可是B服务还没有开发完成,那么你就可以将调用B服务的那部分给Moc…

jconsole查看连接数_在JConsole和VisualVM中查看DiagnosticCommandMBean

jconsole查看连接数我已经将JConsole用作合适的通用JMX客户端已有很多年了。 该工具通常随Oracle JDK一起提供,并且易于使用。 在JMX交互方面,JConsole优于VisualVM的最大优点是JConsole带有内置的MBeans选项卡,而必须为VisualVM中的相同功能…

如何知道一个域名是否存在_域名检测API实现查看一个域名在微信中是否被封

针对微信转发分享链接过程中,您宝贵的域名被微信检测系统过滤拦截而无法正常浏览,例如该网页包含诱导分享内容,被多人投诉等,又例如提示该网页已停止访问等提示。怎么查询域名在微信中是否被封了呢?以上接口可检测到域名的四种异…

量化指标公式源码_通达信指标公式源码线上阴线指标公式

工作线:(EMA(C,14)),POINTDOT,LINETHICK3,COLOR22ACDE;生命线:(MA(C,25)),LINETHICK1,COLORMAGENTA;不惑线:(MA(C,40)),COLORCYAN,LINETHICK1;姊妹线:(EMA(C,56)),POINTDOT,COLOR33CCDD,LINETHICK1;A3:EMA((((SLOPE(C,21)) * 20) C),68);A4:EMA(C,10);A5:REF(C,2);A6:((SMA((M…

jsf和jsp_带有JSF,Servlet和CDI的DynamicReports和JasperReports

jsf和jsp在此示例中,我将展示如何将DynamicReport和JasperReports与Servlet和CDI集成。 工具: TIBCO Jaspersoft Studio-6.0.4。最终版 Eclipse Luna服务版本2(4.4.2)。 WildFly 8.x应用程序服务器。 这是Eclipse上项目层次结…

接口隔离原则_设计模式的三大分类及六大原则

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式分为三大类&…

Leetcode 24. 两两交换链表中的节点

原题链接 题解: 1.头部会改变创建虚拟头结点 2.前两个点定义为a,b,c 3.p指向b,a指向c,b指向a ; p指向本段最后一个结点。 class Solution { public:ListNode* swapPairs(ListNode* head) {auto dummy new ListNode(-1);dummy->next head;for (a…

python 获取文件名_真实需求 | Python+os+openpyxl 批量获取Excel的文件名和最大行数...

1. 提出需求 这已经不知道是粉丝问我的第几个办公自动化的问题了,并且这些问题都是大家在学习和工作中碰到过的真实问题场景。其实从下图中已经可以很明确的看出别人的需求了,我这里就不用在赘述了,下面直接上思路吧!2. 解题思路为…

apache ignite_从In Memory Data Grid,Apache Ignite快速入门

apache igniteIMDG或内存数据网格不是内存中关系数据库,NOSQL数据库或关系数据库。 它是另一种软件数据存储库。 数据模型分布在单个位置或多个位置的许多服务器上。 这种分布称为数据结构。 这种分布式模型被称为“无共享”架构。 IMDG具有以下特征: 所…

bvp解算器是什么_那些学习了编程的中学生,为什么会更可能成功?

来源 | 异步当你看到这个题目,或许会想,这不是搞笑吗?众所周知,高等数学是编程的基础和前提,而说起程序编写员,在普通人眼里就是数学学霸的代名词,人们往往会把它和那些数学天才的名字联系在一起…