展开全部

主编推荐语

零基础入门NetDevOps,让网络运维更简单、更高效。

内容简介

本书从网络工程师的视角出发,详细讲解了Python在网络运维自动化中的应用,其中涉及Python网络运维自动化的相关技术、工具以及实践。

本书共10章,先对Python网络运维自动化进行了全面的概述,然后讲解了网络工程师所需的Python基础、数据格式与数据建模语言的相关知识。接着,本书介绍了网络配置的结构化数据提取、网络配置的模块化管理、Netmiko详解与实践、模型驱动的新网络管理方式及实践、网络管理工具集、网络自动化框架Nornir和开源网管工具NetBox。

本书依托于作者10余年的网络运维经验,内容循序渐进,从脚本编写、框架应用到系统平台整合,逐步提升,结合丰富的代码实例,全面介绍了Python网络运维自动化的工具体系以及其在不同场景下的应用实现。

目录

  • 版权信息
  • 内容提要
  • 推荐语
  • 洗尽铅华 回归初心
  • 前言
  • 资源与支持
  • 第1章 Python网络运维自动化概述
  • 1.1 Python网络运维自动化应对新挑战
  • 1.1.1 云计算时代网络行业的变迁
  • 1.1.2 云计算时代网络运维的挑战
  • 1.1.3 Python网络运维自动化的兴起
  • 1.2 Python网络运维自动化的工具体系
  • 1.2.1 数据工具集
  • 1.2.2 网络管理工具集
  • 1.2.3 开源框架与系统
  • 1.3 Python网络运维自动化实践之路
  • 1.3.1 循序渐进地学习与实践
  • 1.3.2 有意识地培养数据意识
  • 1.3.3 以场景为导向的实践落地
  • 1.4 小结
  • 第2章 网络工程师的Python基础
  • 2.1 开发环境搭建
  • 2.1.1 Python版本选择与安装
  • 2.1.2 PyCharm的安装与设置
  • 2.2 变量、缩进与注释
  • 2.2.1 变量的定义与赋值
  • 2.2.2 Python的缩进控制
  • 2.2.3 Python的两种注释方法
  • 2.3 基础数据类型
  • 2.3.1 数字
  • 2.3.2 字符串
  • 2.3.3 列表
  • 2.3.4 字典
  • 2.3.5 布尔
  • 2.3.6 元组
  • 2.3.7 集合
  • 2.3.8 数据类型的转换
  • 2.4 判断与循环
  • 2.4.1 if判断
  • 2.4.2 for循环
  • 2.4.3 while循环
  • 2.5 函数及其调用
  • 2.5.1 函数的定义
  • 2.5.2 函数的调用
  • 2.6 Python进阶知识
  • 2.6.1 类与面向对象
  • 2.6.2 文本文件的读写操作
  • 2.6.3 模块与包
  • 2.6.4 pip及第三方包的安装
  • 2.7 小结
  • 第3章 数据格式与数据建模语言
  • 3.1 数据格式简介
  • 3.2 JSON规范及其使用
  • 3.2.1 JSON的规范
  • 3.2.2 json模块与JSON数据转换
  • 3.3 YAML规范及其使用
  • 3.3.1 对象
  • 3.3.2 数组
  • 3.3.3 纯量
  • 3.3.4 多文档的YAML数据
  • 3.3.5 PyYAML包与YAML数据转换
  • 3.4 XML规范及其使用
  • 3.4.1 元素、标签与属性
  • 3.4.2 列表数据的定义
  • 3.4.3 命名空间
  • 3.4.4 xmltodict包与XML数据转换
  • 3.5 表格数据与pandas
  • 3.5.1 pandas简介与安装
  • 3.5.2 pandas从表格读取数据
  • 3.5.3 pandas写入数据到表格
  • 3.6 数据建模语言YANG
  • 3.6.1 YANG模块的结构
  • 3.6.2 YANG的基础语法规范
  • 3.6.3 pyang包图形化解析YANG模型
  • 3.7 小结
  • 第4章 网络配置的结构化数据提取
  • 4.1 正则表达式的基础知识
  • 4.1.1 了解正则表达式
  • 4.1.2 正则表达式的常用元字符
  • 4.2 re模块及其使用
  • 4.2.1 search函数详解
  • 4.2.2 findall函数详解
  • 4.2.3 实战1:search函数提取单条数据
  • 4.2.4 实战2:findall函数提取条形表数据
  • 4.2.5 实战3:findall与search函数结合提取块状表数据
  • 4.3 配置解析引擎TextFSM
  • 4.3.1 TextFSM简介
  • 4.3.2 值语法详解
  • 4.3.3 状态语法详解
  • 4.3.4 规则和动作语法详解
  • 4.4 TextFSM模板实战详解
  • 4.4.1 单条数据的提取
  • 4.4.2 条形表数据的提取
  • 4.4.3 在尾部进行分割的块状表数据提取
  • 4.4.4 在头部进行分割的块状表数据提取
  • 4.4.5 列表类型的数据提取
  • 4.4.6 缺失字段的向后填充
  • 4.4.7 TextFSM模板库ntc-templates
  • 4.5 小结
  • 第5章 网络配置的模板化管理
  • 5.1 模板引擎Jinja2简介
  • 5.1.1 模板引擎的基本原理
  • 5.1.2 Jinja2简介
  • 5.2 Jinja2的基础语法及其使用
  • 5.2.1 Jinja2的基础语法
  • 5.2.2 文件系统管理配置模板
  • 5.2.3 过滤器的定义与使用
  • 5.2.4 原子模板的嵌套组合
  • 5.3 结构化数据驱动的Jinja2实战详解
  • 5.3.1 利用表格承载数据并批量生成网络配置文件
  • 5.3.2 利用YAML文件承载数据并批量生成网络配置文件
  • 5.4 小结
  • 第6章 Netmiko详解与实战
  • 6.1 Netmiko快速上手
  • 6.1.1 Netmiko简介及其使用
  • 6.1.2 Netmiko支持的网络设备及device_type值的选择
  • 6.2 Netmiko的核心API
  • 6.2.1 ConnectHandler函数详解
  • 6.2.2 send_command详解
  • 6.2.3 send_command_timing详解
  • 6.2.4 send_config_set和send_config_from_file详解
  • 6.3 基于Netmiko的网络运维自动化实战
  • 6.3.1 网络设备的批量配置备份
  • 6.3.2 网络设备的批量信息巡检
  • 6.3.3 网络设备的批量配置推送
  • 6.4 小结
  • 第7章 模型驱动的新网络管理方式及实践
  • 7.1 新一代网络管理协议的诞生
  • 7.1.1 CLI与SNMP的局限性
  • 7.1.2 NETCONF、RESTCONF协议与YANG建模语言的诞生
  • 7.2 NETCONF协议入门
  • 7.2.1 NETCONF协议的框架
  • 7.2.2 NETCONF协议的交互流程
  • 7.2.3 NETCONF协议的配置数据及常见配置操作
  • 7.3 基于ncclient的NETCONF配置操作
  • 7.3.1 ncclient简介
  • 7.3.2 get-config操作
  • 7.3.3 edit-config操作
  • 7.3.4 get操作
  • 7.3.5 解锁更多的ncclient操作方法
  • 7.4 RESTCONF协议入门
  • 7.4.1 了解REST
  • 7.4.2 Postman简介及其安装
  • 7.4.3 RESTCONF协议的认证与资源导览
  • 7.4.4 基于RESTCONF实现模型数据的查询和更新
  • 7.5 小结
  • 第8章 网络管理工具集
  • 8.1 IP地址管理工具包netaddr
  • 8.1.1 netaddr简介及基本使用
  • 8.1.2 网络展开及包含关系计算
  • 8.1.3 网络的划分与合并
  • 8.2 HTTP请求工具包Requests
  • 8.2.1 Requests简介
  • 8.2.2 发送GET请求
  • 8.2.3 发送POST请求
  • 8.2.4 发送PUT、PATCH、DELETE请求
  • 8.2.5 HTTP请求的认证及自定义认证类
  • 8.3 网络抽象工具包NAPALM
  • 8.3.1 NAPALM简介
  • 8.3.2 网络设备结构化配置数据的获取
  • 8.4 小结
  • 第9章 网络自动化框架Nornir
  • 9.1 Nornir简介
  • 9.1.1 Nornir介绍及安装
  • 9.1.2 快速上手Nornir
  • 9.2 Nornir runbook的编写
  • 9.2.1 网络设备清单
  • 9.2.2 配置文件
  • 9.2.3 Nornir对象的创建
  • 9.2.4 使用过滤器筛选网络设备
  • 9.2.5 task函数的定义及其调用
  • 9.2.6 runbook的执行结果
  • 9.3 Nornir的常用插件包
  • 9.3.1 nornir_netmiko简介及其使用
  • 9.3.2 nornir_table_inventory简介及其使用
  • 9.3.3 nornir_utils简介及其使用
  • 9.4 基于Nornir的网络运维自动化实战
  • 9.4.1 网络设备的批量配置备份
  • 9.4.2 网络设备的批量信息巡检
  • 9.4.3 网络设备的批量配置推送
  • 9.5 小结
  • 第10章 开源网管工具NetBox
  • 10.1 NetBox简介及安装
  • 10.1.1 NetBox的特点
  • 10.1.2 基于Docker安装NetBox
  • 10.2 NetBox的核心功能
  • 10.2.1 数据中心基础设施管理
  • 10.2.2 IP地址管理
  • 10.3 NetBox的功能扩展
  • 10.3.1 自定义字段custom_fields
  • 10.3.2 nornir_netbox插件对接NetBox系统
  • 10.3.3 开放的RESTful API体系
  • 10.4 小结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。