当前位置:首页 > 工业技术
NetDevOps入门与实践
NetDevOps入门与实践

NetDevOps入门与实践PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:余欣著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2018
  • ISBN:9787111599098
  • 页数:328 页
图书介绍:全书分为4篇。第一篇阐述NetDevOps的概念与技术框架。使读者能清晰的认识到NetDevOps能给他们带来什么,开展NetDevOps工作应该从何入手。第二篇为NetDevOps的入门知识。通过介绍一些常用的Linux软件工具,提高读者在日常维护的工作效率与准确度。第三篇通过对Bash和Python编程的介绍,引导读者开发一些在运维或者网络规划中能够使用的工具集。第四篇会采用实战的形式,带领读者完成一些在网络自动化运维以及网络设计与规划中遇到的高频场景和应用案例。
《NetDevOps入门与实践》目录
标签:入门 实践

第一篇 概念篇 2

第1章 NetDevOps理念与要义 2

1.1从SDN开始说起 2

1.1.1OpenFlow打开了新的一扇窗 3

1.1.2简单聊聊SDN控制器 4

1.1.3NFV 5

1.1.4云和SDN 6

1.1.5SD-WAN 8

1.2NetDevOps,你需要知道的事 8

1.2.1什么是NetDevOps 8

1.2.2NetDevOps适用环境 9

1.2.3为什么我们需要NetDevOps 10

1.2.4NetDevOps需要什么样的人 10

1.3小结 11

第2章 如何开始NetDevOps 12

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.1Ansible 22

2.3.2Puppet 23

2.3.3Chef 23

2.3.4SaltStack 24

2.3.5如何选择 24

2.4网络设备的编程接口 25

2.4.1网络设备接口的分类 25

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

2.5小结 29

第二篇 基础篇 32

第3章 认识命令行工具 32

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

3.1.1安装screen 34

3.1.2screen基本语法 34

3.1.3screen基本操作 35

3.1.4定制你的screen 36

3.1.5用screen连接串口 36

3.1.6管理screen的日志 38

3.1.7多人共享一个会话 38

3.2用Telnet和SSH管理设备 39

3.2.1Telnet 39

3.2.2SSH介绍 40

3.2.3SSH的基本使用 40

3.2.4利用SSH远程执行命令 42

3.2.5SSH客户端常用配置 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.1SNMP 53

4.1.1SNMP简介 53

4.1.2常见设备的SNMP配置 54

4.1.3SNMP工具 56

4.2网络可达性检测工具 58

4.2.1Nmap 59

4.2.2Nping 62

4.2.3iPerf 63

4.2.4Fping 64

4.3MTR 65

4.4其他工具 66

4.4.1watch 66

4.4.2Wget 68

4.4.3CURL 68

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什么是grep 78

5.2.2命令选项的解释 78

5.2.3匹配控制 80

5.2.4输出结果控制 81

5.2.5输入控制 83

5.3使用awk进行文本处理 84

5.3.1认识一下awk 84

5.3.2awk的执行方式与语法 84

5.3.3截取部分信息 85

5.3.4使用内置变量 86

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

5.3.6多文件操作 88

5.4使用sed进行文本编辑 89

5.4.1什么是sed 89

5.4.2sed语法简介 89

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

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

5.4.5在文件中插入内容 92

5.5文本编辑工具vi和vim 92

5.5.1vi和vim简介 92

5.5.2vim编辑器的模式 93

5.6小结 97

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

6.1Docker基础 100

6.1.1什么是Docker 100

6.1.2Docker的基本概念 101

6.1.3Docker的运行环境 104

6.1.4启动Docker镜像 105

6.1.5构建Docker镜像 106

6.2TFTP服务器 110

6.2.1定制一个TFTP服务镜像 111

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

6.2.3服务的检查 112

6.3DNS服务器 113

6.3.1构建DNS镜像 113

6.3.2启动和配置DNS 114

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

6.4搭建DHCP服务器 118

6.4.1构建DHCP镜像 119

6.4.2启动和配置DHCP服务 120

6.5小结 121

第三篇 提高篇 124

第7章 Linux编程基础 124

7.1Bash编程基础 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.1if结构 140

7.7.2case结构 141

7.8循环结构 141

7.8.1for结构 141

7.8.2while结构 143

7.8.3until结构 144

7.8.4select结构 144

7.9函数 145

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

7.10.1expect简介 147

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

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

7.11网络设备上的Bash 152

7.12小结 154

第8章 Python编程基础 155

8.1Python简介 155

8.1.1Python的版本差异 155

8.1.2主机与网络设备上的Python 156

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.1JSON 192

9.1.1JSON简介 193

9.1.2网络设备上的JSON 194

9.1.3JSON-RPC 196

9.1.4用Python处理JSON 196

9.2XML 198

9.2.1XML简介 198

9.2.2XML Schema 200

9.2.3NETCONF 201

9.2.4用Python处理XML 202

9.3YAML 204

9.3.1YAML简介 205

9.3.2YAML语法 206

9.3.3用Python处理YAML 207

9.4YANG 208

9.4.1YANG简介 208

9.4.2YANG语法 211

9.4.3OpenConfig 214

9.4.4Pyang工具 214

9.5小结 216

第四篇 实践篇 218

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

10.1命令行方式登录 218

10.1.1telnetlib 219

10.1.2paramiko 221

10.1.3netmiko 224

10.1.4pexpect 227

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

10.2.1安装ncclient 231

10.2.2获取配置信息 231

10.2.3获取接口信息 233

10.3REST 235

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关于TextFSM 241

11.1.2安装TextFSM 241

11.1.3TextFSM模板 242

11.1.4如何编写TextFSM模板 243

11.1.5在Python代码中使用TextFSM 248

11.2Cisco配置类型 249

11.2.1ciscoconfparse模块 249

11.2.2安装模块 250

11.2.3获取配置内容 251

11.2.4修改设备配置 252

11.2.5配置审计 253

11.3JUNOS配置类型 254

11.3.1层次化配置 255

11.3.2set命令行配置 256

11.4小结 259

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

12.1Jupyter 260

12.1.1安装Juypter 260

12.1.2启动Juypter 261

12.1.3使用Jupyter 263

12.2使用netaddr处理网络地址 264

12.2.1安装netaddr模块 264

12.2.2IP地址的基本属性 264

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

12.2.4IP地址的加减法 266

12.2.5地址的聚合 267

12.2.6IPv6地址 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

第五篇 案例篇 280

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

13.1环境的准备 280

13.1.1测试拓扑说明 280

13.1.2Linux服务器的准备 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.2Linux服务器的准备 300

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

14.2.1物理拓扑的获取 304

14.2.2ISIS协议拓扑的获取 311

14.2.3网络拓扑的路径分析 313

14.3网络流量工程应用 314

14.3.1基本信息 315

14.3.2路径计算 316

14.3.3BGP服务 318

14.3.4调用BGP HTTP API 324

14.3.5结果测试 324

14.4小结 325

返回顶部