文章目录

  • 1.简介
  • 2.安装
  • 3.常用命令选项说明
  • 4.使用
    • 4.1.执行远程命令
    • 4.2.执行远程脚本
    • 4.3.分发文件到远程服务器
      • 4.3.1.复制单个文件
      • 4.3.2.复制压缩文件到远程并解压
    • 4.4.修改文件内容
      • 4.4.1.插入或者替换文件内容
      • 4.4.2.删除文件内容

1.简介

ansible是一个自动化运维工具,基于python开发,实现了批量系统配置、批量程序部署、批量命令执行等功能;

2.安装

只需要在客户端机器上安装ansible命令,无需每台服务器都安装。
安装命令:yum install -y ansible

3.常用命令选项说明

-i:指定host文件路径
-m:模块名称
-a:模块参数
-f:执行线程数

4.使用

编写一个inventory文件,文件名字可以随便定义,这里我们命名为hosts,文件内容格式如下:

格式1:

[all:vars]
ansible_ssh_passwd=xxxx     #ssh访问密码[ip_list]  #需要操作的服务器IP列表
192.168.1.1
192.168.1.2
192.168.1.3

格式2:
使用以下格式时,每个IP需要使用不同的名字。

[all:vars]
ansible_ssh_passwd=xxxx     #ssh访问密码[ip_1] #需要操作的服务器IP列表
192.168.1.1
[ip_2]
192.168.1.2
[ip_3]
192.168.1.3//例
ansible -i hosts ip_1 -m shell -a "df -h"
ansible -i hosts ip_2 -m shell -a "df -h"
ansible -i hosts ip_3 -m shell -a "df -h"

4.1.执行远程命令

ansible -i hosts ip_list -m shell -a "df -h"

4.2.执行远程脚本

ansible -i hosts ip_list -m script -a "start.sh"#拷贝start.sh脚本到远程服务器并执行。

4.3.分发文件到远程服务器

4.3.1.复制单个文件

ansible -i hosts ip_list -m copy -a "src=/opt/sourcefile dest=/opt/targetfile"

4.3.2.复制压缩文件到远程并解压

ansible -i hosts ip_list -m unarchive -a "src=/opt/test.tar.gz dest=/opt/"

4.4.修改文件内容

4.4.1.插入或者替换文件内容

  • 当指定内容不存在则插入一行到文件末尾,如果存在则忽略不做任何操作:
    ansible -i hosts ip_list -m lineinfile -a "path=/opt/test.txt line='test file update'"

  • 替换文件中匹配正则的行成指定内容(line中的内容),如果多次匹配则只替换最后一次匹配行;当指定内容匹配不上则插入一行到文件末尾:
    ansible -i hosts ip_list -m lineinfile -a "path=/opt/test.txt regexp='compress.type=*' line='test file update'"

4.4.2.删除文件内容

  • 删除文件中和指定内容相同的所有行:
    ansible -i hosts ip_list -m lineinfile -a "path=/opt/test.txt line='test file update' state=absent"

  • 删除文件中匹配正则的所有行:
    ansible -i hosts ip_list -m lineinfile -a "path=/opt/test.txt regexp='compress.type=*' line='test file update' state=absent"

Linux 自动化运维工具 ansible相关推荐

  1. Linux自动化运维工具ansible详解

    文章目录 认识ansible ansible的组成 ansible的相关文件 ansible的使用 ansible的常用模块 1.copy模块 2.fetch模块 3.command模块 4.shel ...

  2. 自动化运维工具——ansible安装及模块介绍

    ansbile 前言 一.主流自动化运维工具简介 1.1 Puppet 1.2 Saltstack 1.3 Ansible 二.Ansible 运维工具原理 三.Ansible安装 3.1 下载软件包 ...

  3. 自动化运维工具ansible(安装与模块介绍)

    自动化运维工具ansible(安装与模块介绍) 一.ansible运维工具概述 (一).ansible的特点 (二).ansible的原理 (三)ansible的优点 二.安装ansible 三.an ...

  4. 自动化运维工具Ansible实战---常用模块

    Ansible默认提供了很多模块来供我们使用.在Linux中,我们可以通过 ansible-doc -l 命令查看到当前Ansible支持哪些模块,通过 ansible-doc -s [模块名] 又可 ...

  5. 自动化运维工具ansible的安装管理以及模块介绍

    自动化运维工具ansible的安装管理以及模块介绍 目录 自动化运维工具ansible的安装管理以及模块介绍 一.ansible概述 1.几种常用运维工具比较 2.Ansible简介 3.Ansibl ...

  6. 自动化运维工具-Ansible的Playbook的使用

    Playbook的使用 前言 一.Playbook是什么? 二.playbook使用场景 三.Playbook格式说明 四.Play book变量的使用 1 在主机列表定义变量 2 在playbook ...

  7. 自动化运维工具-Ansible实战指南

    Ansible实战 前言 一.Ansible简介 1.ansible是什么? 2.ansible特点 3.ansible架构 主要模块 工作流程 命令执行过程 二.Ansible 配置 1 安装ans ...

  8. 自动化运维工具----ansible

    自动化运维工具----ansible ansible是新出现的运维工具是基于Python研发的糅合了众多老牌运维工具的优点实现了批量操作系统配置.批量程序的部署.批量运行命令等功能. 主要模块以及功能 ...

  9. 自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客

    自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客 自动化运维工具Ansible详细部署 - 人生理想在于坚持不懈 - 51CTO技术博客 自动化运维工具Ansib ...

最新文章

  1. Python类与对象
  2. windows node.js 安装
  3. 机器学习虽好,也要看什么场合!
  4. 利用circpedia 数据库探究circRNA的可变剪切
  5. 一场低调的逆袭:清华文化如何改变了王兴和美团?
  6. oracle 如何显示 比例,Oracle中如何兼得比例和时间
  7. Go的协程与Swoole的协程的区别:环境支持 线程
  8. (转)博弈 SG函数
  9. 102、如何滚动更新 Service (Swarm09)
  10. mysql事务和非事物_mysql事务型与非事务型表1.8.5.3. 事务和原子操作
  11. 网友反映摩拜单车无法扫码 回应:系技术问题 现已恢复服务
  12. Java学习系列(十九)Java面向对象之数据库编程
  13. JDialog简单使用
  14. CSS3动画框架 Animate.css
  15. springboot的web进阶知识(2)
  16. 互联网定律及效应汇编
  17. IDA6.8 爱加密脱壳简单示例
  18. karabiner macOs Sierra不可用后的临时解决方法
  19. Java游戏服务器架构的并发问题及解决方案
  20. 你给员工吃草,还指望他们有狼性?

热门文章

  1. Access“INSERT INTO 语句的语法错误”解决办法
  2. pydev导入eclipse
  3. oracle的错误代码如何查看对应的错误信息
  4. [jQuery原理] jQuery基本结构
  5. HTML-浮动(特点-影响-居中)-定位
  6. 探索MicroPython(四)--传感器应用
  7. LibLinear(SVM包)使用说明之(二)MATLAB接口
  8. easyPR源码解析之plate_judge.h
  9. python兔子和獾_少儿编程分享:手把手教你用PYTHON编写兔獾大作战(三)
  10. Github客户端使用教程