欢迎光临
免费的PDF电子书下载网站

NetDevOps入门与实践 PDF下载

编辑推荐

1)网络运维自动化资深专家撰写,8位专家联袂推荐,网络工程师转型必备指南 
2)以场景与实践驱动,涵盖NetDevOps理念、常用工具、编程基础、网络运维常用Python模块与网络设备的数据处理等 

内容简介

网络运维自动化资深专家撰写,8位专家联袂推荐,网络工程师转型必备指南。以场景与实践驱动,涵盖NetDevOps理念、常用工具、编程基础、网络运维常用Python模块与网络设备的数据处理等,注重实用性与友好性,全书分为5篇,共计14章内容。
概念篇(第1~2章),阐述NetDevOps是什么、怎么做、技术框架,使读者能清晰了解NetDevOps能给他们带来什么,从何入手,如何开展NetDevOps工作。
基础篇(第3~6章),介绍如何构建NetDevOps的工作环境以及在这些环境中的常用工具,提高读者日常维护工作的效率与准确度。
提高篇(第7~9章),讲解Linux环境编程、Python脚本编程、常用数据结构,学习开发一些在运维或者网络规划中能够使用的关键技能。
实践篇(第10~12章),采用案例的形式,带领读者掌握网络自动化运维、网络设计与规划中应对高频场景的技术与技巧,主要是网络数据的批处理,提高处理效率。
案例篇(第13~14章),通过3个典型案例来巩固提高NetDevOps相关知识和技能,更具体、更实用。

作者简介

余欣  思科中国资深系统工程师,近20年网络规划设计与运维经验,曾先后就职于瞻博网络、*、京东金融以及博科等公司。有丰富的互联网一线公司的实践经验。擅长大规模运营商级网络、大型园区网以及IDC网络的规划设计与实施。拥有CCIE、JNCIE等认证。

NetDevOps入门与实践 PDF下载

目录

目录  Contents

本书赞誉

前言

第一篇 概念篇

第1章 NetDevOps理念与要义2

1.1 从SDN开始说起2

1.1.1 OpenFlow打开了新的一扇窗3

1.1.2 简单聊聊SDN控制器4

1.1.3 NFV5

1.1.4 云和SDN6

1.1.5 SD-WAN8

1.2 NetDevOps,你需要知道的事8

1.2.1 什么是NetDevOps8

1.2.2 NetDevOps适用环境9

1.2.3 为什么我们需要NetDevOps10

1.2.4 NetDevOps需要什么样的人10

1.3 小结11

第2章 如何开始NetDevOps12

2.1 文档内容与版本管理12

2.1.1 版本管理的重要性13

2.1.2 需要管理哪些文档 13

2.1.3 如何实施版本管理14

2.1.4 版本管理的工具16

2.2 编程语言的选择17

2.2.1 程序语言的选择17

2.2.2 数据描述语言的选择18

2.3 自动化工具的选择22

2.3.1 Ansible22

2.3.2 Puppet23

2.3.3 Chef23

2.3.4 SaltStack24

2.3.5 如何选择24

2.4 网络设备的编程接口25

2.4.1 网络设备接口的分类25

2.4.2 网络设备编程接口的特征27

2.5 小结29

第二篇 基础篇

第3章 认识命令行工具32

3.1 用screen实现终端的会话管理33

3.1.1 安装screen34

3.1.2 screen基本语法34

3.1.3 screen基本操作35

3.1.4 定制你的screen36

3.1.5 用screen连接串口36

3.1.6 管理screen的日志38

3.1.7 多人共享一个会话38

3.2 用Telnet和SSH管理设备39

3.2.1 Telnet39

3.2.2 SSH介绍40

3.2.3 SSH的基本使用40

3.2.4 利用SSH远程执行命令42

3.2.5 SSH客户端常用配置44

3.2.6 使用密钥登录设备45

3.2.7 使用scp进行文件传输47

3.2.8 利用SSH 端口隧道转发功能48

3.2.9 利用SSH做Socket代理50

3.3 小结50

第4章 Linux下的一些常用工具52

4.1 SNMP53

