有人说DevOps的出现让开发和运维不再相恋。这些DevOps拓扑中的大多数已经在别处描述过;尤其是CollabNet的Lawrenc:和Ops脱离becho 4-@ . com amp;;■单独的DevOps团队。单独的DevOps团队真正有意义的唯一时间是当团队是临时的,例如,持续时间少于12或18个月,并且其明确的目的是使Dev和Ops更紧密地集成并明确授权。这就是我所说的Type 5 DevOps拓扑。这是 "乐土 "DevOps的:开发团队和运营团队之间的顺畅协作。
本文由创新互联(www.cdcxhl.cn)小编为大家整理,本文主要介绍了Devops会杀死90的相关知识,希望对你有一定的参考价值和帮助,记得关注和收藏网址哦!
创新互联建站10多年企业网站制作服务;为您提供网站建设,网站制作,网页设计及高端网站定制服务,企业网站制作及推广,对成都办公空间设计等多个方面拥有丰富的网站运维经验的网站建设公司。
有人说DevOps的出现让开发和运维不再相恋。从那以后,他们就一直牵着手在一起,开心地编码,抓bug。
不过也有人说DevOps就是开发吃运维的意思。
是这样吗?不同的团队结构会如何影响DevOps的开发?
请看下文,你会有自己的答案。
引言在组织中发起任何DevOps相关活动的主要目的是改善对客户和企业的价值交付,而不是降低成本、增强自动化或推动配置管理的任何东西;这意味着不同的组织可能需要不同的团队结构来进行有效的开发和运维协作。
摘要哪种DevOps团队结构或拓扑适合组织取决于几个因素:
组织的产品组合:更少的产品使协作更容易,因为根据Conway s定律,这种情况下独立的小团队比较少。
技术领导力的范围、强度和有效性;开发人员和运营人员的目标是否一致。
一个组织是否有需要或能力将IT运维部门从 "硬件机架及配件和 "配置服务器和要符合实际价值流,软件研发是否;ampd组认真对待来自操作和维护的要求。
组织是否有能力或技能带头解决当前的运行和维护问题?
当然,这里描述的主题是不同的;和拓扑类型用作参考指南或启示,以帮助您评估哪些模型可能是合适的。事实上,这通常是将多种模式或一种模式的组合转换成另一种模式的最佳。
那么DevOps的团队结构是如何发展的呢?显然,对于每个组织来说,都不存在理想的结构或团队拓扑。但是,对于团队结构,参考几个不同的模型是有用的,其中一些模型更适合一些组织。通过探索这些团队结构的优缺点(或 "拓扑和)并且考虑到康威 根据美国法律,我们可以确定在我们自己的组织中对DevOps实践最有效的团队结构。
这些DevOps拓扑中的大多数已经在别处描述过;尤其是CollabNet的Lawrenc:和Ops脱离becho 4-@ . com amp;;■单独的DevOps团队。C:开发不需要运维。D:工具团队:系统管理员F:开发包括运维G:开发和DBA分离。
反A型:Dev和Ops分离。这是经典 "扔在墙上 "开发和运营分离。这意味着可以在早期提取需求点(DONE means "功能完整性和,但它可以 不用于生产),并且软件 s的可操作性受损,因为开发者没有运维相关的上下文信息,运维人员没有时间或动力在软件上线前参与开发者并解决问题。
我们都知道这种拓扑类型不好,但我觉得类似的拓扑还有很多结构不好的;至少我们知道反A型(开发和运维分离)是个问题。
反B型:个人开发团队个人开发团队(反B型)通常来自经理或高管,决定他们 "需要一点这个DevOps的东西 "开始了一场 "DevOps团队和(可能有人打了 "DevOps ").DevOps团队的成员很快形成了另一个小组,这使得Dev和Ops比以前更加分离,因为他们需要捍卫自己的角色、技能和工具集,并防止自己被 "无知的开发者 "和 "恐龙般的运营与管理。
单独的DevOps团队真正有意义的唯一时间是当团队是临时的,例如,持续时间少于12或18个月,并且其明确的目的是使Dev和Ops更紧密地集成并明确授权。当这段时间过去了,这个团队就是多余的。这就是我所说的Type 5 DevOps拓扑。
反C型:开发不需要运维。这种拓扑结构是开发人员和开发经理之间天真和傲慢的结合,尤其是在新项目或系统的开始。让 s说现在老年退休金计划已经过时了我们现在有云了,对吧? "),开发者大大低估了运维技能和活动的复杂性和重要性,认为不需要运维或者利用业余时间就可以做事情。
这种反C型的DevOps拓扑最终可能需要3型(Ops as IaaS)或4型(devo PS as a-Servic:开发和运行维护2:共享运维,3:运维即基础设施服务4: D:临时d: d: SR:容器驱动9:数据库能力
类型1:开发与运维协作。这是 "乐土 "DevOps的:开发团队和运营团队之间的顺畅协作。每个专业都是需要的地方,但也需要分享。可能有许多独立的开发团队,每个团队都在一个独立的或半独立的产品堆栈中工作。
我的意思是,这种type 1模型需要相当大的组织变革才能建立,并且在技术管理团队中具有很高的竞争力。开发者和运维部门一定要有明确的表述和清晰合理的共同目标( "高质量的交付,拥抱变化或者其他)。运维人员必须和Devs结对,掌握测试驱动的编码技巧和Git工具,开发必须认真对待运维特性的需求,找运维人员加入日志实现。从现状到这种状态,这些都需要相当大的文化变革。
类型适应性:技术驱动的组织。
有效电位:高
类型二:全面分担运维责任。当操作和维护人员被整合到产品开发团队中时,我们看到了类型2拓扑。Dev Ops和Dev Ops几乎没有分家,大家都很重视共同的目标;这是type 1(开发运维协同)的一种形式,但是有一些特殊的功能。
像网飞和脸书这样的组织已经有效地实现了基于Web的产品,并且已经实现了这种类型2的拓扑结构。但是,我认为从纯产品的角度来看可能不太适用,因为预算约束和上下文切换通常存在于多个产品线之间,这可能会迫使Dev和Ops进一步分离(例如,回到type 1模型)。这种拓扑也可以称为 "NoOps "因为没有明显或可见的运维团队(虽然网飞NoOps也可能是type 3 (Ops as IaaS))。
2类型适应性:组织只有一个简单的基于web的产品或服务。
有效电位:高
类型3:作为基础设施服务,运营和维护不是或可以 对于拥有非常传统的IT运营和维护部门的组织来说,(充分地)快速接受变化。适用于在公共云中运行所有应用程序的组织(Amazon EC2、Rackspace、Azure等。),它可能会把运维看成一个只需要提供应用部署和运营功能的弹性基础架构团队。所以内部运维团队直接相当于am。Azon EC2或基础设施即服务。
Dev中的一个团队(可能是一个虚拟团队)将作为操作和维护特性、指示器、监控、服务器配置等方面的专业知识的来源。,可能与IaaS团队沟通最多。然而,这个团队仍然是一个开发团队,遵循TDD、CI、迭发、人员指导和其他标准实践。
IaaS拓扑有一些潜在的有效性(与Ops人员的直接协作),以便使其更容易实现,并且可能比通过尝试稍后将尝试的类型1(开发和运营协作)更快地获得价值。
3类型适应性:拥有多种不同产品和服务的组织,传统的运维部门,或者其应用完全运行在公共云上。
有效潜力:中等
类型4: DevOps作为外部服务一些组织,尤其是较小的组织,可能没有资金、经验或人员来领导他们的软件操作和维护。开发团队可以联系Rackspace等服务提供商,帮助他们建立测试环境,实现基础设施和监控的自动化,并就软件开发周期中实现的各种操作和维护功能提供建议。可以称为devo PS-as-a-service的可能是小型组织或团队,他们理解自动化、监控和配置管理的目的和实现,然后随着业务的发展和员工的增加,他们可能会转向第三种类型(作为IaaS的运营)甚至第一种类型(开发和运维协作)的模式。
4类型适应性:运营经验较少的小团队或组织。
有效潜力:中等
第五型:有到期日的DevOps团队有到期日的DevOps团队(第五型)看起来像是反B型(DevOps团队筒仓),但意图和寿命完全不同。这个临时团队的任务是将开发和运营更紧密地结合起来。理想的目标是面对type 1(开发和运营协作)或type 2(完全共享的Ops Reponsibility)模式,最终让自己过时。小组的临时成员将 "翻译 "在Dev-talk和Ops-talk之间,引入疯狂的想法,例如为Ops团队召开常设会议和广告牌,并考虑 "肮脏 "详细信息,如负载平衡器、管理NIC和为开发团队卸载SSL。如果足够多的人开始看到开发和运营相结合的价值,那么临时团队就有真正的机会实现其目标;至关重要的是,部署和生产环境的长期分析诊断责任不应该提供给临时团队,否则可能成为D:·埃里克森
6类型适应性:D
1-@ .com商业智能分析师
描述:负责分析企业或组织使用的数据,使数据发挥最大效用。
要求:
信息系统、计算机科学、数据科学、商业管理、工程、经济或技术相关领域的学位。
优秀的Excel和SQL技能
作为数据分析师、业务分析师或数据报告撰写者的经验
有微软商务智能认证解决方案专家证书者优先。
平均需要4年左右的工作经验。
数据库设计和数据架构
数据挖掘和分析技术
数据安全和隐私
数据的可视化,包括Tableau和Qlik等工具
处理SQL的所有变体
精通ETL(提取、转换、加载)
了解Hadoop、r和SAS及其各自的用法。
以及云计算和数据存储技术,包括BigQuery和Redshift。
操作和维护工程师
描述:促进业务发展,改善客户体验。云服务可以用来快速构建应用程序。
要求:
单身汉 硕士学位或硕士学位。;计算机科学与技术,工程,软件工程或相关领域的学士学位。
在基于Linux的基础设施、Linux/Unix管理和AWS方面有丰富的经验。
在SQL,MS SQL,MySQL,NoSQL,Hadoop,Elasticsearch,Redis,Cassandra和/或Mongo数据库方面有丰富的经验。
了解Java,JavaScript,Perl,Ruby,Python,PHP,Groovy和Bash。
有项目管理和工作流工具的经验(如敏捷、吉拉、WorkFront、Scrum/看板/SAFe等)。).
开源技术和云服务方面的经验。
有自动化和配置木偶或厨师的经验。
至少2年DevOps工程师职位经验。
软件开发和基础设施开发经验
优秀的故障排除技能,能够在问题变成问题之前发现问题。
项目管理人
描述:设计和管理项目开发计划和项目进度。分析、设计、协调和监督软件系统的开发。
要求:
单身汉 计算机科学或任何相关/类似领域的本科或以上学历
至少5年的网页开发经验
具有概要分析、负载模拟、Linux优化和数据库优化的经验;以及Subversion、JavaScript、CSS和OO编程的经验。
软件开发工程师
描述:熟练的软件开发人员,他们通过编写代码来构建软件,并修改软件以修复错误,使其适应新的硬件,提高其性能或升级其界面。参与系统测试和验证程序,并就包括软件系统设计和维护在内的技术问题与客户或部门合作。
要求:
了解软件开发生命周期。
渴望在快节奏的环境中工作。
能够开发代码组件或完整应用程序的单元测试。
必须是全职开发人员,了解软件工程的概念。
有各种软件开发项目的经验。
深厚的编程语言知识。
Web开发人员
描述:负责为公司开发和设计网站。与开发团队一起创建、维护和更新网站。精通JavaScript、HTML、CSS,需要扎实的编程应用知识和经验。
要求:
单身汉 网络开发或相关领域的学士学位或相关经验。
扎实的编程知识和经验。
精通JavaScript,HTML和CSS。
精通MySQL
了解编程和技术术语。
能够开发想法和流程,并清晰地表达出来。
高度的独立判断。
解决复杂问题的能力。
安全工程师
描述:设计、实施和监控用于保护计算机系统、网络和信息的安全措施,以确保公司第一时间了解安全事件,提高公司的安全性。;美国的计算机系统。
要求:
有系统安全工程师或信息安全工程师的工作经验。
建立和维护安全系统的经验。
数据库和操作系统安全技术的详细知识。
安全系统的实践经验,包括防火墙、入侵检测系统、杀毒软件、认证系统、日志管理、内容过滤等。
网络安全和网络技术以及系统、安全和网络监控工具方面的经验
充分了解最新的安全原则、技术和协议。
熟悉Web相关技术(Web应用、Web服务、面向服务的架构)和网络/Web相关协议。
云工程师
描述:负责所有云计算需求,包括基础设施设计、维护、支持和规划以及两者之间的一切。并深入了解如何最好地让公司更安全、更高效。
要求:
五年 具有用Java、Python、C或Ruby等语言开发软件的经验。
SOA应用和基于云的服务(最好是AWS)方面的经验。
有使用OpenStack,Linux/UNIX,Rackspace,Docker和微软Azure的经验。
三到五年。;有云工程师或相关职位的经验。
了解Web服务,API,REST和RPC。
深入了解网络和互联网协议(包括TCP/IP、DNS、SMTP、HTTP和分布式网络)。
数据库经验,包括SQL和NoSQL的知识,以及相关的数据存储(如Postgres)。
在开源技术中,丰富的软件开发和系统工程经验。
优秀的沟通和组织能力,以及在繁忙的工作环境中专注于完成任务和实现目标的能力。
对云工程及其对大型商业实践的影响感兴趣。
数据科学家
描述:负责帮助公司发现隐藏在大量数据中的信息,并帮助其做出更明智的决策,以提供更好的产品。
要求
较强的解决问题的能力,特别重视产品开发。
使用统计计算机语言(R,Python,SLQ等)的经验。)来操作数据并从大型数据集获得洞察力。
使用和创建数据架构的经验。
了解各种机器学习技术(聚类、决策树学习、人工神经网络等。)以及它们在现实中的优缺点。
了解高级统计技术和概念(回归、分布属性、统计检验和正确使用等。)和应用体验。
使用多种语言对知识和经验进行编码:C,C,Java,JavaScript等。
统计数据挖掘技术方面的知识和经验:GLM/回归、随机森林、Boosting、树、文本挖掘、社会网络分析等。
有查询数据库和使用统计计算机语言的经验:R,Python,SLQ等。
使用网络服务的经验:红移,S3,火花,数字海洋等。
具有创建和使用高级机器学习算法和统计的经验:回归、模拟、场景分析、建模、聚类、决策树、神经网络等。
分布式数据/计算工具经验:Map/Reduc
总的来说,技术人员的软肋是过于注重技术而忽视沟通。做好工作是必须的,得到领导的认可同样重要。成为有能力和能说话的人的关键是提高自己。;沟通技巧。
A.和领导沟通好的前提是了解他们的意图、习惯、风格,和他们使用共同语言。领导用的语言一般、本质、有收获,很容易很快抓住事情的关键。所以要注意保持和同级领导的对话,这是平时需要不断积累的,不断提高自己看问题的水平。
B.用简洁的语言与领导有效沟通,在最短的时间内把我们的意思表达清楚。尤其是项目经理,必须主动配合领导。定期沟通,让领导了解项目的进展,遇到的问题,如果能同时对一些难点问题提出一些解决方案就更好了,让领导理解我们为工作付出的努力。
C.如果领导者不 如果你暂时不同意我们的观点或看法,那就意味着我们还没有。;t提供了充分的理由,或领导 他的观点受到他自己的个性、风格和价值观的影响,或者受到领导的影响。;的思想转变需要一个过程,或者也许领导看到了一些我们不知道的风险。;看不见,等等。这个时候,我们还是要按照领导 s的意见,因为领导是一个组织的首脑,他需要对组织负责,所以他应该有最终的决策权。在某些问题上,领导者会出现这种情况。
第二,调动下属的积极性
项目经理是承上启下的纽带。在管理下属时,他应该分清应该做什么和不应该做什么。;不做。当一个项目经理管理一个小规模的项目时,如果他能做到的话,可能对他的工作影响不大。;我说不出区别。但是,如果他想同时管理几个大型复杂的项目,他必须判断哪些应该做,哪些应该分配给下属。只有别人能做到的。;t做但必须由项目经理做的事情可以做,而大多数事情可以由下属做。领导者只需要培训、指导和监督。他们应该信任他们的下属。;能力,充分的信任和授权会激发他们完成工作的。
技术背景强的项目经理很容易陷入事必躬亲的误区,需要在思维上有大的转变。项目经理与其自己当技术骨干,不如努力把别人培养成技术骨干。
3.勇于承担责任,为他人的错误负责。
勇于承担责任的态度是自信的源泉。在项目实施过程中,不可避免地会遇到许多棘手的问题,包括技术、客户关系、合作伙伴管理,以及各种风险和。一个合格的项目经理应该能够勇敢站出来承担责任,积极解决问题,不推诿、不抱怨、不辩解,面对内外的质疑和不理解,坚持不卑不亢,用事实说话,想尽一切办法沟通协调。
项目经理作为整个项目的负责人,必然要对团队成员的工作负责,包括所犯的错误。在解决问题、承担责任的过程中,项目经理才能不断成熟。
新闻标题:azuredevops是什么(Devops会杀死90)
文章转载:http://www.shufengxianlan.com/qtweb/news13/306363.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联