Ansible深度解析
Posted 大魏分享
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ansible深度解析相关的知识,希望对你有一定的参考价值。
Ansible是一个非常热门、简便的IT自动化引擎。那么,Ansible能够纳管(管理)哪些数据中心对象呢?通过查看Ansible 的模块(Modules,后文将具体介绍)可知,它几乎支持数据中心的一切自动化,包括(不限于):
l 操作系统层面:从Linux(物理机、虚拟机、云环境), Unix,到Windows。
l 虚拟化平台:VMware、Docker、Cloudstack、LXC、OpenStack等。
l 商业化硬件:F5、ASA、Citrix、Eos以及各种服务器设备的管理。
l 系统应用层:Apache、Zabbix、RabbitMQ、SVN、GIT等。
l 红帽解决方案:OpenShift、Ceph、GlusterFS等,支持几乎所有红帽解决方案的一键部署和配置。
l 云平台:IBM Cloud,AWS、Azure、Cloudflare、Red Hat CloudForms、Google、Linode、Digital Ocean等。
我们接下来看张家驹的主题演讲,深度分析Ansible。
我们在Linux上书写Shell,需要调用Linux操作系统命令,如ls、mv、chmod等;在书写POJO时,需要调用Java相关Pattern。Linux系统命令对Shell而言和Java Pattern对于POJO而言,都是被调用的模块。Modules就是使用Ansible进行自动化任务时调用的模块。在工作方时,Ansible首先连接(默认通过SSH)被管理节点(可能是服务器、公有云或、网络设备等),然后向这些节点推送Modules、执行这些Modules,并在完成后删除Modules。
Modules是Ansible的核心资产,有了Modules,我们才能调用这些Modules来完成我们想要执行的自动化任务。举个例子:selinux - Change policy and state of SELinux。这个Module对的作用是配置配置SELinux模式和策略。我们可以通过调用这个Module,来配置RHEL/CentOS的SELinux模式(eforcing、permissive或disabled)。目前社区中Modules数量非常多、涵盖范围非常广,并且以较快的速度进行增长。
以上是关于Ansible深度解析的主要内容,如果未能解决你的问题,请参考以下文章