注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计吃透Ansible:核心源码剖析与项目实战

吃透Ansible:核心源码剖析与项目实战

吃透Ansible:核心源码剖析与项目实战

定 价:¥149.00

作 者: 沈聪 著
出版社: 机械工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787111685807 出版时间: 2021-07-01 包装: 平装
开本: 16开 页数: 479 字数:  

内容简介

  《吃透Ansible:核心源码剖析与项目实战》从Ansible的模块运行及Playbook的解析与执行两个方面全面、深入地剖析三个版本的Ansible源码,此外还会优化和改造用于部署Ceph集群的ceph-ansible项目。《吃透Ansible:核心源码剖析与项目实战》共6章:第1章介绍Ansible 1.1的源码,重点剖析Ansiblel.1的底层通信机制和模块运行原理;第2章在第1章的基础上对Ansible 1.9.6的源码进行解析,重点比较Ansible 1.9.6与Ansible 1.1的源码有何不同,以及Ansible 1.9.6中Playbook的运行过程;第3章介绍Ansible2.8中的部分核心模块及Playbook的常用语法;第4章介绍Ansible2.8中的核心源码并完整跟踪模块运行的全过程;第5章以小版本的源码对比及GitHub上相关源码的Bug溯源两种方式探讨深入学习Ansible源码的方式;第6章介绍基于Ansible的Playbook项目ceph-ansibie,并依据实际工作需求对其进行改造和深度优化,帮助读者理解Playbook项目的编写方法。《吃透Ansible:核心源码剖析与项目实战》适合Python初中级程序员阅读,尤其适合Python运维开发工程师和Ansible爱好者阅读。对于Python程序员而言,《吃透Ansible:核心源码剖析与项目实战》能带领他们一窥Python项目的内部原理,并通过阅读开源项目的源码提高编程水平。

作者简介

  沈聪 毕业于武汉大学,获硕士学位。目前就职于天翼云科技有限公司,任高级后端开发工程师一职。2018年从Java开发转岗为Python运维开发,在云公司的媒体存储项目中参与存储集群建设、集群部署及统一运维管理平台的开发工作。喜爱钻研Python相关工具的源码,曾经研究过Django、Ansible、SaltStack和Scrapy等热门框架的源码并做了大量的笔记。在慕课网上发布过Nginx、Django和Scrapy等相关课程。

图书目录

第1章  Ansible 1.1源码剖析    1
1.1  Ansible 1.1的环境搭建       1
1.1.1  Ansible 1.1测试环境搭建       1
1.1.2  Ansible 1.1调试环境搭建       5
1.2  Ansible 1.1的基本使用       9
1.2.1  Ansible 1.1模块说明       9
1.2.2  Ansible 1.1的常用模块    10
1.2.3  编写Ansible 1.1的Playbook   29
1.2.4  小结   31
1.3  Ansible 1.1源码概览   31
1.3.1  非源码文件与目录   31
1.3.2  源码文件   32
1.3.3  小结   45
1.4  Ansible 1.1底层通信代码解析   46
1.4.1  本地连接插件   46
1.4.2  基于paramiko模块连接插件   53
1.4.3  基于SSH命令连接插件  61
1.4.4  小结   68
1.5  ping模块的执行流程   68
1.5.1  ansible命令       68
1.5.2  runner目录下的核心源码       71
1.5.3  ping模块的运行流程       84
1.6  copy模块的执行流程  94
1.6.1  copy模块的动作插件      94
1.6.2  copy模块遗留问题的解决      96
1.6.3  Ansible模块的核心步骤小结  99
1.7  本章小结      100
第2章  Ansible 1.9.6源码剖析  101
2.1  Ansible 1.1和Ansible 1.9.6源码对比       101
2.2  快速上手Ansible 1.9.6       102
2.2.1  搭建Ansible 1.9.6测试环境    102
2.2.2  Ansible 1.9.6中的部分模块剖析     103
2.2.3  Ansible 1.9.6中Playbook的常用语法    125
2.3  再探Ansible 1.9.6源码       134
2.3.1  cache模块  134
2.3.2  shell_plugins插件     138
2.3.3  filter_plugins插件     142
2.3.4  lookup_plugins插件  145
2.3.5  辅助模块代码   148
2.4  追踪Ansible 1.9.6的模块运行机制   155
2.4.1  inventory目录   155
2.4.2  Runner类及其方法   157
2.5  解析Playbook的运行逻辑  171
2.5.1  准备测试的Playbook项目      171
2.5.2  相关类基础       174
2.5.3  追踪ansible-playbook命令的运行流程  187
2.6  本章小结      200
第3章  Ansible 2常用模块与Playbook语法   201
3.1  快速上手Ansible 2      201
3.2  Ansible 2的命令行使用      203
3.2.1  Ansible 2支持的常见选项       203
3.2.2  Ansible 2中的常用模块及其源码解析   215
3.2.3  Ansible 2模块的学习建议       241
3.3  Ansible 2中的Playbook语法     243
3.3.1  变量   243
3.3.2  条件判断   248
3.3.3  循环语句   251
3.3.4  等待语句   256
3.4  本章小结      260
第4章  Ansible 2核心源码剖析       261
4.1  Ansible 2.8核心源码初探   261
4.1.1  日志打印   261
4.1.2  默认配置   262
4.1.3  inventory文件解析   270
4.1.4  模板渲染   289
4.1.5  插件   303
4.2  Ansible 2.8模块运行的核心流程分析       305
4.2.1  命令入口   306
4.2.2  核心运行模块   308
4.2.3  流程总结   354
4.3  Ansible 2.8中Playbook的执行流程追踪  355
4.3.1  Playbook命令执行入口   355
4.3.2  核心代码追踪   356
4.3.3  Playbook中部分语法的源码解析   363
4.4  本章小结      371
第5章  Ansible源码的演进跟踪      372
5.1  Ansible 1.1到Ansible 1.2的演进之路      372
5.2  Ansible 2.8中的部分Bug溯源   391
5.2.1  Ansible 2.8中的ChangeLog     391
5.2.2  Ansible 2.8中的Bug复现及其修复过程       394
5.3  如何更深入地学习Ansible源码 416
第6章  Playbook项目实战       417
6.1  ceph-ansible项目介绍  417
6.2  ceph-ansible实战  418
6.2.1  使用ceph-ansible部署Ceph集群    418
6.2.2  ceph-ansible的其他功能   425
6.3  一个真实场景的改造   429
6.3.1  业务需求   429
6.3.2  手工实现   430
6.3.3  改造ceph-ansible      433
6.4  ceph-ansible项目源码探索  446
6.4.1  追踪ceph-mon服务的搭建过程     446
6.4.2  在CentOS 7下部署Ceph集群的简化版Playbook       469
6.4.3  小结   479

本目录推荐