Ansible服务端安装与配置

2022-05-24 17:16:48 浏览数 (1)

1、ansible是自动化运维工具,基于Python开发,实现批量部署、配置、运行等。

2、ansible基于SSH端口,客户端不需要安装,只需要在服务端安装。

3、以下为测试用机:

用途

系统

IP

服务端

Linux7.2

52.244

客户端

Linux7.2

52.245

客户端

Linux7.2

52.246

客户端

Linux7.2

52.247

4、服务端安装:yum install -y ansible

5、安装完成后,配置文件生成在/etc/ansible 文件夹里,其中ansible.cfg为配置文件,hosts为主机文件,roles文件夹存放yml文件

image.png

ansible.cfg中要加入host_key_checking = False ,免去第一次连接出现保存密钥指纹的提示:

image.png

6、然后编辑hosts文件,给要分的host组各提供一个自定义的组名,其中ansible_ssh_user=root ansible_ssh_pass="xxxxx" ansible_ssh_port=22分别为登录的账号、密码、端口,因为后面会做SSH免密登录,这里只需要写账号不需要写密码,而端口默认是22,也不用写。 [testlinux:children]是把以上的几个test组再合并成一个组,这里testlinux名字自取,children为ansible的默认参数

image.png

7、配置完host后,需要做免密登录,生成密钥:ssh-keygen -t rsa;复制密钥:ssh-copy-id root@172.16.xxx.xxx

image.png

8、检测通信是否正常(Linux):ansible testlinux -m ping ,通信正常返回:"ping": "pong"

image.png

9、ansible.cfg相关的配置及说明: [defaults] # some basic default values... #inventory = /etc/ansible/hosts hostfile = /etc/ansible/conf/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 #cache_plugins = /usr/share/ansible/plugins/cache #callback_plugins = /usr/share/ansible/plugins/callback #connection_plugins = /usr/share/ansible/plugins/connection #lookup_plugins = /usr/share/ansible/plugins/lookup #inventory_plugins = /usr/share/ansible/plugins/inventory #vars_plugins = /usr/share/ansible/plugins/vars #filter_plugins = /usr/share/ansible/plugins/filter #test_plugins = /usr/share/ansible/plugins/test #strategy_plugins = /usr/share/ansible/plugins/strategy 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

0 人点赞