返回介绍

第9章 集中化管理平台 Ansible 详解

发布于 2024-01-29 22:54:23 字数 1437 浏览 0 评论 0 收藏 0

Ansible(http://www.ansibleworks.com/)一种集成IT系统的配置管理、应用部署、执行特定任务的开源平台,是AnsibleWorks公司名下的项目,该公司由Cobbler及Func的作者于2012年创建成立。Ansible基于Python语言实现,由Paramiko和PyYAML两个关键模块构建。Ansible具有如下特点:

部署简单,只需在主控端部署Ansible环境,被控端无需做任何操作;

默认使用SSH(Secure SHell)协议对设备进行管理;

主从集中化管理;

配置简单、功能强大、扩展性强;

支持API及自定义模块,可通过Python轻松扩展;

通过Playbooks来定制强大的配置、状态管理;

对云计算平台、大数据都有很好的支持;

提供一个功能强大、操作性强的Web管理界面和REST API接口——AWX平台。

Ansible的架构图见图9-1,用户通过Ansible编排引擎操作公共/私有云或CMDB(配置管理数据库)中的主机,其中Ansible编排引擎由Inventory(主机与组规则)、API、Modules(模块)、Plugins(插件)组成。

Ansible与Saltstack最大的区别是Ansible无需在被控主机部署任何客户端代理,默认直接通过SSH通道进行远程命令执行或下发配置;相同点是都具备功能强大、灵活的系统管理、状态配置,都使用YAML格式来描述配置,两者都提供丰富的模板及API,对云计算平台、大数据都有很好的支持。Ansible在GitHub上的地址为https://github.com/ansible/,其中提供了不少配置例子供参考,本文测试的版本为1.3.2。

图9-1 Ansible架构图

提示  Ansible提供了一个在线Playbook分享平台,地址:https://galaxy.ansibleworks.com,该平台汇聚了各类常用功能的角色,找到适合自己的Role(角色)后,只需要运行“ansible-galaxy install作者id.角色包名称”就可以安装到本地,比如想安装bennojoy提供的Nginx安装与配置的角色,直接运行“ansible-galaxy install bennojoy.nginx”即可安装到本地,该角色的详细地址为:https://galaxy.ansibleworks.com/list#/roles/2。

为了方便读者更系统化地了解Ansible的技术点,本章将针对相关技术点进行详细展开介绍。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文