Ansible自动化运维

ansible自动化运维-简介(定义和原理)

一:定义

ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点 ,实现了批量系统配置、批量程序部署、批量运行命令等功能
ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架 。
主要包括:(1)、连接插件connection plugins:负责和被监控端实现通信;
(2)、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
(3)、各种模块核心模块、command模块、自定义模块;
(4)、借助于插件完成记录日志邮件等功能;
(5)、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务

二:ansible 简介

ansible是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块 ,ansible只是提供一种框架。
ansible不需要在远程主机上安装client/agents,因为它们是基于ssh来和远程主机通讯的
ansible 特点:
1.部署简单,只需在主控端部署Ansible环境,被控端无需做任何操作;
2.默认使用SSH协议对设备进行管理;
3.有大量常规运维操作模块,可实现日常绝大部分操作;
4.配置简单、功能强大、扩展性强;
5.支持API及自定义模块,可通过Python轻松扩展;
6.通过Playbooks来定制强大的配置、状态管理;
7.轻量级,无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可;
8.提供一个功能强大、操作性强的Web管理界面和REST API接口——AWX平台。

三:ansible 架构图

a: Ansible:Ansible核心程序
b:HostInventory:记录由Ansible管理的主机信息,包括端口、密码、ip等。
c:Playbooks:“剧本”YAML格式文件,多个任务定义在一个文件中,定义主机需要调用哪些模块来完成的功能。
d:CoreModules:核心模块,主要操作是通过调用核心模块来完成管理任务。
e:CustomModules:自定义模块,完成核心模块无法完成的功能,支持多种语言。
f:ConnectionPlugins:连接插件,Ansible和Host通信使用
生成密钥对
在这里插入图片描述
上传公钥到管理客户端上
在这里插入图片描述
在这里插入图片描述

免交互式登录服务器
在这里插入图片描述
修改源
在这里插入图片描述
安装ansible服务器端
在这里插入图片描述
检查ansible版本
在这里插入图片描述
配置ansible客户端
在这里插入图片描述
测试客户端
加载配置文件方式测试
在这里插入图片描述
Ping客户端组测试
在这里插入图片描述
交互式使用ansible
使用交换工具
在这里插入图片描述
切换管理客户端组
在这里插入图片描述
列出组中客户端
在这里插入图片描述
Shell模块
使用shell重定向操作
在这里插入图片描述
查看客户端服务运行状态
在这里插入图片描述
Command模块
Command切换目录
在这里插入图片描述
Command创建目录

在这里插入图片描述
Copy模块
使用copy模块
在这里插入图片描述
Yum模块
使用yum安装apache
在这里插入图片描述
检查apache是否安装成功
在这里插入图片描述
启动apache服务
在这里插入图片描述
Service模块
管理apache服务
在这里插入图片描述
User模块
创建用户
在这里插入图片描述
查看用户的信息

在这里插入图片描述
实验到此结束**

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值