一佳互联

展开菜单

Ansible playbook 处理器(notify与handlers)

Ansible playbook 处理器(notify与handlers)
notify和handlers 此前曾提到过,Ansible绝大多数的模块都具备幂等性,它能保证多次执行不会改变结果,这使得Ansible执行任务时更为安全。 Ansible的模块如何去保证幂等性呢?以shell模块为例∶ shell: cmd: echo haha >/tmp/only_once.txt creates: /tmp/only_once.txt 这里使用了shel模块中的creates参数,它表示如果其指定的文件/tmp/only_once...

Ansible 任务控制(循环loop、条件when)

Ansible 任务控制(循环loop、条件when)
除条件判断外, 另一种分支控制结构是循环结构。Ansible提供了很多种循环结构,一般都命名为with_Xxx,例如with_items、with_list、with_file等,使用最多的是with_items。   循环:迭代,需要重复执行的任务 对迭代项的引用,固定变量名为"item”,使用with_item属性给定要迭代的元素; 这个是以任务为中心,围绕每个任务来跑主机,如果中间某个任务中断,那么所有主机以后的任务就无法安装。 元素:...

Ansible template|cpoy模块

Ansible template|cpoy模块
Ansible template模块 当安装完redis以后,redis默认配置的监听地址为"127.0.0.1",这样是安全的,但是,如果我需要让redis监听在非"127.0.0.1"的IP地址上,以便让其他主机也能够使用本机上的redis服务,那么我就需要修改默认的配置,没错,修改redis配置文件中的bind设置,即可将redis绑定在指定的IP上,假设,现在需要一次性在10台主机上安装redis,并且让安装后的redis都监听在redis所在主机的非"127....

Ansible 常用模块(一)

Ansible 常用模块(一)
在本博客中,ansible是一个系列文章,我们会尽量以通俗易懂的方式总结ansible的相关知识点。   Ansible常用模块-ping模块 Ansible最基础的模块为ping模块,这个是测试远程的SSH连接是否就绪的常用模块。它并不像Linux命令一样简单的ping一下远程节点,而是先检查能否提供SSH登入远程节点,再检查Python版本是否满足要求,如果都满足返回pong,表示成功。 ping无需任何的参数,因为ping是测试节点的可用性,所以在...

Ansible 导入剧本(import_playbook)和导入任务(import_tasks)

Ansible 导入剧本(import_playbook)和导入任务(import_tasks)
如果你的playbook包含了许多许多的功能,即包含了多个play,那么你需要整合所有任务到单个playbook中 这里将前面所有playbook集合到单个playbook文件中去,这样就可以一次性执行所有任务。比如下面所示,这里只是举个例子,没有将全部展示出来。  内容很长,可能你也感受到了,可读性很差,维护也很不方便。 更友好的一种组织方式是将各个任务分类,各自存放在不同的playbook文件中(就像未整合那样),然后使用一个入口playbook文件引...

Ansible 常用模块之文件内容修改 blockinfile|lineinfile

Ansible 常用模块之文件内容修改 blockinfile|lineinfile
前文中,我们已经介绍了怎样使用模块,而且我们知道,ansible有很多模块,每个模块都有自己的功能,"模块"涉及到的方向比较多,所以对于个人来说,并没有必要了解所有的模块,我们只需要根据实际的业务场景了解相应的模块即可,而且ansible比较贴心,ansible根据模块的功能对这些模块进行了大致的分类,比如,如果某些模块都是操作文件的,就把它们分类到文件类模块中,如果某些模块都是操作数据库的,就把他们分类到数据库类模块中,那么,ansible把模块分为了哪些类呢?你可以参...

Ansible 常用模块之文件操作copy|file文件拷贝与创建

Ansible 常用模块之文件操作copy|file文件拷贝与创建
前文中,我们已经介绍了怎样使用模块,而且我们知道,ansible有很多模块,每个模块都有自己的功能,"模块"涉及到的方向比较多,所以对于个人来说,并没有必要了解所有的模块,我们只需要根据实际的业务场景了解相应的模块即可,而且ansible比较贴心,ansible根据模块的功能对这些模块进行了大致的分类,比如,如果某些模块都是操作文件的,就把它们分类到文件类模块中,如果某些模块都是操作数据库的,就把他们分类到数据库类模块中,那么,ansible把模块分为了哪些类呢?你可以参...

Ansible 常用模块之文件操作查找与内容替换 find|replace

Ansible 常用模块之文件操作查找与内容替换 find|replace
前文中已经总结了一些文件操作类的模块,如果你需要了解它们,可以查看我之前博客。 这篇文章我们继续来了解一些文件操作类模块。   find模块 find模块可以帮助我们在远程主机中查找符合条件的文件,就像find命令一样。 此处我们介绍一些find模块的常用参数,你可以先对这些参数有一个大概了解,然后再看小示例。 paths参数 :必须参数,指定在哪个目录中查找文件,可以指定多个路径,路径间用逗号隔开,此参数有别名,使用别名path或...

Ansible 常用模块之命令类模块 command|shell|script

Ansible 常用模块之命令类模块 command|shell|script
 在本博客中,ansible是一个系列文章,我们会尽量以通俗易懂的方式总结ansible的相关知识点。ansible系列博文直达链接:ansible轻松入门系列"ansible系列"中的每篇文章都建立在前文的基础之上,所以,请按照顺序阅读这些文章,否则有可能在阅读中遇到障碍。 前文中,我们介绍了一些常用的文件类操作的模块,这篇文章中我们会介绍一些常用的命令类操作的模块。   command模块 command模块可以帮助我们在远程主机上执行...

Ansible 常用模块之系统调用类模块 cron|service

Ansible 常用模块之系统调用类模块 cron|service
前文中,我们介绍了一些常用的文件类模块和命令类模块,这篇文章中我们会介绍一些常用的系统类操作模块。   cron模块 在了解cron模块的参数之前,先写出一些计划任务的示例,示例如下 示例1     5 1 * * * echo test 示例2     1 1 */3 * * echo test 示例3    @reboot echo test 示例4&nbs...