Ansible简介

ansible是一个非常简单的it自动化平台,使得程序和系统更易于部署。ansible本质是一个进行封装的shell,优点在于它是去中心化的工具,可以直接通过ssh远程管理主机,实现无Agent的部署。

ansible是一种由python开发的自动化运维工具,集合了众多运维工具的优点,实现了批量系统配置,批量程序部署,批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正实现批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:

1.连接插件connection plugins:负责和被监控端实现通信;ansible管理端和客户端基于ssh协议通信

2.host inventory: 指定操作的主机,是一个配置文件里面定义监控的主机;提供主机管理的列表,定义管理谁

3.各种模块核心模块,commend模块,自定义模块;提供了日常模块

4.借助于插件完成记录日志邮件等功能;提供需求后续添加模块啊,邮件,日志模块。

5.playbook:剧本执行多个任务时,非必须可以让节点一次性运行多个任务。一次发布多个指令给多个客户端。

特性:

1.no  agents:不需要在被管控主机上安装任何客户端;

2.no   server:无服务器端,使用时直接运行命令即可;

3.modules in any  languages:基于模块工作。可使用任意语言开发

4.yaml,not code:  使用语言定制剧本playbook;

5.ssh by default :  基于SSH工作;

优点:

6.轻量级,无需在客户端安装agent,更新时,只需要在操作机上进行一次更新即可

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

8.适应python编写,维护更简单,ruby语法更复杂

9.支持 sudo

Ansible awx简介

Ansible AWX是商业版  Ansible Tower的开源版本,AWX提供了一个基于web的用户界面,REST API和构建在Ansible之上的任务引擎。

借助图形化的AWX,能够方便的编排部署Ansible Playbook,并集中的日志记录,审计和系统跟踪,通过REST API和CLI轻松将ansible awx嵌入现有的工具流程中。

借助ansible AWX,您可以通过可视化仪表板,基于角色的访问控制,作业计划,集成通知和图形化管理集中控制it架构。

awx功能模块:

仪表板:awx资源管理可视化界面,包括资源统计信息,过往全部作业执行情况,近期使用模板,近期作业执行情况。

凭证:定义awx在目标服务器上的操作用户,密码以及sudo控制权限、

支持两种认证方式:基于密码和基于密钥

项目:关联ansible脚本目录,定义运行脚本。

作业: 模块每一次运行视为一次作业

机构:包含一组资源,包括用户团队,清单,项目,模板等

基本流程:

创建Credentials凭证,连接远程主机时认证。

创建inventory清单,定义主机,主机组以及变量。

创建projects项目,指向playbooks文件,可选本地目录,git仓库或远程urll归档等

创建templates模板,定义jobs模板,执行playbooks任务

Ansible playbook

palybook简介

用于配置,部署,和管理被节点的剧本

通过playbook的详细描述,执行其中的一些列tasks,可以让远端主机达到预期的状态。playbook就像ansible控制器给被控节点列出的一系列 to-do-list,而且被控节点必须要完成

playbook是有一个或者多个play组成的列表。

主要功能是将预定义的一组主机装办成事先通过ansible中的task定义好的角色。 task实际是调用ansible的一个模块。将多个play组织成一个playbook中,让他们联合起来,将事先编排的机制执行预定义的动作。

简化将  就是剧本,现实生活中的演员按照剧本表演,在ansible中,这次由被控计算机表演,进行安装,部署应用,提供对外的服务等,一级组织计算机处理各种的事情。

二. Ansible playbook使用场景

执行一些简单的任务,使用ad-hoc命令可以方便的解决问题(命令行)但是有时设施太过复杂,需要大量批量的操作时候,执行的ad-hoc命令是不合适的,这时候最好使用playbook。使用playbook可以方便重复使用这些代码。可以移植到不同的机器上面,像函数一样,最大化的利用代码。

Ansible playbook格式

格式简介

由YAML语言编写

yaml格式类似于json的文件格式。yaml用于文件的配置编写,json多用于开发设计

3.2核心元素

hosts: 主机组     tasks:任务列表

variables:变量,设置方式有四种

templates: 包含了模块语法的文本文件

handlers:由特定条件触发的任务

.

