NetDevOps入门与实践
内容节选
关于为什么需要NetDevOps,我们总结了如下5个理由:
1、Networking + DevOps = NetDevOps
网络和DevOps之间的需求是相互的,但可能双方都不承认这一点。网络最关心的是正常运行时间,而DevOps的最终目标是持续交付。因此二者的相辅相成变得至关重要,DevOps需要网络来保障更新的可交付性。
采用NetDevOps可以促进网络应用与DevOps同样的规则和逻辑,实现可复制和自动化的任务,当然这里不是为自动化而自动化,而是使之前一个服务器上的服务进程更高效地部署到多个服务器上。
2、云服务助力远程部署
随着云计算采用的增加,远程部署更新和配置成为了必要的需求。云计算为实现NetDevOps提供了必要的环境,提供了允许代码部署的硬件基础架构。
在云环境(如AWS)中,实现NetDevOps的基础设施条件已经具备。例如,AWS CloudFormation为IaC提供了必要的基础设施。
3、基础设施即代码(Infrastructure as Code,IaC)
IaC是实现DevOps的基础,而这又是NetDevOps的基础:采用网络硬件并将代码应用到环境中,这些代码能够实现自动化配置环境,而目前这些工作仍需要手动更新。
自动化是DevOps和NetDevOps共同的核心原则之一。自动化实现了网络正在运行时间的可预测,能够更好地协助DevOps实现持续交付的环境。
4、软件定义网络
又到了常讲的软件定义网络(SDN),在这里我们可以将SDN看作是IaC的一个分支,它是云架构的企业级网络版本,NetDevOps通过使用白盒交换机在这种环境中工作。
部署白盒交换机并安装Linux将创建出一个SDN环境,这也是NetDevOps发展必要的基础设施。
5、当前堆栈提供的工具
当以上几点都实现之后,NetDevOps环境能够与现有的Ops堆栈进行集成。Ansible、Red Hat、Puppet、Chef等公司目前已经提供了创建NetDevOps环境所需的工具,而企业的团队需要做的就是实践。
内容介绍
网络运维自动化资深专家撰写,8位专家联袂推荐,网络工程师转型必备指南。以场景与实践驱动,涵盖NetDevOps理念、常用工具、编程基础、网络运维常用Python模块与网络设备的数据处理等,注重实用性与友好性,全书分为5篇,共计14章内容。
概念篇(第1~2章),阐述NetDevOps是什么、怎么做、技术框架,使读者能清晰了解NetDevOps能给他们带来什么,从何入手,如何开展NetDevOps工作。
基础篇(第3~6章),介绍如何构建NetDevOps的工作环境以及在这些环境中的常用工具,提高读者日常维护工作的效率与准确度。
提高篇(第7~9章),讲解Linux环境编程、Python脚本编程、常用数据结构,学习开发一些在运维或者网络规划中能够使用的关键技能。
实践篇(第10~12章),采用案例的形式,带领读者掌握网络自动化运维、网络设计与规划中应对高频场景的技术与技巧,主要是网络数据的批处理,提高处理效率。
案例篇(第13~14章),通过3个典型案例来巩固提高NetDevOps相关知识和技能,更具体、更实用。
目录
- 本书赞誉
- 前言
- 第一篇 概念篇
- 第1章 NetDevOps理念与要义2
- 第2章 如何开始NetDevOps12
- 第二篇 基础篇
- 第3章 认识命令行工具32
- 第4章 Linux下的一些常用工具52
- 第5章 处理网络设备输出的文本70
- 第6章 常用基础服务搭建99
- 第三篇 提高篇
- 第7章 Linux编程基础124
- 第8章 Python编程基础155
- 第9章 常用数据类型与数据结构定义192
- 第四篇 实践篇
- 第10章 网络设备的连接与登录218
- 第11章 命令行文本处理240
- 第12章 网络特有数据类型处理260
- 第五篇 案例篇
- 第13章 网络设备的配置管理280
- 第14章 网络拓扑的处理与应用300