Linux之Ansible基础操作以及注意

前段时间用到了,过了几个星期觉得自己差不多快忘了,于是留下点东西

背景:需要一个脚本来自动化支持文件传输功能,将服务端传输到客户端,客户端可配置无需操作

采用原因:支持api操作,基于python开发,默认使用ssh登录,可扩展性强(主要是有老的项目用到了!)

废话不多说,直接上手!

推荐文章:https://ansible-book.gitbooks.io/ansible-first-book/

一安装

yum install python-pip 

pip install ansible

或者(推荐安装,这样配置文件比较固定在文件夹/etc/ansible/)

yum install epel-release -y

yum install ansible –y

这里我采用了第一种

这里都是文件,只好自己在有权限都文件夹下新建一个目录以及文件来包含需要传输的host

二:配置ssh免密登录

网上方法很多,可自行搜索解决

三:操作

第一步:测试是否连接:ansible all  -i /Users/zhouxl/ansible/inventorys/hosts -u ops  -a “pwd"

说明: all为hosts定义的ips集合 -i 后为取的hosts文件 -u 登录用户  -a  "pwd" 格式固定 

即证明服务端可联客户端

四:简单操作指令

传输文件:

ansible all  -i /Users/zhouxl/ansible/inventorys/hosts -u ops  -m copy -a "src=/Users/zhouxl/tuya/dome/README.md dest=/tmp”

说明:all为hosts定义的ips集合 -i 后为取的hosts文件 -u 登录用户  -m 方法名  -a “src=源文件地址  dest=目标文件夹”

文件传输成功!

五扩展脚本型任务ansible-playbook 

官方参考的实例地址https://github.com/ansible/ansible-examples

将上面任务改造如下:

https://ansible-book.gitbooks.io/ansible-first-book/advance/playbook/handler.html有更详细的

运行指令:

ansible-playbook -v -i /Users/zhouxl/ansible/inventorys/hosts /Users/zhouxl/tuya/dome/src/main/resources/application_test.yml

同样能达到目的!具体业务具体实现

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值