Skip to content

Ansible Playbook

什么是 Playbook ?首先 Play 是一组有序的 tasks ,这些任务是可以在 inventory 中的主机执行,而 Playbook 它是一个文本文件,里面包含了一个或多个 Play
Play 可以允许将复杂、冗长的手动管理任务转换为可以预测成功结果的可重复例程。在 Playbook 中,可以保存可读和可执行的 tasks 队列,可以按照应用部署的步骤来编写 Playbook 来进行部署应用或基础架构。

...continue reading "Ansible 之旅(七) Playbook"

动态 Inventory

之前介绍的静态 inventory 很容易编写,但是这只适合管理小型的基础设施架构,在管理大型基础设施架构时,机器可能会经常变来变去,如现今的私有云公有云,此时很难再去保持静态的 inventory 不变,遇到这种情况静态 inventory 已经无法较好的管理托管主机了。

...continue reading "Ansible 之旅(六) 管理 Inventory"

通过 Ansible 执行 Ad Hoc

所谓的 Ad Hoc 简而言之就是 临时命令
Ad Hoc 是一种快速执行单个 Ansible 任务的方法,它不需要为下次运行而保存起来,非常简单,只需运行一行命令,不需要写到 Ansible Playbook 当中。所以 Ad Hoc 更加注重解决一些简单或平时工作中临时遇到的任务,而 Ansible Playbook 更适合解决复杂的且需要固化下来的任务。

...continue reading "Ansible 之旅(五) 运行 Ad Hoc"

配置 Ansible

Ansible 可以通过修改其配置文件来改变 Ansible 的行为,在控制节点中,配置文件可能存在以下位置:
1. /etc/ansible/ansible.cfg 此配置文件是 Ansible 默认配置文件位置,作用于全局。
2. ~/.ansible.cfg 此配置文件是存放用户家目录中的配置文件,作用于这个用户。
3. ./ansible.cfg 此配置文件是存放在某个目录下,作用与这个目录。
4. $ANSIBLE_CONFIG 通过变量来指定配置文件的路径,作用于全局。
由上可知配置文件可以存放在不同的位置,但是推荐的做法是在一个目录中创建 ansible.cfg ,将项目所需的 inventoryplaybook 都放在此目录中,这样配置文件就可以针对不同的项目,来设置不同的属性。然而不同的位置的配置文件会不会相互影响呢?它们之间存在什么关系呢?

...continue reading "Ansible 之旅(四) 配置 Ansible"