新書推薦:
《
发展与制约:明清江南生产力研究(壹卷李伯重文集:江南水乡,经济兴衰,一本书带你穿越历史的迷雾)
》
售價:NT$
480.0
《
走进史学(壹卷李伯重文集:李伯重先生的学术印记与时代见证)
》
售價:NT$
360.0
《
故宫书画集(精编盒装)版传统文化收藏鉴赏艺术书法人物花鸟扇面雕刻探秘故宫书画简体中文注释解析
》
售價:NT$
1490.0
《
《往事和近事(增订本)》(著名学者葛剑雄教授代表作,新增修订、全新推出。跨越三十多年的写作,多角度讲述中华文明)
》
售價:NT$
349.0
《
往事和近事:历史地理学泰斗、百家讲坛主讲葛剑雄经典文集
》
售價:NT$
349.0
《
父母的关键认知
》
售價:NT$
225.0
《
第三帝国:一部新的历史(纳粹主义具有何种魔力?纳粹运动会卷土重来吗?一部全面揭示希特勒及其罪恶帝国黑暗的历史)
》
售價:NT$
490.0
《
强迫症的历史:德国人的犹太恐惧症与大屠杀(德国历史上的反犹文化源自哪里?如何演化为战争对犹太人灭绝性的种族杀戮?德国历史研究专家克劳斯·费舍尔叙述德国反犹史及其极端形态的典范之作)
》
售價:NT$
440.0
|
編輯推薦: |
Ansible是近几年出现的新的自动化运维工具,可以对机群进行软件安装、配置和应用部署,而《Ansible快速入门:技术原理与实战》是一本Ansible入门书籍,炼了Ansible中的精华,侧重于实战,全书代码均实测过,是一本不可多得的Ansible入门书。
|
內容簡介: |
本书以新的自动化运维工具Ansible为主要内容,侧重于实战,由浅入深地介绍了Ansible以及周边产品Ansible Galaxy和Ansible Tower的用法。本书共计6章,前4章由浅及深、层层递进地介绍了Ansible的使用方法。第5章着重介绍了Ansible的代码分享机制role以及其分享平台Ansible Galaxy。第6章概括性地介绍了企业级软件Ansible Tower。全书的叙述风格通俗易懂,没有过多地引入复杂的概念,侧重于讲解原理,立足于实战,引领Ansible新手轻松入门。
|
關於作者: |
史晶晶,毕业于吉林大学计算机与科学技术专业,资深软件工程师,目前在红帽软件从事Linux与云平台的工具开发工作。
|
目錄:
|
目录
第1章Ansible介绍
1.1Ansible介绍
1.2Ansible解决了什么运维痛点
1.3架构
1.3.1Ansible的架构
1.3.2Ansible Tower的架构
第2章Ansible入门
2.1安装Ansible
2.1.1在管理员的电脑上安装
2.1.2被管理的远程主机
2.2Ansible管理哪些主机
2.2.1什么是主机目录
2.2.2主机目录配置文件
2.3Ansible用命令管理主机
2.3.1Ansible命令的格式
2.3.2Ansible命令的功能
2.4Ansible用脚本管理主机
2.4.1执行脚本Playbook的方法
2.4.2Playbook的例子
2.4.3Play和Playbook
2.5Ansible模块
2.5.1什么是Ansible模块
2.5.2在命令行里使用模块
2.5.3在Playbook脚本中使用模块
2.5.4Ansible模块的特点
2.5.5常用模块
第3章Ansible进阶
3.1Ansible的配置
3.1.1可以配置什么
3.1.2Ansible配置文件的优先级
3.2主机清单
3.2.1远程主机的分组
3.2.2设置连接参数
3.2.3变量
3.3Ansible的脚本Playbook
3.3.1Playbook的文件格式YAML
3.3.2执行Playbook的命令
3.3.3Playbook的基本语法
3.3.4变量
3.3.5Playbook也有逻辑控制语句
3.3.6重用Playbook
3.3.7用标签,实现执行Playbook中的部分任务
3.4更多的Ansible模块
3.4.1模块的分类
3.4.2Extra模块的使用方法
3.4.3命令行查看模块的用法
3.5最佳使用方法
3.5.1写Playbook的原则
3.5.2参考别人的Playbook
第4章Ansible Playbook杂谈
4.1再谈Ansible变量
4.1.1变量的作用域
4.1.2变量的优先级
4.2使用lookup访问外部文件或数据库中的数据
4.2.1lookup读取文件
4.2.2lookup生成随机密码
4.2.3lookup读取环境变量
4.2.4lookup读取Linux命令的执行结果
4.2.5lookup读取template变量替换后的文件
4.2.6lookup读取配置文件
4.2.7lookup读取CSV文件的指定单元
4.2.8lookup读取DNS解析的值
4.2.9更多的lookup功能
4.3过滤器
4.3.1过滤器使用的位置
4.3.2过滤器对普通变量的操作
4.3.3过滤器对文件路径的操作
4.3.4过滤器对字符串变量的操作
4.3.5过滤器对JSON的操作
4.3.6过滤器对数据结构的操作
4.3.7过滤器的链式连续使用
4.4测试变量或表达式是否符合条件
4.4.1测试字符串
4.4.2比较版本
4.4.3测试List的包含关系
4.4.4测试文件路径
4.4.5测试任务的执行结果
4.5认识插件
4.5.1插件类型
4.5.2常用的插件介绍
第5章role和Ansible Galaxy
5.1role和Ansible Galaxy的简要介绍
5.1.1role
5.1.2Ansible Galaxy
5.2role的放置位置
5.2.1当前目录的roles文件夹下
5.2.2环境变量ANSIBLE_ROLES_PATH定义的文件夹
5.2.3Ansible配置文件中roles_path定义的文件夹
5.2.4默认文件夹etcansibleroles
5.3在Playbook中如何调用role
5.3.1调用最简单的role
5.3.2通过pre_tasks和post_tasks调整role和任务的顺序
5.3.3调用带有参数的role
5.3.4与when一起使用role
5.4如何写role
5.4.1role的完整定义
5.4.2默认变量和普通变量的区别
5.4.3tasksmain.yml如何使用变量、静态文件和模板
5.5role的依赖
5.6Ansible Galaxy网站介绍
5.6.1从Ansible Galaxy网站上下载role
5.6.2分享你的role
5.7演示role的创建和分享
5.7.1改造单个的Playbook为role
5.7.2在Ansible Galaxy中分享role
第6章Ansible Tower
6.1为什么要用Ansible Tower
6.1.1Ansible和Tower的用户视角架构图
6.1.2Ansible Tower的主要功能
6.2如何使用Ansible Tower
6.2.1安装方法
6.2.2使用方法
6.2.3总结
6.3与第三方平台的整合
6.3.1Ansible Tower API
6.3.2Ansible Tower提供的命令行工具
附录A
|
內容試閱:
|
前 言
内容介绍
Ansible是对机群进行软件安装、配置和应用部署的自动化工具。自2012年Ansible出现后,以其使用简单、功能实用等特点得到了广泛关注,成为自动化运维工具中的冉冉新星。仅三年后就被红帽(Red Hat)公司收购,目前受到众多软件公司的关注、推广和使用。自动化部署无论对系统管理员还是对软件开发人员来说,都会减少重复的手工操作,提高部署效率。Ansible作为学习成本小、学习路径短的一款工具,更是值得了解和使用。
作为一本Ansible入门书籍,读者只需对Linux有最基本的了解就可以轻松读懂本书。
本书的内容共计6章,分为以下三个部分:
第一部分 Ansible基本工具的讲解(第1章~第4章)
本书首先介绍了Ansible架构,然后讲解了Ansible的主要概念,接着又介绍了一些具体使用方法,步步递进、层层深入地介绍了Ansible的相关知识。
第4章对前面3章中的知识细节进行了补充,以便读者能够深入理解Ansible的基本使用方法。
第二部分 role和衍生工具Ansible Galaxy的介绍(第5章)
role是Ansible最为推荐的重用代码的方式,并为其开发了Ansible Galaxy代码分享网站。但因其概念较为复杂,所以对其单独进行讲解。
第三部分 企业级收费软件Ansible Tower介绍(第6章)
企业级用户面临着更加复杂的应用环境和更高的安全要求,Ansible Tower就是一款解决企业级用户难题的收费软件。
代码的运行环境
建议读者安装Linux虚拟机作为Ansible的管理节点来测试本书中的代码。Ansible目前已被红帽公司收购,对Red Hat Linux系统的支持较为完善,建议读者最好选择Red Hat Linux 7或CentOS 7。
排版约定
为了使读者能快速把握到代码的重点,本书中代码的重要部分用加粗字体表示强调。
例如,下面的代码强调变量ansible_os_family的用法:
---
- hosts: all
user: root
tasks:
- name: echo system
shell: echo {{ ansible_os_family }}
- name install ntp on Debian linux
apt: name=git state=installed
when: ansible_os_family == "Debian"
- name install ntp on redhat linux
yum: name=git state=present
勘误信息
笔者对本书中所有的代码都进行了完整的测试,书中的文字也经过了反复的斟酌。尽管如此,由于时间紧迫且作者水平有限,错误和疏漏难以避免,还需要广大读者的反馈和修订,以使得本书更加完善。因此,如果您发现书中的任何错误,小到错别字,大到代码运行错误,都希望您能及时反馈。您的任何一次勘误,都会令笔者和其他读者受益,再次表示感谢。
勘误地址:
https:github.comansible-bookerrata
或者
http:getansible.comreferenceerrata
反馈勘误方法:
提问题到Github项目上:https:github.comansible-bookerrata
|
|