4.1.1 SNMP简介53

4.1.2 常见设备的SNMP配置54

4.1.3 SNMP工具56

4.2 网络可达性检测工具58

4.2.1 Nmap59

4.2.2 Nping62

4.2.3 iPerf63

4.2.4 Fping64

4.3 MTR65

4.4 其他工具66

4.4.1 watch66

4.4.2 Wget68

4.4.3 CURL68

4.5 小结69

第5章 处理网络设备输出的文本70

5.1 正则表达式基础70

5.1.1 正则表达式到底是什么71

5.1.2 单字符的匹配71

5.1.3 多字符的匹配与次数匹配75

5.1.4 在网络设备上的正则表达式77

5.2 使用grep进行搜索与获取信息78

5.2.1 什么是grep78

5.2.2 命令选项的解释78

5.2.3 匹配控制80

5.2.4 输出结果控制81

5.2.5 输入控制83

5.3 使用awk进行文本处理84

5.3.1 认识一下awk84

5.3.2 awk的执行方式与语法84

5.3.3 截取部分信息85

5.3.4 使用内置变量86

5.3.5 对特定内容进行统计分析86

5.3.6 多文件操作88

5.4 使用sed 进行文本编辑89

5.4.1 什么是sed89

5.4.2 sed语法简介89

5.4.3 删除文件中的指定信息90

5.4.4 在文件中进行查找替换91

5.4.5 在文件中插入内容92

5.5 文本编辑工具vi和vim92

5.5.1 vi和vim简介92

5.5.2 vim编辑器的模式93

5.6 小结97

第6章 常用基础服务搭建99

6.1 Docker基础100

6.1.1 什么是Docker100

6.1.2 Docker的基本概念101

6.1.3 Docker的运行环境104

6.1.4 启动Docker镜像105

6.1.5 构建Docker镜像106

6.2 TFTP服务器110

6.2.1 定制一个TFTP服务镜像111

6.2.2 启动一个TFTP服务器的容器112

6.2.3 服务的检查112

6.3 DNS 服务器113

6.3.1 构建DNS镜像113

6.3.2 启动和配置DNS114

6.3.3 用DNS记录设备的接口与IP的对应关系115

6.4 搭建DHCP服务器118

6.4.1 构建DHCP镜像119

6.4.2 启动和配置DHCP服务120

6.5 小结121

第三篇 提高篇

第7章 Linux编程基础124

7.1 Bash编程基础124

7.2 第一个Bash程序125

7.3 变量126

7.4 数组128

7.4.1 定义数组128

7.4.2 数组取值129

7.4.3 获取数组的长度129

7.4.4 截取数组的内容130

7.4.5 替换元素中的内容130

7.4.6 删除数组中的元素或者数组130

7.5 运算符131

7.5.1 算术运算符131

7.5.2 位运算符132

7.5.3 自增/自减运算136

7.6 测试136

7.6.1 测试语法的结构136

7.6.2 文件测试136

7.6.3 整数测试138

7.6.4 字符串测试138

7.6.5 逻辑关系139

7.7 判断结构140

7.7.1 if结构140

7.7.2 case结构141

7.8 循环结构141

7.8.1 for结构141

7.8.2 while结构143

7.8.3 until结构144

7.8.4 select结构144

7.9 函数145

7.10 用expect实现与设备的交互式操作147

7.10.1 expect简介147

7.10.2 用expect实现与设备的交互148

7.10.3 用expect实现批量备份设备配置150

7.11 网络设备上的Bash152

7.12 小结154

第8章 Python编程基础155

8.1 Python简介155

8.1.1 Python的版本差异155

8.1.2 主机与网络设备上的Python156

8.1.3 构建Python运行环境158

8.1.4 缩进在Python中的重要性161

8.2 基本数据类型161

8.2.1 数字162

8.2.2 列表163

8.2.3 元组166

8.2.4 字符串167

8.2.5 字典170

8.2.6 集合173

8.3 基本结构175

8.3.1 选择结构175

8.3.2 循环结构177

8.4 函数181

8.4.1 函数的定义181

