1、Ansible是一款极为灵活的开源工具套件,能够大大简化Unix管理员的自动化配置管理与流程控制方式。可以通过命令行或者GUI来使用Ansible,运行Ansible的服务器这里俗称“管理节点”;通过Ansible进行管理的服务器俗称“受控节点”。

Ansible自动运维管理工具优点:

1) 轻量级,更新时,只需要在操作机上进行一次更新即可;

2)  采用SSH协议;

3)  不需要去客户端安装agent;

4)  批量任务执行可以写成脚本,而且不用分发到远程就可以执行;

5)  使用python编写的,维护更简单;

6)  支持sudo普通用户命令;

7)  去中心化管理。

结构拓扑

2、Ansible安装配置

rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install epel-release -y
yum install ansible -y

ansible默认主配置目录/etc/ansible/,其中hosts文件为被管理机IP或者主机名列表,ansible.cfg为ansible主配置文件,roles为角色或者插件路径,默认该目录为空

Ansible远程批量管理,其中执行命令是通过Ad-Hoc来完成,也即点对点单条执行命令,能够快速执行,而且不需要保存执行的命令。默认hosts文件配置主机列表,可以配置分组,可以定义各种ip及规则

可以使用ansible-doc -l|more查看ansible支持的模块 也可以查看每个模块的帮助文档,ansible-doc  module_name

3、Ansible工具参数详解

基于Ansible批量管理之前,需将被管理的服务器IP列表添加至/etc/ansible/hosts文件

由于Ansible管理远程服务器基于SSH,在登录远程服务器执行命令时需要远程服务器的用户名和密码,也可以加入-k参数手动输入密码或者基于ssh-keygen生成免秘钥。

Ansible自动化批量管理工具主要参数如下:

-v,–verbose                              打印详细模式;
-i PATH,–inventory=PATH 指定host文件路径;
-f NUM,–forks=NUM 指定fork开启同步进程的个数,默认5;
-m NAME,–module-name=NAME 指定module名称,默认模块command;
-a MODULE_ARGS module模块的参数或者命令;
-k,–ask-pass 输入远程被管理端密码;
–sudo 基于sudo用户执行;
-K,–ask-sudo-pass 提示输入sudo密码与sudo一起使用;
-u USERNAME,–user=USERNAME 指定移动端的执行用户;
-C,–check 测试执行过程,不改变真实内容,相当于预演;
-T TIMEOUT, 执行命令超时时间,默认为10秒;
--version 查看Ansible软件版本信息。

Ansible 管理机与被管理机做秘钥认证

ssh-keygen
ssh-copy-id -i root/.ssh/id_rsa.pub -p root@192.168.0.112

4、Ansible ping模块

ansible -k all  -m ping

5、Ansible command模块

Ansible command模块为ansible默认模块,主要用于执行Linux基础命令,可以执行远程服务器命令执行、任务执行等操作。Command模块使用详解

Chdir                    执行命令前,切换到目录;
Creates 当该文件存在时,则不执行该步骤;
Executable 换用shell环境执行命令;
Free_form 需要执行的脚本;
Removes 当该文件不存在时,则不执行该步骤;
Warn 如果在ansible.cfg中存在告警,如果设定了False,不会警告此行。

1)Ansible command模块远程执行date命令

ansible -k -i /etc/ansible/hosts  all  -m command -a  "date"

2)Ansible command模块远程执行ping命令

3)Ansible Hosts模式远程执行df -h

Ansible运维工具的更多相关文章

  1. ansible运维工具(一)

    运维工具介绍 OS Provisioning: PXE, Cobbler(repository, distritution,profile) PXE: dhcp, tftp, (http, ftp) ...

  2. ansible运维工具(二)

    ansible playbook(二) 运行palybook时 要使用ansible-playbook命令 palybook执行任务的顺序是,在第一个主机上完成第一个任务,然后在第二个主机上完成第一个 ...

  3. ansible运维工具,dhcp,cobbler

    1.借助Ansible Playbook自动化搭建LNMP环境(可借助yum) 通过yum方式安装ansible,先安装epel仓库 yum install epel-release 安装epel仓库 ...

  4. 在CentOS7.6上安装自动化运维工具Ansible以及playbook案例实操

    前言 Ansible是一款优秀的自动化IT运维工具,具有远程安装.远程部署应用.远程管理能力,支持Windows.Linux.Unix.macOS和大型机等多种操作系统. 下面就以CentOS 7.6 ...

  5. 自动化运维工具Ansible详细部署 (转载)

    自动化运维工具Ansible详细部署 标签:ansible 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog. ...

  6. 自动化运维工具之 Ansible 介绍及安装使用

    一.初识Ansible 介绍: Absible 使用 模块(Modules)来定义配置任务.模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等.A ...

  7. 自动化运维工具之ansible

    自动化运维工具之ansible   一,ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fab ...

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

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

  9. 自动化运维工具Ansible详细部署

    本文来源:http://sofar.blog.51cto.com/353572/1579894/ 前言 一个由 Python 编写的强大的配置管理解决方案.尽管市面上已经有很多可供选择的配置管理解决方 ...

随机推荐

  1. WEBBASE篇: 第四篇, CSS知识2

    CSS知识2 一, 尺寸 与 边框 CSS单位 1,尺寸单位:(1)px 像素   (2)%   (3) in 英寸  lin = 2.54cm (4)pt 磅 1pt = 1/72in    ppi ...

  2. input[type='file']默认样式

    <input type="file" name="" id="" value="" /> 当input的ty ...

  3. Ubuntu16.04的sublime text3 的安装教程

    1. sublime text3的官网位置 https://www.sublimetext.com/3 2.apt安装方式 1.  安装 GPG -key: wget -qO - https://do ...

  4. Java基础之枚举类型

    枚举 为什么需要枚举 在Java开发过程中,有时需要定义一系列有限的数据,如:月份.星期等.<br> java1.5之前,主要通过定义一系列静态常量完成. class Genders{ p ...

  5. solr 学习笔记(一)--搜索引擎简介

    一 搜索引擎是什么一套可对大量结构化.半结构化数据.非结构化文本类数据进行实时搜索的专门软件最早应用于信息检索领域,经谷歌.百度等公司推出网页搜索而为大众广知.后又被各大电商网站采用来做网站的商品搜索 ...

  6. python------面向对象进阶反射详解(重点)

    一.反射 通过字符串映射或者修改程序运行时的状态,属性,或者方法. 1.getattr(object,name,default=None) 2.hasattr(object,name) 3.setat ...

  7. 阻塞I/O、非阻塞I/O和I/O多路复用

    一.阻塞I/O 首先,要从你常用的IO操作谈起,比如read和write,通常IO操作都是阻塞I/O的,也就是说当你调用read时,如果没有数据收到,那么线程或者进程就会被挂起,直到收到数据.阻塞的意 ...

  8. Linux LVM使用小记

    对于Linux LVM一直不太理解,直到最近使用了简单功能后才稍微明白点. 对于硬盘空间物理上的使用,我们都是先对硬盘进行分区,然后格式化成文件系统支持的类型,最后给操作系统使用.但是这种使用方式很不 ...

  9. vs2017 打开cs文件提示无法识别的GUID格式

    总结一句话 no zuo no die. 是我自己在注册表中给vs增加了自动以管理员身份运行,把值给错了,弄成了 ~ RUNASADMIN WIN7RTM, 改成 ~ RUNASADMIN 后OK.还 ...

  10. 用virtualenv建立独立虚拟环境 批量导入模块信息

    pip3 install virtualenv mkdir env/env1 source bin/activate pip3 freeze >requirements.txt or pipre ...