您的位置:首页 > 运维架构

自动化运维工具之ansible

2016-02-16 17:06 495 查看

维护的机器很多时有时需要批量部署。

一、什么样的情形需要批量部署

1、操作系统的安装

常见的有collber,red hat satelite(redhat)系统专用。

2、操作系统的配置

常见的有cfengine,puppet,chef,func。其中puppet最受欢迎

3、批量程序的部署

4、批量命令的运行查看状态信息

二、ansible介绍

ansible的架构大致如下





ansible是新出现的运维工具是基于Python研发的糅合了众多老牌运维工具的优点实现了批量操作系统配置、批量程序的部署、批量运行命令等功能。

ansible是工作在agentless模式下具有幂等性。ansible在控制端只需要告诉监控端的期望状态就可以实现批量部署。

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

连接插件connection plugins负责和被监控端实现通信。

Host Inventory:指定操作的主机,是一个配置文件里面定义监控的主机

各种模块核心模块command模块自定义模块

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

PlayBooks:剧本执行多个任务时。并非必需可以让节点一次性运行多个任务

三、ansible的基本使用





ansible示例

1、查看时间信息。command、shell模块





2、在控制端添加添加用户。user模块





3、实现ssh秘钥认证。shell、copy模块





此时就可以实现基于ssh秘钥通信了此时/etc/ansible/hosts可以修改如下





4、安装软件和启动服务。yum、service模块









5、支持管道的命令。raw模块,类似于shell模块





四、YAML语言介绍

1、YAML简介

2、ymal中的变量

3、Inentory文件的格式

4、playbooks

5、tags

结果示例





查看端口





此时如果配置文件发生变化





至此基本使用配置完成。

本文出自 “逆水寒” 博客,请务必保留此出处/article/4422394.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: