环境搭建跳过(暂无,这个以后再学习学习,不要在意这些细节)

首先,在环境搭建好后,用两台虚机来做测试,一台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的简单使用的更多相关文章

  1. 自动化运维工具Ansible的简单使用

    一 基础使用 1. 简介ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置. ...

  2. SaltStack 和 Ansible 的简单比较

    https://blog.csdn.net/nqxqxq/article/details/76154847 https://www.cnblogs.com/lgeng/p/6567424.html   ...

  3. ansible批量管理工具的搭建与简单的操作

    ansible的安装 # [root@localhost ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@localhost ...

  4. Ansible简单介绍(一)

    一 :ansible简单介绍 此名取自 Ansible 作者最喜爱的<安德的游戏> 小说,而这部小说更被后人改编成电影 -<战争游戏>. 官网地址:https://www.an ...

  5. Ansible 学习笔记

    最近因为需要管理很多台机器,而这些机器又需要频繁重新安装,实在受不了Puppet需要在每个客户机上都安装一遍,于是转头开始学些Ansible.根据这段时间的使用,这个确实是神器,唯一的感觉就是相见恨晚 ...

  6. 翻译-Salt与Ansible全方位比较

    原文链接:http://jensrantil.github.io/salt-vs-ansible.html 作者: Jens Rantil 之前某些时候我需要评估配置管理系统.结合从他人得到的意见,我 ...

  7. 自动化运维工具ansible学习+使用ansible批量推送公钥到远程主机

    目录: 一.ansible简介 1.1.ansible是什么 1.2.ansible如何工作 1.3.ansible优缺点 1.4.ansible安装方式 1.5.ansible文件简单介绍 1.6. ...

  8. ansible

    3.1 配置 #vim /etc/ansible/hosts       //定义主机,支持IP和域名,支持分组 [local] 127.0.0.1 [nginx] 192.168.0.10     ...

  9. ansible playbook实践(二)-基础相关命令

    ansible相关的命令: ansible  用来执行ansible管理命令 ansible-doc 用来获取模块的帮助文档 ansible-playbook 当有众多任务时,可编写成playbook ...

随机推荐

  1. jQuery学习- 子选择器与可见性选择器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. python+soket实现 TCP 协议的客户/服务端中文(自动回复)聊天程序

    [吐槽] 网上的代码害死人,看着都写的言之凿凿,可运行就是有问题. 有些爱好代码.喜欢收藏代码的朋友,看到别人的代码就粘贴复制过来.可是起码你也试试运行看啊大哥 [正文] 昨日修改运行了UDP协议的C ...

  3. 【HNOI2017】单旋

    题面 题解 trajan的spaly是O(1)的(逃 通过看题解手玩发现只要将最值的点放到树根,其他的父子关系不需要变. 于是想到动态连边和断边的数据结构:\(\mathrm{LCT}\),于是用\( ...

  4. Winform下的语言国际化,几行代码轻松实现

    最近做了一些关于winform的项目,需要用到winform的语言国际化,在初使化的时候用起来非常方便.可以参考一下: 核心逻辑: 预览效果演示: OK,以下是核心代码和操作流程 一,添加Langua ...

  5. 电梯调度 结对项目开发(郭林林&胡潇丹)

    (一)需求分析: 上升,下降,开门,关门: 超过负载以后发出警报,下去乘客: 电梯出现故障后,电梯停止: 电梯楼层的输入框可以同时指定所要到的楼层,也是楼层的显示框: 电梯同时记录多个状态,即为到达多 ...

  6. web小结

    一.ajax 1.用于前端向服务器异步获取数据 json数组:可以直接通过数组下标获取到值 json对象:可以用“data.xx”获取到值 2.注意事项 同时请求两个ajax时,容易出现异常,第一个a ...

  7. CHAPTER 19 Ordering the World 第19章 分类世界

    CHAPTER 19 Ordering the World 第19章 分类世界 Our planet is home to a bewildering variety of plants and an ...

  8. python打印对象的所有可操作内容

    print('\n'.join(['%s:%s' % item for item in 对象.__dict__.items()]))

  9. 笔记:《机器学习训练秘籍》——吴恩达deeplearningai微信公众号推送文章

    说明 该文为笔者在微信公众号:吴恩达deeplearningai 所推送<机器学习训练秘籍>系列文章的学习笔记,公众号二维码如下,1到15课课程链接点这里 该系列文章主要是吴恩达先生在机器 ...

  10. GTK 预置对话框 GtkDialog 文件/颜色/字体选取等 GtkFileSelection

    (GTK2) 文档链接 作用:打开一个预置的对话框,如文件选取对话框 GtkFileSelection 效果下图所示 ╰── GtkDialog ├── GtkAboutDialog ├── GtkC ...