17,Ansible自动化管理工具服务
admin
2023-03-31 19:21:30
0

1,什么是Ansible
Ansible 是 python 中的一套模块,系统中的一套自动化工具,只需要使用 ssh 协议连接及可用来系统管理、自动化执行命令等任务。

2,为什么要用Ansible

  1. 可以实现批量系统操作配置
  2. 可以实现批量软件服务部署
  3. 可以实现批量文件数据分发
  4. 可以实现批量系统信息收集

3,使用Ansible的意义

  1. 提高工作的效率(部署综合架构)
  2. 提高工作准确度
  3. 减少维护的成本
  4. 减少重复性工作

4,安装部署

  1. 没有配置文件(不需要配置)
  2. 不需要启动服务
  3. 客户端没有需要部署任务

5,安装Ansible
yum -y install ansible
17,Ansible自动化管理工具服务

6,学习ansible主机清单
vi /etc/ansible/hosts
17,Ansible自动化管理工具服务
在上一单元SSH优化部分我们已经改变了端口,采用密钥登录,所以这里这样写反之,正常写
7,学习Ansible模块调用
首先就是要先打通ssh远程功能,ansible是建立在ssh通讯上实现的批量管理
1)ping模块
ansible 主机组名 -m 模块名
ansible nfs -m ping 调用ping模块

2)约等于万能模块shell (忘记这个命令吧,ansible支持2843个模块,每个命令都有自己的专门模块,不要都用shell来代替)
ansible nfs -m shell -a "各种命令"

8,yaml语法,这类语法调用模块更加细致,有更多的参数,有个一很大的有点就是不会重复执行,比如你在管理端对100台客户机执行脚本
中间报错了,可以直接再次执行而不报错 (ansible剧本)
特点:1)以缩进代表不同层级之间的关系
2)对索引有严格要求
1)file模块(每个模块的具体参数都在官方文档里有要自己会读https://docs.ansible.com/ansible/latest/modules)
ansible nfs -m file -a "path=/tmp/oldboy state=directory mode=644 owner=oldboy group=oldboy"

2)copy模块
ansible nfs -m copy -a "src=/etc/ssh/sshd_config dest=/tmp/ mode='644'"

3)script脚本模块
ansible nfs -m script -a "/server/scripts/xx.sh"

4)user用户模块(创建www用户和组uid和gid等于666,描述为oldboy,没有家目录,/sbin/nologin)
ansible nfs -m group -a "name=www gid=666"
ansible nfs -m user -a "name=www uid=666 comment=oldboy shell=/sbin/nologin create home=no"

5)cron模块
ansible nfs -m cron -a 'name="ntpdate" minute="*/5" job="ntpdate time1.aliyun.com"'

6)yum模块
ansible nfs -m yum -a "name=ntpdate state=lastest"

例1:搭建NFS服务
NFS服务端:

#!/bin/bash                                             

ansible nfs -m group -a "name=www gid=666 state=present"                        
ansible nfs -m user -a "name=www uid=666 group=666 shell=/sbin/nologin create_home=no"
ansible nfs -m yum -a "name=nfs-utils"                              
ansible nfs -m file -a "path=/data state=directory"                                         
ansible nfs -m copy -a "src=exports dest=/etc/exports backup=yes"   
ansible nfs -m service -a "name=rpcbind state=started enabled=yes"                          
ansible nfs -m service -a "name=nfs state=started enabled=yes"              
ansible nfs -m shell -a "showmount -e"                              

NFS客户端:

#!/bin/bash                                             

ansible nfs_client -m group -a "name=www gid=666 state=present"                                             
ansible nfs_client -m user -a "name=www uid=666 group=666 shell=/sbin/nologin create_home=no"   
ansible nfs_client -m yum -a "name=nfs-utils"       
ansible nfs_client -m file -a "path=/data state=directory"  
ansible nfs_client -m service -a "name=rpcbind state=started enabled=yes"   
ansible nfs_client -m shell -a "showmount -e 172.16.1.31"       
ansible nfs_client -m mount -a "src=172.16.1.31:/data path=/data fstype=nfs opts=defaults state=mounted"    

相关内容

热门资讯

OPPO因母亲节营销文案再次致... 极目新闻评论员 纪平在母亲节这个本应流淌着温情与感恩的日子里,OPPO却因为一则“我妈有两个‘老公’...
获假释出狱,泰国前总理他信称“... 【环球网报道 记者 张江平】综合路透社及泰国媒体报道,泰国前总理他信·西那瓦11日获假释出狱。当天晚...
女孩烧烤店墙上写《将进酒》 网...   女孩烧烤店墙上写《将进酒》  【女孩烧烤店墙上写《将进酒》】“君不见,黄河之水天上来,奔流到海不...
热水器20分钟左右就没热水了 热水器20分钟左右就没热水了: 单向阀出现了问题也会导致热水器的热水放不出来,当热水器加热使...
空调制热10分钟左右之后就跳闸... 原因可能是空调的电容问题,可以让电工师傅来检查下额定电流并加以修改;原因可能是空调的小路出现老化或漏...
格力空调10分钟左右就不制冷 原因有:制冷剂不足、制冷剂过多、.制冷系统脏堵、电控电路故障,这些都是造成格力空调10分钟左右就不制...
格力1.5匹变频挂机制冷十分钟... 可能是压缩机保护装置跳脱的现象。压缩机过载保护会跳脱,代表系统高压压力过高或过热电流过大。也可能是散...
电视每半小时40分钟左右都会闪... 如果电视每半小时40分钟左右就会出现黑屏的话,要考虑以下原因:可能是因为家庭使用电压不稳定;可能是因...
华硕TUF Gaming Pl... 5 月 11 日消息,华硕 (ASUS) 此前在官网上线了 TUF Gaming Platinum ...
云南将举办滇港“人工智能+”发... 人民网昆明5月10日电 (记者李发兴)5月9日,记者从云南省人民政府新闻办公室召开的滇港“人工智能+...