雏鹰部落

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 422|回复: 0

[学习/资料] 【SPOTO思博网络】【网工入门基础】网络自动化——Ansible

[复制链接]
发表于 2022-3-1 15:39:03 | 显示全部楼层 |阅读模式
Ansible 是近年来越来越火的一款开源运维自动化工具,也是一款为类Unix系统开发的自由开源的配置和自动化工具。






可以从图中看到,官网上面是有红帽标志的,因为红帽公司于2015年10月收购了ansible,ansible成立于2013年。


它用Python写成,类似于saltstack和Puppet,但是有一个不同和优点是我们不需要在节点中安装任何客户端。


它使用SSH来和节点进行通信。Ansible基于 Python paramiko 开发,分布式,无需客户端,轻量级,配置语法使用 YMAL 及 Jinja2模板语言,更强的远程命令执行操作。


通过Ansible可以实现运维自动化,提高运维工程师的工作效率,减少人为失误。


它基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。




Ansible 通过本身集成的非常丰富的模块可以实现各种管理任务,其自带模块超过上千个。


更为重要的是,它操作非常简单,即使小白也可以轻松上手,但它提供的功能又非常丰富,在运维领域,几乎可以做任何事。


file:///C:/Users/SPOTO/AppData/Local/Temp/ksohtml/wps87CF.tmp.jpg
ansible 的特点
(1)部署简单,没有客户端,只需在主控端部署Ansible环境,被控端无需做任何操作

(2)模块化:调用特定的模块,完成特定任务

(3) 默认使用SSH协议对设备进行管理

(4)主从集中化管理

(5)配置简单、功能强大、扩展性强

(6)支持API及自定义模块,可通过Python轻松扩展

(7)通过Playbooks来定制强大的配置、状态管理

(8)对云计算平台、大数据都有很好的支持

(9)具有幂等性:一个操作在一个主机上执行一遍和执行N遍的结果是一样的


ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:


(1)连接插件connection plugins:负责和被监控端实现通信

(2)host inventory:指定操作的主机,是一个配置文件里面定义监控的主机

(3)各种模块核心模块、command模块、自定义模块

(4)借助于插件完成记录日志邮件等功能

(5)playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务


ansible的工作机制


Ansible 在管理节点将 Ansible 模块通过 SSH 协议推送到被管理端执行,执行完之后自动删除,可以使用 SVN 等来管理自定义模块及编排。


由图可以看出Ansible的组成由一下模块组成:


file:///C:/Users/SPOTO/AppData/Local/Temp/ksohtml/wps87D0.tmp.jpg


Ansible:ansible的核心模块

Host Inventory:主机清单,也就是被管理的主机列表

Playbooks:ansible的剧本,可想象为将多个任务放置在一起,一块执行

Core Modules:ansible的核心模块

Custom Modules:自定义模块

Connection Plugins:连接插件,用于与被管控主机之间基于SSH建立连接关系

Plugins:其他插件,包括记录日志等



file:///C:/Users/SPOTO/AppData/Local/Temp/ksohtml/wps87D1.tmp.jpg
16张图读懂ansible

file:///C:/Users/SPOTO/AppData/Local/Temp/ksohtml/wps87D2.tmp.jpg
















文章来源:部分内容综合自网络,由“网络工程师俱乐部”梳理成文。因觉优质,特此分享。

进入全国网络工程师交流群 ,请扫描下方二维码↓↓↓
群里有行业大咖、实战分享、技术交流、技术咨询、企业内推等机会
若群满,请添加老杨微信(spotoa),邀你进群




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|熊猫同学技术论坛|小黑屋| 网络工程师论坛 ( 沪ICP备09076391 )

GMT+8, 2024-12-4 01:11 , Processed in 0.109291 second(s), 19 queries , Gzip On.

快速回复 返回顶部 返回列表