ansible中的幂等性
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,1、ansible中的幂等性ansible中绝大多数的模块都具有幂等特性,意味着执行依次或多次不会产生副作用。但是shell、command、script、raw这四个模块时不满足幂等性,所有操作会重
千家信息网最后更新 2026年11月03日ansible中的幂等性
1、ansible中的幂等性
ansible中绝大多数的模块都具有幂等特性,意味着执行依次或多次不会产生副作用。但是shell、command、script、raw这四个模块时不满足幂等性,所有操作会重复执行,但是有些操作不允许重复执行,比如MySQL的初始化命令mysql_install_db,逻辑上它只在第一次配置的过程中初始化依次,其他任何时候都不应该再执行。所有,每当使用这四个模块的时候,都要想一想,重复执行这个命令会不会产生负面影响。
当然,在上面的四个模块中,除了raw模块外,都提供了实现幂等特性的参数,就是creates和removes:
- creates参数:当指定的文件或目录存在时,则不执行命令;
- removes参数:当指定的文件或目录不存在时,则不执行命令;
示例如下:
---- name: use some module hosts: node gather_facts: false tasks: # 网卡配置文件不存在时则不执行 - name: use command module command: ifup ens33 args: removes: /etc/sysconfig/network-scripts/ifcfg-ens33 # mysql配置文件已存在时则不执行,避免覆盖 - name: use shell module shell: cp /tmp/my.cnf /etc/my.cnf args: creates: /etc/my.cnf经过测试可以证明,使用removes或creates参数之后,就可以实现幂等性,保证命令不会重复执行。
这四个模块都不限于执行shell命令或shell脚本,可以通过executable参数指定其他解释器,如expec执行expect脚本、perl解释器执行perl脚本等等。如下:
[root@ansible ansible]# cat test.yaml ---- name: RUN a perl script script: /some/local/script.pl args: executable: perl
命令
模块
参数
文件
脚本
配置
时候
特性
目录
解释器
解释
副作用
可以通过
就是
意味
示例
第一次
网卡
过程
逻辑
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
哈尔滨大商圈互联网科技有限公司
互联网科技公司起名
中国互联网科技工作委员会毛军
互联网扶贫科技
互联网科技开发公司
深圳科技互联网
唐信互联网科技
郑州华宇互联网科技
互联网前沿科技
国外互联网科技网站
互联网科技教育视频
互联网科技的全部知识
广州有谷有贝互联网科技有限公司
广州燕处互联网科技有限公司
神州科技互联网有限公司
国产互联网科技公司
陕西九四连强互联网科技有限公司
同城互联网络科技
中国互联网公司的科技投入
10位科技互联网大佬
深圳科技互联网
万易互联网科技
互联网科技股票
互联网高科技股票
互联网科技公司介绍
互联网媒体平台算高科技产业
互联网相关科技技术
互联网科技企业商标注意事项
互联网的科技体现在哪里
现代互联网科技公司