手册简介
原标题《现代IT人一定要知道的Ansible自动化组态技巧》Ansible是一种自动化的运维工具,基于Python开发,它集合了众多运维工具(比如puppet、chef、func等)的优点,能够实现批量操作。但其实Ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,Ansible只是提供一种框架。在本文中,作者冻仁翔将会把自己使用Ansible的一些经验分享给大家。 由作者Chu-Siang Lai(冻仁翔) 授权转载至W3Cschool.cn
手册说明
Ansible介绍:
- Ansible 是个与 Puppet, SaltStack, Chef 并驾齐驱的组态设定 (Infrastructure as Code) 工具,其简单易用的特性让人爱不释手,在 DevOps 界更佔有一席之地。
- Ansible 提供一种最简单的方式用于发布、管理和编排计算机系统的工具,你可在数分钟内搞定。
- Ansible 是一个模型驱动的配置管理器,支持多节点发布、远程任务执行。默认使用 SSH 进行远程连接。无需在被管理节点上安装附加软件,可使用各种编程语言进行扩展。
本次作者冻仁翔将带领大家一探 Ansible 这门技艺,并分享些实战经验。相信有了 Ansible 我们都可以提早下班了! (笑) 1
若需勘误,观迎大家来信 automate-with-ansible (at) drx.tw,(当然您也可以上 GitHub 网站 2 送 Pull Request 或发 issues),让此书可以更完美。
Ansible特性:
- 拥有模块化的设计,Ansible能够调用特定的模块来完成特定任务 ,本身是核心组件,短小精悍 ;
- Ansible是基于Python语言实现的,由Paramiko (python 的一个可并发连接 ssh 主机功能库 ) , PyYAML和Jinja2 ( 模板化 ) 三个关键模块实现;
- Ansible的部署比较简单,agentless 无客户端工具;
- 以主从模式工作;
- 支持自定义模块功能;
- 支持playbook剧本,连续任务按先后设置顺序完成;
- 期望每个命令具有幂等性:
《现代 IT 人一定要知道的 Ansible 自动化组态技巧》由冻仁翔制作,以创用CC 姓名标示-非商业性-相同方式分享 3.0 台湾 授权条款释出。
经作者授权由W3Cschool整理为简体中文版——《Ansible自动化运维教程》
在线阅读:
GitHub https://github.com/chusiang/automate-with-ansible (現代 IT 人一定要知道的 Ansible 自動化組態技巧)-繁体中文
Gitbook https://www.gitbook.com/book/chusiang/autom (現代 IT 人一定要知道的 Ansible 自動化組態技巧)-繁体中文
W3Cschool https://www.w3cschool.cn/automate_with_ansible/ (Ansible自动化运维教程)-简体中文
w3cschool上可供参考的手册:
相关网址:
Ansible官网:https://docs.ansible.com/
本书目录:
- Ansible 前言
- Ansible 是什么
- Ansible 环境部署
- Ansible 用Vagrant练习Ansible
- Ansible 用 Docker 练习 Ansible
- Ansible 如何操作
- Ansible 用 Jupyter 操控 Ansible (localhost)
- Ansible 用 Jupyter 操控 Ansible (Managed node)
- Ansible 用 Docker Compose 练习 Ansible
- Ansible 的开发工具
- Ansible 查看 Ansible Modules 文件
- Ansible 常用的 Ansible Module
- Ansible 使用 setup 取得 Managed node 的 facts
- Ansible 使用 Template 系统
- Ansible 在 Playbooks 使用 Handlers
- Ansible 发送 notification 到 Slack
- Ansible 如何发送 notification 到 HipChat?
- Ansible 在 Playbooks 使用 loops
- Ansible 维护大型的 Playbooks
- Ansible 什么是Roles
- Ansible 怎么使用 Roles
- Ansible 用 Roles 部署 LNMP 网页应用程式(上)
- Ansible 用 Roles 部署 LNMP 网页应用程式(下)
- Ansible 用 Roles 部署 TestLink
- Ansible 在 Ansible Galaxy 分享 Roles(上)
- Ansible 在 Ansible Galaxy 分享 Roles(下)
- Ansible 用 Travis CI 测试 Roles
- Ansible 混用 Ansible 建置 Docker image
- Ansible 在 Docker Hub 混用 Ansible 自动建置 Docker image
- Ansible 用 Vault 管理敏感资料
- Ansible 总结
- Ansible 致谢
更新记录
-
Ansible 常用的 Ansible Module 09-15 16:56
-
Ansible 使用 Template 系统 09-04 10:43
-
Ansible 查看 Ansible Modules 文件 07-29 17:30
-
Ansible 致谢 07-26 10:33
-
Ansible 总结 07-26 10:33
-
Ansible 环境部署 07-25 14:07
-
Ansible 前言 07-25 11:15
-
Ansible 用 Vault 管理敏感资料 07-25 11:14
-
Ansible 混用 Ansible 建置 Docker image 07-25 11:11