- 加载自己的配置文件 默认/etc/ansible/ansible.cfg
- 加载自己对应的模块文件,如command
- 通过ansible将模块或命令生成对应的临时py文件,并将该文件传输至远程服务器的对应执行用户$HOME/.ansible/tmp/ansible-tmp-数字/XXX.PY文件
- 给文件+x执行
- 执行并返回结果
- 删除临时py文件,退出
- 绿色:执行成功并且不需要做改变的操作
- 黄色:执行成功并且对目标主机做变更
- 红色:执行失败
inventory = /etc/ansible/hosts 主机列表配置文件
library = /usr/share/my_modules/ 库文件存放目录
remote_tmp = $HOME/.ansible/tmp 临时py命令文件存放在远程主机目录
local_tmp = $HOME/.ansible/tmp 本机的临时命令执行目录
forks = 5 默认并发数
sudo_user = root 默认sudo 用户
ask_sudo_pass = True 每次执行ansible命令是否询问ssh密码
ask_pass = True
remote_port = 22
host_key_checking = False 检查对应服务器的host_key,建议取消注释
log_path=/var/log/ansible.log 日志文件
module_name = command 默认模块
-v,-verbose:打印详细模式
-i PATH,-inventory=PATH:指定host文件路径
-f NUM,-forks=NUM:指定fork开启同步进程的个数,默认为5
-m NAME,-module-name=NAME:指定module名称,默认模块为command
-a MODULE_ARGS:module模块的参数或者命令
-k,0ask-pass:输入被管理端密码
-sudo:基于sudo用户执行
-K,-ask-sudo-pass:提示输入sudo密码与sudo一起使用
-u USERNAME,-user=USERNAME:指定执行用户
-C,--check:测试执行过程,不改变真实内容,相当于预演
-T TIMEOUT:执行命令超时时间,默认为10s
--version:查看ansible软件版本信息
-Chdir: 执行命令前,切换到目录
-Creates: 当该文件存在时,则不执行该步骤
-Executable: 换用shell环境执行命令
-Free_form: 需要执行的脚本
-Removes: 当该文件不存在时,则不 执行该步骤
-Warn:若在ansible.cfg中存在告警,如果设定了false,不会警告此
-src: Ansible端源文件或者目录,空文件夹不复制
-content: 用来替代src,用于将指定文件的内容复制到远程文件中
-dest: 客户端目标目录或者文件,需要绝对路径
-backup: 复制之前,先备份远程节点上的原始文件
-directory_mode: 用于复制文件夹,新建的文件会被复制,而老旧的不会被复制
-follow; 支持Link文件复制
-force: 覆盖远程主机不一致的内容
-group: 设定远程主机文件夹的组名
-mode: 指定远程主机文件及文件夹的用户名
-owner; 设定远程主机文件夹的用户名
-conf_file :设定远程YUM执行时所依赖的YUM配置文件
-disable_gpg_check :安装软件包之前是否检查gpg key
-name :需要安装的软件名称,支持软件组安装
-update_cache :安装软件前更新缓存
-enablerepo :指定repo源名称
-skip_broken :跳过异常软件节点
-state ;软件包状态,包括installed\present\latest\absent\removed
src :Ansible端源文件或者目录
follow ;支持Link文件复制
force :覆盖远程主机不一致的内容
group :设定远程主机文件夹的组名
mode :指定远程主机文件及文件夹的用户名
owner :设定远程主机文件夹的用户名
path :目标路径,也可用dest,name代替
state :状态包括file\link\directory\hard\touch\absent
attributes :文件或者目录特殊属性
-system :默认创建为普通用户,为yes则创建系统用户
-append :添加一个新的组
-comment :新增描述信息
-createhome :给用户创建家目录
-force :强制删除用户
-group :创建用户主组
-groups :将用户加入组或者附属组添加
-home :指定用户的家目录
-name :表示状态,是否create\remove\modify
-password :指定用户的密码,此处为加密密码
-remove ;删除用户
-shell ;设置用户的shell登录环境
-uid :设置用户ID
-update_password :修改用户密码
-state :用户状,默认为present,表示新建用户
name :任务计划名称
cron_file :替换客户端使用的任务计划的文件
minute :分(0-59,*,*/2)
hour :时(0-23,*,*/2)
day :日(1-31,*,*/2)
month :月(1-12,*,*/2)
weekday :周(0-6或1-7,*)
job :任何计划执行的命令,state要等于 present
backup :是否备份之前的任务计划
user :新建任务计划的用户
state :指定任务计划present\absent
compress :开启压缩,默认为开启
archive :是否采用归档模式同步,保证源和目标文件属性一致
checksum ;是否效验
dirs :以非递归的方式传输目录
Links :同步连接文件
recursive :使用rsync的参数
copy_links :同步的时候是否复制连接
delete :删除源中没有而目标存在的文件
src :源目录及文件
dest ;目标目录及文件
dest_port ;目标授受的端口
rsync_path ;服务的路径,指定rsync命令来在远程服务器上运行
rsync_timeout :指定rsync操作的IP超时时间
set_remote_user :设置远程用户
--exclude=.log :忽略同步.log结尾的文件
mode :同步的模块,rsync同步的方式push、pull,默认都是推送push.
Chdir :执行命令前,切换到目录
Creates : 当该文件存在时,则不执行该步骤
Executable :换用shell环境执行命令
Free_form :需要执行的脚本
Removes :当该文件不存在时,则不执行该步骤
Warn:若在ansible.cfg中存在告警,如果设定了false
enabled:是否开机启动服务标签:文件,ansible,用户,Ansible,参数,模块,执行,远程 From: https://blog.51cto.com/u_13688209/6081026
name:服务名称
runlevel:服务启动级别
arguments:服务命令参数传递
state:服务操作状态,状态包括:started\stopped\restarted\reloade