Ansible AWX的更多相关文章

  1. 安装AWX

    1.安装最新版python 2.安装最新版docker 设置国内docker镜像源 curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | ...

  2. 使用docker部署awx-1.7.1.0(ansible图形化界面)

    文章目录 关于环境 下载awx 下载安装所需依赖 安装docker-compose 配置inventory文件 出现的报错 TASK [local_docker : Run migrations in ...

  3. Ansible Notes: Tower Credential的本质

    Ansible AWX/Tower credential 的本质 Ansible Tower (社区版本叫AWX)用credential这个资源来对象来存储playbook运行过程中用到的机密信息.比 ...

  4. 自动化利器 Ansible - 从了解到应用

    本文说明 本系列使用 ansible 2.9.27 版本来说明和汇总相关信息. # cat /etc/system-release Red Hat Enterprise Linux Server re ...

  5. 阿里巴巴 Kubernetes 能力再获 CNCF 认可 | 云原生生态周报 Vol. 32

    作者 | 丁海洋  陈有坤 李鹏  孙健波 业界要闻 阿里巴巴 Kubernetes 技术能力再获 CNCF 认可 CNCF 官网发布博文<Demystifying Kubernetes as ...

  6. Ansible详解(一)

    简介 Ansible是一个简单的自动化运维管理工具,基于Python语言实现,由Paramiko和PyYAML两个关键模块构建,可用于自动化部署应用.配置.编排task(持续交付.无宕机更新等).主版 ...

  7. Ansible 运维自动化 ( 配置管理工具 )

    背景 出差背景,要搞项目的自动化部署.因为只直接对接生产分发,机器又非常多,这样以往使用的bat只能作为应急方案了,还是得考虑使用专业化的工具来做这个事情! 当下有许多的运维自动化工具( 配置管理 ) ...

  8. 自动化运维工具——ansible详解(一)

    ansible 简介 ansible 是什么? ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.chef.func.fabric)的优点,实现了批量系统 ...

  9. 企业级自动化运维工具应用实战-ansible

    背景 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测试,运 ...

  10. 项目实战10.1—企业级自动化运维工具应用实战-ansible

    实战环境: 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测 ...

随机推荐

  1. 地址重写了,只是ip 没转发,应该是9999那个才对,rewrite /sbgl/(.*) http://127.0.0.1:9999/$1 permanent;,这样,

    记录想nginx搞路径重写的失败历程. 1.想将从nginx发出的127.0.0.1:80 请求过来的带sbgl的字眼去掉,然后,代理为127.0.0.1:9999, 所以我就百度出这个  这个  r ...

  2. excel、word、PPT中插入PDF文件不显示图标问题

    插入PDF对象,不显示正确的PDF图标 临时解决办法:手动修改对象图标 具体位置,可在C:\Windows\Installer目录下搜索PDFFile_8.ico 尝试如下操作: 手动复制生成C:\W ...

  3. MyLiveCam使用条款与免责协议

    MyLiveCam(以下简称"我们")在此特别提醒您务必认真阅读.充分理解本<使用条款与免责协议>(以下简称"本协议")中各条款并选择是否接受本协议 ...

  4. docker systemctl start报错: Failed to get D-Bus connection: Operation not permitted

    转载自:https://blog.csdn.net/zhenliang8/article/details/78330658 最近使用docker部署ansible,安装ssh 遇到启动服务报错:Fai ...

  5. JS基础笔记汇总

    JS基础笔记最全的汇总 javascript介绍以及起源目录1.变量和常量的知识2.基本数据类型3.运算符4.基本数据类型间的转换5.流程控制语句 一.javascript介绍以及起源 js一种直译型 ...

  6. vue调接口导出表格

     props:{       form:{         type:Object,         default:()=>{}       },       indexNum:{       ...

  7. Java 向上转型

    向上转型: 对象的向上转型,其实就是多态写法: 父类名称 对象名 = new 子类名称(); 注意:向上转型一定是安全的,从小范围转向大范围.(从小范围的猫,向上转化为更大范围的动物)

  8. 镜像问题、简易安装,系统语言更改,中文输入,提高下载速度,Firefox的语言更改,Firefox上网速度慢

    一开始用的镜像不记得是从哪里下载过来的,反正 装好之后分辨率特别低.镜像放在: "D:\迅雷下载\2020大创\Ubuntu\ubuntu-16.04.6-desktop-i386.iso& ...

  9. linux kali 报错Intel VT-x

    报错原因:第一次安装虚拟机intel vt-x 处于禁用状态,没有启用 分析思路:找到 Intel vt - x 位置,并打开 .(intel - x在bios) 解决方法: 联想笔记本为例:进入bi ...

  10. .net基础—多线程(二)

    Thread 在.NET中最早提供的控制线程类型的类型:System.Threading.Thread类.使用该类型可以直观地创建.控制和结束线程.下面是一个简单的多线程程序: static void ...