ansible 配置运行环境

官方查看配置文件设置

http://docs.ansible.com/ansible/latest/intro_configuration.html


1.配置环境变量

export ANSIBLE_SUDO_USER=root

设置环境变量以后,ANSIBLE_SUDO_USER就可以在playbook中直接引用。


2设置.ansible.cfg常用配置参数 ,文件目录:etc/ansible/ansilbe.cfg

·inventory:表示清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表。

  inventory = /etc/ansible/hosts


·labrary:Ansble的操作动作,无论是本地或远程,都使用小段代码来执行,这小段代码称之为模块。liarary参数指向存放Ansible模块的目录。

library = /user/share/ansible

library支持多个目录方式,主要用冒号隔开就可以了。


·forks:设置默认情况下Asible最多可以有多少个进程同时工作,默认是5个

forks   = 5

focks 不是越大越好,要根据实际的情况调整


·sudo_user:设置默认执行命令的用户,也可以在playbook中重新设置这个参数

       sudo_user = root


·remote_port:指定被管理节点的管理端口,默认是22(SSH)。

     remote_port = 22


·host_key_checking:设置是否检查SSH主机的密钥

      host_key_checking = False


·timeout:设置SSH连接的超时间隔,单位是秒

     timeout=60


·log_path:Ansible默认不记录日志,log_path来指定一个存储Ansible日志的文件。

     log_path = /var/log/ansible.log


·poll_interval 异步执行任务的时候多久检查一次任务装填,默认是15次任务

poll_interval =15


·ask_sudo_pass =True 用来控制ansible playbook在执行sudo之前是否询问sudo的密码,默认为No

ask_sudo_pass = no


·ask_pass = True 控制ansible playbook是否自动默认弹出密码


·private_key_file = /root/.ssh/id_rsa 私钥文件存储的文职


3.使用公钥认证

修改home目录下 /.ansible.cfg 或 /etc/ansible/ansible.cfg

host_key_checking = False

或直接在控制主机的操作系统中设置环境变量。

$export ANSIBLE_HOST_KEY_CHECKING=False


4.配置LINUX主机SSH无密码访问

为了避免Ansible下发指令时输入目标主机密码,通过证书签名达到SSH无密码。

使用ssh-keygen和ssh-copy-id

控制主机上创建密钥:ssh-keygen -t rsa 

一路回车

在/root/.ssh/下生成一对密钥:id_rsa 为私钥,id_rsa.pub 为公钥

下发密钥:控制主机把公钥id_rsa.pub下发到被管节点用户下的.ssh目录并重命名成authorized_keys,且权限值为400

ssh-copy-id [-h | -? | -n] [identity_file] [-p port] [[-o ] ... ] [user@]hostname

输入以下命令同步公钥到被管节点web1(168.100.100.109)

ssh-copy-id -i /root/.ssh/id_rsa_pub [email protected]


验证:ssh [email protected] 能登陆成功


5.ansible排错

查看详细信息 -v -vvv

ansible all -m ping -vvv

ansible 配置运行环境_第1张图片









你可能感兴趣的:(Ansible)