大多数IT主管可能都熟悉DevOps和DevSecOps的概念。但最近,一种与网络专业人士息息相关的新模型引起了相当大的轰动,它就是NetDevOps。
与其他新兴技术一样,NetDevOps的定义因提供者而异。但在基本层面上,该术语指的是DevOps原则在计算机网络中的应用。
什么是NetDevOps?
根据Gartner的定义,NetDevOps需要将持续集成/持续部署(CI/CD)的DevOps概念应用于网络活动。用于描述该模型的其他术语包括NetOps
2.0、网络即代码(network as code)以及GitOps网络。
研究公司GigaOm认为,NetDevOps涉及网络基础设施即代码(infrastructure as
code,IaC)的抽象、编码和实施,使用编程的自动化工作流来消除配置漂移(configuration drift),从而在网络中嵌入质量和弹性。
Gartner网络研究副总裁Andrew Lerner表示,为了利用NetDevOps,组织需要有一个自动化的管道,包括分段、预/后验证(pre/post
validation)和网络活动(例如配置)的测试。
GigaOm对此表示赞同,并补充道NetDevOps管道可以将来自不同开发环境的代码交付到生产环境中,并在此过程中触发全面的验证和合规性测试。此外,NetDevOps还包括持续监控、测量和响应,在检测到配置漂移状态时自动触发补救警报。
NetDevOps有什么好处?
顾名思义,鉴于其词根为DevOps,所以NetDevOps也就包含许多与DevOps相同的目标。独立网络自动化架构师Joel King介绍称,
“DevOps可以描述为四个关键原则:整体系统思维方法(查看整个系统,而不仅仅是属于您的部分)、没有组织孤岛、快速反馈和自动化以减少工作量。”
King补充道,网络运营落后于支持组织IT基础设施的其他功能领域,尤其是在通过网络可编程性实现自动化方面。要部署支持企业的新应用程序或服务,计算、存储和网络组件都需要进行配置更改或实施新硬件。通常来说,这些更改是由工程师在终端窗口上手动键入完成的,并且可能需要通过正式的更改控制流程进行审查,并在非工作时间段内实施。
这一过程可能需要耗费数周或数月的时间。自动化基础设施更改作为一项基础组件,能够减少部署满足业务需求的新应用程序或服务所需的时间。
Lerner补充道,NetDevOps还有助于提高敏捷性,并且对实施基础架构即代码(IaC)的组织特别有价值,因为网络通常是一个瓶颈。NetDevOps实践能够推动清晰的工作流程和建档,有助于审计和治理以及故障排除。
NetDevOps的另一个好处是它可以在IT内的各个部门间实现更大的协作,就像DevOps对开发和运营所做的那样。
软件公司GS Lab的首席架构师Sameer Mahajan解释称,
“NetDevOps在网络开发和运营团队之间架起了一座桥梁。这两个团队有不同的职责:开发团队负责代码开发和测试;而运营团队负责环境、IT架构、部署、可用性等。”
传统上来说,在将开发中的代码投入生产时会涉及多次交接,这可能会引发软件质量问题、延迟以及团队成员挫败感。NetDevOps通过自动化该过程并使其无缝化来解决这些问题。它提高了部署网络更改的效率并减少了人为失误。
Mahajan指出,NetDevOps至少有七个主要用例,包括设备配置、数据收集和遥测、合规性检查、迁移、报告、故障排除和配置管理。
NetDevOps部署的障碍是什么?
迄今为止,NetDevOps尚未得到广泛实施。Gartner评估称,目前只有2%到10%的企业正在积极使用NetDevOps实践。
组织在部署NetDevOps时需要解决许多障碍:
风险规避:数据中心中断的影响是巨大的,因此,网络团队一般都属于风险规避型,并且对自动化数据中心网络缺乏信心。NetDevOps实践需要一个准确的最新网络信息库——库存、位置等——这在许多企业中并不常见。
技术债务:从单一供应商和配置的角度来看,异构环境形式的技术债务是另一个障碍。当然,与网络活动相关的不一致或未记录的工作流程也限制了NetDevOps技术采用。
技能短缺:Lerner建议通过将招聘和培训重点转移到特定软件能力上来投资人员,包括Ansible和Python、社区论坛以及与相近的DevOps人员交叉协作的网络团队。
文档:NetDevOps实践需要一个准确的最新网络信息存储库,而这在许多企业中并不常见。
文化:对于许多公司来说,采用这些原则代表着一种重大的文化转变。具有低信任度、自上而下管理文化,并实施严格的变更控制的组织可能会在实施NetDevOps时遇到问题。
如何开始NetDevOps实践?
实施NetDevOps完全是关于流程、组织和培训,而非技术。因此,对员工进行技能评估是必要的第一步。许多网络工程师没有时间、兴趣或能力成为网络程序员。然而,一些网络工程团队可能会发现学习编程技能是一项新挑战,提供学习机会将使团队受益。
创建一个主题专家(SME)可以与程序员协作的团队结构是一种很好的方法。此外,组织还可以创建卓越中心来展示由中小企业和程序员组成的集成团队的工作方式,然后将这种团队方法应用和复制到IT运营的其他领域。
除了投资培训之外,准备涉足NetDevOps的组织还应该为员工提供足够的时间来吸收新的流程和工具。组织可以与敏捷和DevOps团队交叉训练网络团队。网络团队需要在版本控制系统中捕获和存储设备配置及运行网络状态(例如,活动路由表)。
此外,为设备类型创建标准模板、应用版本控制、跟踪配置漂移,以及尽可能使用自动化也是一种很好的做法,包括自动执行更改前和更改后的验证;自动化前后(pre-
post)环境测试,例如延迟/可用性检查;以及自动化测试和配置回滚。
归根结底,需要创建一种支持NetDevOps的新文化。组织应该转变思维模式,以自动化方式进行小而频繁的更改。要知道,微小的更改能够降低风险;频繁的更改有助于使环境保持最新状态;自动化模式减少了人工干预,也降低了出错的可能性。
如何在通往NetDevOps的道路上保持成功?
启动NetDevOps计划是一回事,但要长期保持成功又是另一回事,这需要持续不断地努力。
King表示,维持NetDevOps战略需要管理层支持人才培养并且愿意投资时间、培训和组织结构,以助力NetDevOps计划成功。而这些都是长期投资目标。
让团队能够取得一些小的、早期的成功很重要。同时,获取围绕这些成功的指标也至关重要,包括成本节约、员工满意度提高,以及更快地为利益相关者提供价值并让管理层看到效果。
此外,投资于团队的持续学习和实验以扩展他们的能力也很重要。组织需要为员工提供改进工作或创新的时间,并调整现有流程以纳入这些创新。
组织如何衡量NetDevOps的成功?
Mahajan称,
“衡量NetDevOps成功的标准是网络正常运行时间更长、错误更少,以及在最新版本的更改上维护环境。”
Lerner建议称,实践NetDevOps时,组织不必孤军奋战。虽然它更像是一个过程而非商业供应商的产品,但有些供应商确实可以帮助公司在其组织内启用NetDevOps。其中包括Network
to Code、Itential、HashiCorp、Arista等,它们提供基础设施即代码(IaC)和其他网络自动化功能。
GigaOm公司预计,未来几个月该市场将迅速发展。新的参与者将出现精益、创新的解决方案,而成熟的网络供应商将通过收购解决方案供应商和扩大关键合作伙伴关系进行竞争。
随着不同的NetDevOps供应商和可用选项以及环境的演变,选择最佳NetDevOps工具将取决于组织的用例、现有软件基础架构、架构选择和内部能力。
对于希望实现自动化并加速向数字化运营转变的组织来说,许多人可能会将NetDevOps作为提高网络性能和可靠性的重点选项。
原文链接:<https://www.networkworld.com/article/3665915/what-is-netdevops-and-
how-can-it-help-it-meet-business-goals.html>
workworld.com/article/3665915/what-is-netdevops-and-
how-can-it-help-it-meet-business-goals.html>
接下来我将给各位同学划分一张学习计划表!
学习计划
那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:
阶段一:初级网络安全工程师
接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。
综合薪资区间6k~15k
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?
阶段二:中级or高级网络安全工程师(看自己能力)
综合薪资区间15k~30k
7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完
用Python编写漏洞的exp,然后写一个简单的网络爬虫
PHP基本语法学习并书写一个简单的博客系统
熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)
了解Bootstrap的布局或者CSS。
阶段三:顶级网络安全工程师
如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!
学习资料分享
当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。
![](https://i-blog.csdnimg.cn/blog_migrate/08c3b846393bdaea6409358cbf194580.jpeg)