cfg是主配置文件,hosts是主机清单文件inventory
配置文件中重要部分
ansible 配置文件里面定义了主机清单的位置,所以清单文件放在哪都行。
将模块推送到了被控端,被控端要将模块存储到下面的位置,充当临时目录,然后去执行,执行完了删除。
同时并发的数量,也就是5台,并行主机数量的
下面就是ansible的sudo配置了,看你ansible是运行在超级管理员下面还是普通用户,一般的ansible多半是运行在超级管理员账户下面,这些不需要修改。
默认远程端口22,如果是其他端口需要修改
每次连接主机的时候,第一次连接需要输入yes和no,如果ansible操作那么多台主机都需要输入yes和no,这不太现实
配置文件的优先级
第一步读取:ANSIBLE_CINFIG
第二步读取:当前项目目录下的ansible.cfg(一般创建项目目录,在这个目录当中放入ansibel.cfg的文件是最合理的,然后在里面放一个主机清单文件)(因为每个项目都应该配置一个配置文件,因为每个项目配置都不一样)
第三步:读取用户家目录下的.ansible.cfg,如果是root用户就是root用户家目录,如果是普通用户那么就是普通用户家目录
第四步:读取/etc/ansibel/ansible.cfg
目前使用的配置文件优先级是最低的,如果定义ANSIBLE_CINFIG变量的路径
可以看到优先级变了,配置文件的优先级,如果要取消环境变量unset一下就行了
实际上如何使用ansible配置呢?
在一个服务器上面可能有多个项目,不同的项目连接的主机和需要的配置是不一样的,所以每个项目里面都会放ansible.cfg。各自读取自己的配置文件,在配置文件当中可以定义inventory主机清单的配置,项目1需要访问1-10主机,项目2需要访问11-20主机,这样inventory主机清单就放在项目当中,然后在ansibel.cfg当中将路径inventory 进行修改为当前目录的inventory。
所以正真在使用的时候会为每个项目定义cfg文件和主机清单文件。