8.4.2 函数的参数183

8.5 对象186

8.5.1 什么是对象186

8.5.2 对象的属性和方法186

8.5.3 创建对象187

8.5.4 对象的继承188

8.6 模块190

8.6.1 什么是模块190

8.6.2 如何使用模块190

8.7 小结191

第9章 常用数据类型与数据结构定义192

9.1 JSON192

9.1.1 JSON简介193

9.1.2 网络设备上的JSON194

9.1.3 JSON-RPC196

9.1.4 用Python处理JSON196

9.2 XML198

9.2.1 XML简介198

9.2.2 XML Schema200

9.2.3 NETCONF201

9.2.4 用Python处理XML202

9.3 YAML204

9.3.1 YAML简介205

9.3.2 YAML语法206

9.3.3 用Python处理YAML207

9.4 YANG208

9.4.1 YANG简介208

9.4.2 YANG语法211

9.4.3 OpenConfig214

9.4.4 Pyang工具214

9.5 小结216

第四篇 实践篇

第10章 网络设备的连接与登录218

10.1 命令行方式登录218

10.1.1 telnetlib219

10.1.2 paramiko221

10.1.3 netmiko224

10.1.4 pexpect227

10.2 通过NETCONF连接到网络设备231

10.2.1 安装ncclient231

10.2.2 获取配置信息231

10.2.3 获取接口信息233

10.3 REST235

10.3.1 测试REST接口236

10.3.2 安装requests模块237

10.3.3 使用HTTP get方法237

10.3.4 使用HTTP post方法238

10.4 小结239

第11章 命令行文本处理240

11.1 命令行文本输出240

11.1.1 关于TextFSM241

11.1.2 安装TextFSM241

11.1.3 TextFSM模板242

11.1.4 如何编写TextFSM模板243

11.1.5 在Python代码中使用TextFSM248

11.2 Cisco配置类型249

11.2.1 ciscoconfparse模块249

11.2.2 安装模块250

11.2.3 获取配置内容251

11.2.4 修改设备配置252

11.2.5 配置审计253

11.3 JUNOS配置类型254

11.3.1 层次化配置255

11.3.2 set命令行配置256

11.4 小结259

第12章 网络特有数据类型处理260

12.1 Jupyter260

12.1.1 安装Juypter260

12.1.2 启动Juypter261

12.1.3 使用Jupyter263

12.2 使用netaddr处理网络地址264

12.2.1 安装netaddr模块264

12.2.2 IP地址的基本属性264

12.2.3 处理IP地址的基本方法265

12.2.4 IP地址的加减法266

12.2.5 地址的聚合267

12.2.6 IPv6地址268

12.2.7 使用netaddr处理MAC地址268

12.3 使用ipaddr处理网络地址269

12.4 网络拓扑的处理271

12.4.1 描述一个网络拓扑271

12.4.2 最短路径的计算273

12.4.3 可用路径的计算276

12.5 小结278

第五篇 案例篇

第13章 网络设备的配置管理280

13.1 环境的准备280

13.1.1 测试拓扑说明280

13.1.2 Linux服务器的准备281

13.2 网络设备的配置获取282

13.2.1 登录网络设备282

13.2.2 处理多厂家问题287

13.2.3 处理并行问题290

13.3 网络设备的配置版本管理295

13.3.1 用git创建一个本地设备配置管理仓库296

13.3.2 保存设备配置文件到本地仓库296

13.3.3 使用git检查版本信息297

13.4 小结299

第14章 网络拓扑的处理与应用300

14.1 环境的准备300

14.1.1 测试拓扑说明300

14.1.2 Linux服务器的准备300

14.2 网络拓扑的获取与分析304

14.2.1 物理拓扑的获取304

14.2.2 ISIS协议拓扑的获取311

14.2.3 网络拓扑的路径分析313

14.3 网络流量工程应用314

14.3.1 基本信息315

14.3.2 路径计算316

14.3.3 BGP服务318

14.3.4 调用BGP HTTP API324

14.3.5 结果测试324

14.4 小结325

NetDevOps入门与实践 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:NetDevOps入门与实践