Ansible3:ansible.cfg配置说明【转】

Ansible默认安装好后有一个配置文件/etc/ansible/ansible.cfg,该配置文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码、是否开启sudo认证、action_plugins插件的位置、hosts主机组的位置、是否开启log功能、默认端口、key文件位置等等。

具体如下:

    [defaults]    # some basic default values...    hostfile       = /etc/ansible/hosts   \\指定默认hosts配置的位置    # library_path = /usr/share/my_modules/    remote_tmp     = $HOME/.ansible/tmp    pattern        = *    forks          = 5    poll_interval  = 15    sudo_user      = root  \\远程sudo用户    #ask_sudo_pass = True  \\每次执行ansible命令是否询问ssh密码    #ask_pass      = True  \\每次执行ansible命令时是否询问sudo密码    transport      = smart    remote_port    = 22    module_lang    = C    gathering = implicit    host_key_checking = False    \\关闭第一次使用ansible连接客户端是输入命令提示    log_path    = /var/log/ansible.log \\需要时可以自行添加。chown -R root:root ansible.log    system_warnings = False    \\关闭运行ansible时系统的提示信息,一般为提示升级    # set plugin path directories here, separate with colons    action_plugins     = /usr/share/ansible_plugins/action_plugins    callback_plugins   = /usr/share/ansible_plugins/callback_plugins    connection_plugins = /usr/share/ansible_plugins/connection_plugins    lookup_plugins     = /usr/share/ansible_plugins/lookup_plugins    vars_plugins       = /usr/share/ansible_plugins/vars_plugins    filter_plugins     = /usr/share/ansible_plugins/filter_plugins    fact_caching = memory    [accelerate]    accelerate_port = 5099    accelerate_timeout = 30    accelerate_connect_timeout = 5.0    # The daemon timeout is measured in minutes. This time is measured    # from the last activity to the accelerate daemon.    accelerate_daemon_timeout = 30

如果在对之前未连接的主机进行连结时报错如下:

ansible test -a ‘uptime‘    192.168.1.1| FAILED =>Using a SSH password instead of a key is not possible because HostKey checking is enabled and sshpass does not support this.Please add this host‘s fingerprint to your known_hosts file to manage this host.    192.168.1.2 | FAILED => Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this.  Please add this host‘s fingerprint to your known_hosts file to manage this host.

是由于在本机的~/.ssh/known_hosts文件中并有fingerprint key串,ssh第一次连接的时候一般会提示输入yes 进行确认为将key字符串加入到  ~/.ssh/known_hosts 文件中。

方法1:

在进行ssh连接时,可以使用-o参数将StrictHostKeyChecking设置为no,使用ssh连接时避免首次连接时让输入yes/no部分的提示。通过查看ansible.cfg配置文件,发现如下行:

[ssh_connection]# ssh arguments to use# Leaving off ControlPersist will result in poor performance, so use# paramiko on older platforms rather than removing it#ssh_args = -o ControlMaster=auto -o ControlPersist=60s

可以启用ssh_args 部分,使用下面的配置,避免上面出现的错误:

ssh_args = -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no

方法2:

在ansible.cfg配置文件中,也会找到如下配置:

# uncomment this to disable SSH key host checkinghost_key_checking = False  

默认host_key_checking部分是注释的,通过找开该行的注释,同样也可以实现跳过ssh 首次连接提示验证部分。但在实际测试中,似乎并没有效果,建议使用方法1.

其他部分

默认ansible 执行的时候,并不会输出日志到文件,不过在ansible.cfg 配置文件中有如下行:

log_path = /var/log/ansible.log

默认log_path这行是注释的,打开该行的注释,所有的命令执行后,都会将日志输出到/var/log/ansible.log文件。

转自

本文出自 “无名小卒” 博客,请务必保留此出处http://breezey.blog.51cto.com/2400275/1757635

时间: 2024-10-11 13:08:39

Ansible3:ansible.cfg配置说明【转】的相关文章

Ansible3:ansible.cfg配置说明

Ansible默认安装好后有一个配置文件/etc/ansible/ansible.cfg,该配置文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码.是否开启sudo认证.action_plugins插件的位置.hosts主机组的位置.是否开启log功能.默认端口.key文件位置等等. 具体如下:   [defaults]    # some basic default values...    hostfile       = /etc/ansible/hosts   \\指

ansible.cfg文件及host文件配置

inventory:资源清单文件的存放,资源清单就是一些主机的列表.可以指向一个文件也可以指向一个目录. 默认为: inventory      = /etc/ansible/hosts library:ansible的操作动作,指定ansible模块的目录. 默认为: library        = /usr/share/my_modules/ forks:设置ansible最多能有多少个进程同时工作. 默认为: forks          = 5 sudo_user:默认执行命令的用户,

ansible配置文件ansible.cfg详解

1)inventory 该参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表 inventory = /root/ansible/hosts 2)library Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录 library = /usr/share/ansible 3)forks 设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多

自动化运维工具ansible源码安装方法

1.首先查看python版本 [[email protected] ~]# python -V Python 2.6.6 注意安装ansible的时候,必须python的版本为2.6以上. 2.安装ansible 2.1 安装pycrypto模块 https://pypi.python.org/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gz # tar xvzf pycrypto-2.6.1.tar.gz # cd pycrypto-2.6.1

ansible安装

https://galaxy.ansible.com/  在线playbook分享平台 安装控制机准备: python2.6或者以上 paramiko模块 PyYAML Jinja2 httplib2 控制机的系统版本可以是:RedHat Debian CentOS OSX BSD等 查看被管节点如果类UNIX系统,则需要Python2.4或者以上版本 如果是windows ,则需要PowerShell3.0并且授权远程管理 安装Ansible 1.从GItHUb安装 提取Ansible代码 g

ansible组件

动态inventory,可以通过cmdb或者zabbix主机信息获取 只需要把ansible.cfg中inventroy的定义值改成一个执行脚本即可 脚本需要支持两个参数: --list或者-l ,这个参数显示所有主机的信息(json格式). --host或者-H ,参数后面指定一个host,会显示这台主机的所有信息 [[email protected] sh]# python hosts.py --list [[email protected] sh]# cat hosts.py  #!/us

ansible控制windows安装及运行error与解决方法

Q1:安装kerberos报错 $ sudo pip install kerberos running build_ext building 'kerberos' extension creating build creating build/temp.linux-x86_64-2.7 creating build/temp.linux-x86_64-2.7/src gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -

ansible学习一(安装)

Ansible是一种集成系统的配置管理工具,使用Ansible可以批量管理服务器,应用的部署,批量的执行命令,并且Ansible还是一款轻量的开源软件,Ansible部署简单,使用yum包就可安装,但是功能的确相当的丰富,所以今天特地来聊聊Ansible.Ansible还有一个特点就是无需安装agent,使用ssh认证就可以远程控制服务器,这也是我喜欢他的一个原因,如果你python够牛的话,还可以自己定制模块,并且还有api接口,许多自动化运维平台都是调用他的.首先,先看一下安装过程: 系统:

ansible安装配置与简单使用

前言: AnsibleWorks成立于2012年,由自动化工具Cobbler及Func的开发者Michael DeHaan创建.其Ansible平台是一个开源的配置及计算机管理平台.可实现多节点的软件部署,执行特定任务并进行配置管理. Ansible 跟其他IT自动化技术的区别在于其关注点并非配置管理.应用部署或IT流程工作流,而是提供一个统一的界面来协调所有的IT自动化功能,因此 Ansible的系统更加易用,部署更快.受管理的节点无需安装额外的远程控制软件,由平台通过SSH(Secure S