ansible的简单使用
环境搭建跳过(暂无,这个以后再学习学习,不要在意这些细节)
首先,在环境搭建好后,用两台虚机来做测试,一台192.168.181.130做测试机,一台192.168.181.131为批量处理服务器
编辑/home/ansible/app/ansible_config/hosts如下:(ip为需要远程管理的主机IP)
[test]
192.168.181.130 ansible_ssh_user=root ansible_ssh_pass=123456z
ansible_ssh_user=root是130这台服务器的用户,密码对应的为ansible_ssh_pass
这样将用户名和密码写清楚的做法,就可以处理130这台服务器,且不用通过免验证的方式
# 检查主机连接
# ansible caoguo -m ping
[root@python2 ansible_config]# su - ansible
[ansible@python2 ~]$ ansible test -m ping
192.168.181.130 | SUCCESS => {
"changed": false,
"ping": "pong"
}
[ansible@python2 ~]$ exit
logout
[root@python2 ansible_config]#
除此之外,hosts可以划多个部分,例如:
[fenghuo]
10.114.160.113 ansible_ssh_user=root ansible_ssh_pass=pass
10.114.160.114 ansible_ssh_user=root ansible_ssh_pass=pass
10.114.160.116 ansible_ssh_user=root ansible_ssh_pass=pass
10.114.160.117 ansible_ssh_user=root ansible_ssh_pass=pass
10.114.160.118 ansible_ssh_user=root ansible_ssh_pass=pass [test]
10.114.160.112 ansible_ssh_user=root ansible_ssh_pass=pass
有fenghuo和test两个组(友情建议,可以用ue与execl完美搭配)
实际情况下(我用vm的虚拟机桥接到真实环境),需要用一台服务器来测试自己的脚本:
测试test组(112这台服务器),一个拷贝文件到目标112服务器,一个是执行命令
ansible test -m copy -a "src=/tmp/fenghuochange.sh dest=/tmp"
ansible test -m shell -a 'sh /tmp/fenghuochange.sh'
fenghuochange脚本:
mv /etc/sysconfig/network-scripts/ifcfg-ens4f0 /etc/sysconfig/network-scripts/ifcfg-ens5f0
sed -i 's/ens4f0/ens5f0/g' /etc/sysconfig/network-scripts/ifcfg-ens5f0
sed -i 's/UUID/#UUID/g' /etc/sysconfig/network-scripts/ifcfg-ens5f0 mv /etc/sysconfig/network-scripts/ifcfg-ens4f1 /etc/sysconfig/network-scripts/ifcfg-ens5f1
sed -i 's/ens4f1/ens5f1/g' /etc/sysconfig/network-scripts/ifcfg-ens5f1
sed -i 's/UUID/#UUID/g' /etc/sysconfig/network-scripts/ifcfg-ens5f1 systemctl restart network
#简单的改变网卡信息
成功后:
[ansible@python2 ~]$ ansible test -m copy -a "src=/tmp/fenghuochange.sh dest=/tmp"
10.114.160.111 | SUCCESS => {
"changed": true,
"checksum": "7ec006d69c14a0477bade27c6946a0b9051bab",
"dest": "/tmp/fenghuochange.sh",
"gid": 0,
"group": "root",
"md5sum": "b09fa92337113022b6bd7106b87a84",
"mode": "0755",
"owner": "root",
"size": 489,
"src": "/root/.ansible/tmp/ansible-tmp-154065461.66-19901482505119/source",
"state": "file",
"uid": 0
}
[ansible@python2 ~]$
[ansible@python2 ~]$
[ansible@python2 ~]$ ansible test -m shell -a 'sh /tmp/fenghuochange.sh'
10.114.160.111 | SUCCESS | rc=0 >>
就可以批量处理fenghuo组了
[ansible@python2 ~]$ ansible fenghuo -m copy -a "src=/tmp/fenghuochange.sh dest=/tmp"
[ansible@python2 ~]$ ansible fenghuo -m shell -a 'sh /tmp/fenghuochange.sh'
ansible的简单使用的更多相关文章
- 自动化运维工具Ansible的简单使用
一 基础使用 1. 简介ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置. ...
- SaltStack 和 Ansible 的简单比较
https://blog.csdn.net/nqxqxq/article/details/76154847 https://www.cnblogs.com/lgeng/p/6567424.html ...
- ansible批量管理工具的搭建与简单的操作
ansible的安装 # [root@localhost ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@localhost ...
- Ansible简单介绍(一)
一 :ansible简单介绍 此名取自 Ansible 作者最喜爱的<安德的游戏> 小说,而这部小说更被后人改编成电影 -<战争游戏>. 官网地址:https://www.an ...
- Ansible 学习笔记
最近因为需要管理很多台机器,而这些机器又需要频繁重新安装,实在受不了Puppet需要在每个客户机上都安装一遍,于是转头开始学些Ansible.根据这段时间的使用,这个确实是神器,唯一的感觉就是相见恨晚 ...
- 翻译-Salt与Ansible全方位比较
原文链接:http://jensrantil.github.io/salt-vs-ansible.html 作者: Jens Rantil 之前某些时候我需要评估配置管理系统.结合从他人得到的意见,我 ...
- 自动化运维工具ansible学习+使用ansible批量推送公钥到远程主机
目录: 一.ansible简介 1.1.ansible是什么 1.2.ansible如何工作 1.3.ansible优缺点 1.4.ansible安装方式 1.5.ansible文件简单介绍 1.6. ...
- ansible
3.1 配置 #vim /etc/ansible/hosts //定义主机,支持IP和域名,支持分组 [local] 127.0.0.1 [nginx] 192.168.0.10 ...
- ansible playbook实践(二)-基础相关命令
ansible相关的命令: ansible 用来执行ansible管理命令 ansible-doc 用来获取模块的帮助文档 ansible-playbook 当有众多任务时,可编写成playbook ...
随机推荐
- 20155332 补交ch12课下作业
20155332 补交ch12课下作业 课下测试提交晚了,我课后补做了一遍,答对13题,答错3题. 试题内容如下所示: 课本内容 1.并发(Concurrency) 访问慢I/O设备:就像当应用程序等 ...
- BZOJ4145_The Prices_KEY
题目传送门 看到M<=16经典状态压缩的数据范围,考虑题目. 一道类似于背包的题目. 设f[i][j]表示前i个商店,物品购买状态为j. 先将f[i][j]加上w[i](到i的路费),转移一次, ...
- js 删除url指定参数
/** * 删除当前url中指定参数 * @param names 数组或字符串 * @returns {string} */ function funcUrlDel(names) { if(type ...
- 使用JDBC连接MySQL数据库
Java数据库连接(Java DataBase connectivity简称JDBC) 下载JDBC驱动:https://dev.mysql.com/downloads/connector/j/ Wi ...
- Qt-网易云音乐界面实现-1 窗口隐藏拖拽移动,自定义标题栏
最近也换了公司,也换了新的工作,工资也象征性的涨了一点点,但是最近心里还是慌慌,不知道为什么,没有那种踏实感,感觉自己随时可以被抛弃的感觉.感觉自己在荒废时间,也感觉自己在浪费生命. 为了让自己在被抛 ...
- Frida----基本代码
代码来自官网:https://www.frida.re/docs/examples/android/ import frida, sys def on_message(message, data): ...
- JAVA枚举操作(获取值,转map集合)
JAVA枚举相对来说比.NET的枚举功能强大,感觉就像是一种简化版的类对象,可以有构造方法,可以重载,可以继承接口等等,但不能继承类,JAVA枚举在实际开发中应用相当频繁,以下几个封装方法在实际开发中 ...
- C++设计模式(转)
在简书看到CharlesW同学学习设计模式的笔记,感觉很有意思(单身狗的妄想),转载下. 转载:https://www.jianshu.com/p/082662126bdd 好的软件设计是多用代码复用 ...
- 学习python最难的就是入门,而这文章刚好适合初学者!
Python可以应用于众多领域,如:数据分析.组件集成.网络服务.图像处理.数值计算和科学计算等众多领域.目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube.Dropbox.BT ...
- CHAPTER 19 Ordering the World 第19章 分类世界
CHAPTER 19 Ordering the World 第19章 分类世界 Our planet is home to a bewildering variety of plants and an ...