CentOS 7.5
一,安装
yum -y install ansible
二,配置hosts文件
/etc/ansible/hosts
s1 ansible_ssh_port=65522 ansible_ssh_host=10.0.0.1 ansible_ssh_user=simon
常用参数配置:
ansible_ssh_host # 目标主机地址
ansible_ssh_port # 目标主机端口,默认22
ansible_ssh_user # 目标主机用户
ansible_ssh_pass # 目标主机ssh密码
ansible_sudo_pass # sudo密码
ansible_sudo_exe
ansible_connection # 与主机的连接类型,比如:local,ssh或者paramiko
ansible_ssh_private_key_file # 私钥地址
ansible_shell_type # 目标系统的shell类型
ansible_python_interpreter # python版本
格式:[组名]
例如 :
[test] # 组名 10.0.0.1 # 主机ip 或者10.0.0.1:65522 自定义端口
别名
s1 ansible_ssh_port=65522 ansible_ssh_host=10.0.0.1 ansible_ssh_user=simon # 别名s1
连续的主机
[g1] g[1:50].example.com g[a-f].example.com
三,配置文件
/etc/ansible/ansible.cfg
hostfile = /etc/ansible/hosts #hosts文件的位置 library = /usr/share/ansible #ansible默认搜寻模块的位置 pattern = * #如果没有提供hosts节点,这是playbook要通信的默认主机组.默认值是对所有主机通信 remote_tmp = $HOME/.ansible/tmp #Ansible通过远程传输模块到远程主机,然后远程执行,执行后在清理现场.在有些场景下,你也许想使用默认路径希望像更换补丁一样使用 forks = 5 #在与主机通信时的默认并行进程数 ,默认是5d poll_interval = 15 #当具体的poll interval 没有定义时,多少时间回查一下这些任务的状态, 默认值是5秒 sudo_user = root #sudo使用的默认用户 ,默认是root #ask_sudo_pass = True #用来控制Ansible playbook 在执行sudo之前是否询问sudo密码.默认为no #ask_pass = True #控制Ansible playbook 是否会自动默认弹出密码 transport = smart #通信机制.默认 值为’smart’。如果本地系统支持 ControlPersist技术的话,将会使用(基于OpenSSH)‘ssh’,如果不支持将使用‘paramiko’.其他传输选项‘local’,‘chroot’,’jail’等等 #remote_port = 22 #远程SSH端口。 默认是22 module_lang = C #模块和系统之间通信的计算机语言,默认是C语言 #host_key_checking = False #检查主机密钥 timeout = 10 #SSH超时时间 #log_path = /var/log/ansible.log #日志文件存放路径 #module_name = command #ansible命令执行默认的模块 #private_key_file = /path/to/file #私钥文件存储位置