ansible——介绍

一、ansible的介绍

        Ansible是一个开源自动化运维平台。Ansible是一个可以在Ansible playbook中在完美描述IT应用架构的简单的自动化语言。它也是一个运行Ansible Playbook的自动化引擎。
        Ansible可以管理强大的自动化任务,并且可以适应许多不同的工作流和环境。同时,Ansible的新使用者可以非常快速的使用它并将其带入生产环境。

二、ansible的特点

1、简单的Ansible-Simple

Ansible Playbooks是容易理解,容易看懂的。playbooks是非常容易理解和修改的自动化工具。不需要特别复杂的编程能力就能写playbook。playbook顺序执行task。playbook简单涉及让每个团队都能很容易上手使用

2、强大的Ansible-Powerful

你可以使用ansible来部署应用,进行配置管理,工作流自动化运维,网路自动化运维。 Ansible可用于协调整个应用程序生命周期

3、无代理的Ansible-Agentless

Ansible被建立为无代理的架构。通常,Ansible通过使用OpenSSH或WinRM来连接到被管理的主机并且经常(但不全是)通过向被管理主机推送叫Ansible模块的小程序来运行tasks。 这些程序用于将系统置于特定的期望状态。任何被推送的模块当ansible任务执行完之后将会被移除。你可以很快的上手ansible,因为ansible在被管理主机上不需要任何特殊的代理。因为客户端没有代理,所以Ansible是更高效的并且相比其他的自动化运维工具更安全。

三、Ansible优势

1、跨平台支持

Ansible的无代理特性支持Linux,Windows,Unix和网络设备,无论物理机,虚拟机,云主机和容器环境都能支持

2、易懂易上手

被写成YAML的text文件的Ansible Playbooks是易懂的并且能帮助任何人快速理解并上手

3、完美应用描述

Ansible Playbooks可以进行任何更改,并且可以描述和记录应用程序环境的各个方面

4、简单的版本管理

Ansible Playbooks和project是明文的text。 它们可以像源代码一样对待并放置在现有的版本控制系统中

5、支持动态的Inventories

Ansible管理的计算机列表可以从外部源动态更新,以便始终捕获所有托管服务器的正确,最新列表,无论基础架构或位置如何

6、与其他系统轻松集成的编排

HP SA,Puppet,Jenkins,Red Hat Satellite和其它的在你环境中的系统都可以被集成到你的Ansible中

四、Ansible概念和架构

1、控制节点

在Ansible的架构中有两种类型的机器,一类是控制节点,一类是被管理主机。Ansible被安装并且运行在控制节点上,并且这类机器上有你的项目文件的副本。控制节点可以是管理员的笔记本,也可以是一个被很多管理共同使用的系统,也可以是一个运行Ansible Tower的服务器。

2、被管理主机-Inventory

被管理主机被列在Inventory中,inventory将这些被管理主机组织进不同的group中进行管理。inventroy可以被定义在静态的text文件中,或者被定义在动态的脚本中。

3、Playbook

不用写复杂的脚本,Ansible用户创建高等级的plays来保证主机处在特定的状态。 一个剧本在主机上执行一系列的任务。这些剧本在text文件中被表达为YAML的格式。一个包含一个或更多的play文件叫做playbook。

4、Task

每个task运行一个带着特定参数的module,每个module都是一段很少的代码,该代码可以用Python,PowerShell或其他的语言写。 每个模块本质上都是工具包中的工具。 Ansible附带了数百个可用于执行各种自动化任务的有用模块。这些模块可以操作系统中的文件,安装软件或者做系统调用。

5、安全的多次运行

当在task中使用模块时,模块通常确保关于机器的某些特定事物处于特定状态。例如,task结余使用模块来确定一个文件是否存在,是否有特定的权限和内容, 而使用不同模块的任务可以确保挂载了特定的文件系统。如果系统不在那个状态,task将会将系统置成那个状态。如果系统已经处在了那个状态,它将什么都不会做。如果一个task失败了,Ansible的缺省行为是为失败的主机终止剩余的剧本。 Tasks, Plays和playbook是idempotent(幂等的)。你可以在同样的主机上安全的运行多次同样的playbook,并且当你的系统处在正确的状态时,playbook当运行时将不会做任何改变

6、Ansible插件

Ansible也使用插件。 插件是您可以添加到Ansible来扩展它,并且能适应新用途和平台的代码

7、Ansible架构

Ansible架构是无代理的。通常,当一个管理员运行一个Ansible Playbook或者ad hoc命令时,控制节点通过使用SSH或WinRM来连接到被管理主机。这意味着在被管理主机客户端不必安装特定的代理软件,并且不必允许特殊的网络流量传输到非标准端口


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值