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 ...
随机推荐
- 可变多隐层神经网络的python实现
说明:这是我对网上代码的改写版本,目的是使它跟前一篇提到的使用方法尽量一致,用起来更直观些. 此神经网络有两个特点: 1.灵活性 非常灵活,隐藏层的数目是可以设置的,隐藏层的激活函数也是可以设置的 2 ...
- [ATL/WTL]_[初级]_[关于graphics.DrawImage绘图时显示不正常的问题]
场景 1.使用win32绘图时, 最简单的api是使用 graphics.DrawImage(image,x,y)来绘制, 可是这个api有个坑,它的图片显示完整和设备分辨率(显卡)有关. 说明 1. ...
- 1o xiaomi
atom 取色器 div.contine tab 补齐
- P3674 小清新人渣的本愿
P3674 小清新人渣的本愿 一道妙不可言的题啊,,, 一看就知道是个莫队 考虑求答案 1号操作就是个大bitset,动态维护当前的bitset \(S\),把能取哪些值都搞出来,只要\(S\ and ...
- eclipse - 新建jsp页面默认模板设置
有时候我们自己如果没有现成的JSP模板时,系统一般会自动生成如下页面: 这个页面显然并不是我们所需要的,所以我们需要修改默认模板 进入 修改 <%@ page language="ja ...
- 12只超酷机器人,在家用3D打印搞定!
3D打印最吸引人的地方在于它完全无极限!现在的3D打印已经广范应用在我们的生活.以及工业上的各个领域.最棒的是,DIY玩家可以真正从中受益.我们现在已经可以应用3D打印,在家制作自己的机器人了.如果你 ...
- PHP 用户密码加密函数password_hash
传统的用户名和密码都采用加盐的方式存储加密信息,盐值也需要存储. 自PHP5.5.0之后,新增加了密码散列算法函数(password_hash),password_hash() 使用足够强度的单向散列 ...
- 自动化jenkins报:ModuleNotFoundError: No module named 'common'
直接执行脚本是没有问题,报如下错误: 你已经在run.py脚本加路径了为什么还会报这个错呢,就是你加的路径,应该在所有的包上面,才不会报这个错,如下: 注:以下是我的解决方法仅作参考.如果我的发表的内 ...
- RenderSprite小记
类型定义: /** @private */ public static const IMAGE:int = 0x01; /** @private */ public static const ALPH ...
- oozie捕获标准输出&异常capture-output
对于普通的java-action或者shell-action 都是支持的只要标准输出是"k1=v1"这中格式的就行: 现用test.py进行测试: ##test.py #! /op ...