自动化运维工具Ansible----------1

1、ansible概述和运行机制

1.1、ansible概述

ansble是一个远程主机管理工具,ansible通过SSH协议实现远程节点和管理节点之间的通信的。ansible是python开发的,以来一些python库和组件,如paramiko,pyYaml和jinja三个关键组件。

1.2、ansible基本架构

ansble系统由管理节点和被管理节点组成,ansible在管理节点将ansible模块通过SSH协议管理远程服务器。

由上面图可以看出来ansible的组成是由5个部分组成

剧本:palybooks

ansible :ansible的核心程序

Midules:包括ansible自带的核心模块及自定义模块

1、Core Modules:Ansible管理主机之前先调用core Modules中的模块,然后指明管理Host Inventory中的主机,就可以完成管理主机

2、Custom Modules:自定义模块,完成Ansible核心模块无法完成的功能,此模块支持任何语言编写

 Plugins:模块功能补充,通过插件来实现记录日志,发送邮件或其他的功能

Connectior Plugins:连接插件,ansible基于连接插件连接到各个主机上,默认使用SSH

playbooks:剧本,YAML格式文件。实现自动化部署文件

Host Inventory:记录由ansible管理的主机信息,包括端口,密码,ip等

1.3、ansible任务执行方式

分为两种

1、an-hoc:ansible命令,命令行界面,单条命令的批量执行

2、playbook:剧本方式,通过多个任务完成一个总体的目标

这两种方式没有本质区别,Hoc用于临时命令,playbook也可以理解成是Hoc的集合,通过一定规则的编排在一起,也就是剧本

1.4、anisble的特点

1、部署简单,只需要在管理端部署ansibel环境,被管理端不需要做任何操作

2、默认使用SSH协议对设备进行管理

3、易读的语法:基于yaml语法编写playbook

4、模块化设计,调用特定的模块来完成特定的任务

5、基于python语言实现,由Paramiko(python的一个可并发连接ssh主机功能库), PyYAML和Jinja2(模板化)三个关键模块实现。支持API(供第三方程序调用的应用程序编程接口(API))及自定义模块,可通过Python轻松扩展

6、支持playbook剧本,通过playbook来定制强大的配置,状态管理

7、幂等性:一个任务执行一遍和执行n 遍效果是一样的,不会因为重复执行带来意外情况

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值