ansible 配置——常用模块(一)

ansible特点

Ansible和SaltStack一样是基于Python开发,Ansible只需要在一台普通的服务器上运行即可,不需要在客户端服务器上安装客户端。因为Ansible基于SSH远程管理,而Linux服务器大部分都离不开SSH,所以Ansible不需要为配置添加额外的支持。
Ansible安装使用都很简单,而且基于上千个插件和模块,实现各种软件、平台、版本的管理,支持虚拟容器多层级的部署。
有时候会觉得Ansible比SaltStack执行效率慢,其实并不是软件本身的问题,二是由于SSH服务慢,可以通过优化SSH连接速度和使用Ansible加速模块提高效率
Ansible管理工具的优点

  • 轻量级,更新时只需要在操作机上进行一次更新即可
  • 采用SSH协议
  • 不需要客户端安装agent
  • 批量任务执行可以写成脚本,并且不需要分发到客户端
  • 使用Python编写,维护简单
  • 支持sudo普通用户命令
  • 去中心化管理

Ansible 安装

ansible-2.9.11-1.el8.noarch.rpm  sshpass-1.06-9.el8.x86_64.rpm
##需要的两个rpm包——python依赖性在rhel8本地仓库

在这里插入图片描述

[root@server151 rpm]# ansible --version

在这里插入图片描述
基于Ansible批量管理,需要将被管理的服务器IP列表添加到/etc/ansible/hosts文件中,当然本机也可以是被管理机器
Ansible自动运维工具管理客户端的案例操作,由于Ansible管理远程服务器是基于SSH,在登录远程服务器执行命令时需要远程服务器的用户名和密码,也可以加入-k参数手动输入密码或者基于ssh-keygen生成免密钥

[root@server151 rpm]# cd /etc/ansible/
[root@server151 ansible]# ls
ansible.cfg  hosts  roles
##ansible.cfg    主配置文件
## hosts		清单文件

ansible [-m module_name] [-a args]
–version 显示版本
-m module 指定模块,默认为command
-v 详细过程 –vv -vvv更详细
–list-hosts 显示主机列表,可简写 --list
-k, --ask-pass 提示输入ssh连接密码,默认Key验证
-C, --check 检查,并不执行
-T, --timeout=TIMEOUT 执行命令的超时时间,默认10s
-u, --user=REMOTE_USER 执行远程执行的用户

ansible.cfg 配置文件常用参数

[defaults]      ##基本信息设定
#inventory      = /etc/ansible/hosts            ##指定清单路径
#remote_user = root                             ##在受控主机上登陆的用户名称,未指定则为当前使用用户
#ask_pass      = True                           ##是否提示输入ssh密码,如果公钥登陆设定为false
#library        = /usr/share/my_modules/        ##库文件存放目录
#local_tmp      = ~/.ansible/tmp                ##本机临时命令存放目录
#remote_tmp     = ~/.ansible/tmp                ##远程主机临时py命令存放目录
#forks          = 5                             ##默认并发量
#host_key_checking = False                      ##第一次连接受管控主机时是否输入yes建立host_key
#sudo_user      = root                          ##默认sudo用户
#ask_sudo_pass = True                           ##每次受控主机执行ansible命令时是否询问sudo密码
#module_name = command                          ##默认模块,默认使用command 可修改为shell
#log_path = /var/log/ansible.log                ##日志文件路径

[privilege_escalation]                          ##身份信息设定
#become=True                                    ##连接后是否自动切换用户
#become_method=sudo                             ##设定切换用户方式 通常为sudo
#become_user=root                               ##在被控主机上切换的用户 不建议使用root用户
#become_ask_pass=False                          ##是否需要为becone_method提示输入密码。默认为false

资源清单

资源清单文件目录
/etc/ansible/hosts

列出资源清单测试_1

[root@server151 ansible]# vim hosts 
www.test.org
www.test1.org
[test]##指定组的名称
172.25.254.152

[root@server151 ansible]# ansible all --list
  hosts (3):
    www.test.org
    www.test1.org
    172.25.254.152
###列出所有资源

[root@server15
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值