IT学习站-137zw.com

more +资源更新Forums

more +随机图赏Gallery

价值3600元的中文网第八期php cms 视频 完整版视频课程价值3600元的中文网第八期php cms 视频 完整版视频课程
10节课让你成为滚床单高手  强烈推荐 屌丝的福音10节课让你成为滚床单高手 强烈推荐 屌丝的福音
价值5980元高端JAVA架构课程 精英培训计划视频教程 java架构价值5980元高端JAVA架构课程 精英培训计划视频教程 java架构
最新流出的传智博学谷黑马python5.0课程最新流出的传智博学谷黑马python5.0课程
价值19000元的小码哥大神班IOS五期不加密版本教程价值19000元的小码哥大神班IOS五期不加密版本教程
从网络基础概念到校园网整体规划组建系列视频教程(共40集)从网络基础概念到校园网整体规划组建系列视频教程(共40集)

《Ansible自动化运维:技术与最佳实践》第一章读书笔记

《Ansible自动化运维:技术与最佳实践》第一章读书笔记

[复制链接]
简单350 | 显示全部楼层 发表于: 2019-11-14 10:15:03
简单350 发表于: 2019-11-14 10:15:03 | 显示全部楼层 |阅读模式
查看: 89|回复: 0
Ansible 架构及特点

第一章主要讲的是 Ansible 架构及特点,主要包含以下内容:

  • Ansible 软件
  • Ansible 架构模式
  • Ansible 特性
Ansible 软件

Ansible 的编排引擎可以完成配置管理、流程控制、资源部署等工作。 Ansible 基于 Python语言实现,由 Paramiko 和 PyYAML 两个关键模块构建。
Ansible 应用领域


  • 配置管理
  • 服务即时开通
  • 应用部署
  • 流程编排
  • 监控告警
  • 日志记录
Ansible 架构模式

Ansible 维护模式通常由控制机和被管机组成。控制机是用来安装 Ansible 工具软件、执行维护指令的服务器或工作站,是 Ansible 维护的核心。被管机是运行业务服务的服务器,由控制机通过SSH来进行管理。
Ansible 管理方式

Ansible 是一个模型驱动的配置管理器,支持多节点发布、远程任务执行。默认使用SSH进行远程连接。无需再被管节点上安装附加软件,可使用各种编程语言进行扩展。
Ansible 管理系统由控制主机和一组被管节点组成。控制主机直接通过SSH控制被管节点,被管节点通过 Ansible 的资源清单来进行分组管理。
《Ansible自动化运维:技术与最佳实践》第一章读书笔记  技术博客 1356806-20190908125059321-45390010

Ansible 用剧本方式对3台运行 Nginx 服务的 Ubuntu 服务器进行配置管理

编写 webservers.yml 的 Ansible 脚本,即 playbook ,其中包含被管节点的 hosts 和对这些 hosts 按照顺序执行的任务列表(task)。
hosts 包括web1、web2、web3。
任务列表包括如下过程:

  • 安装 Nginx(Install Nginx)
  • 创建 Nginx 配置文件(/etc/nginx/nginx.conf)
  • 基于安全证书SSH方式拷贝配置文件,重启 Nginx 服务
  • 确保 Nginx 服务处于启动状态
在 Ansible 系统的控制主机上执行ansible-playbook webservers.yml,Ansible 将会通过 SSH 连接并行地在web1、web2、web3上面安装、配置、运行 Nginx 服务。
《Ansible自动化运维:技术与最佳实践》第一章读书笔记  技术博客 1356806-20190908123603936-901913120

Ansible 系统架构

《Ansible自动化运维:技术与最佳实践》第一章读书笔记  技术博客 1356806-20190908123220930-621197221


  • 核心引擎:即 Ansible。
  • 核心模块(core modules):Ansible 模块资源分发到远程节点使其执行特定任务或匹配一个特定的状态。
  • 自定义模块(custom modules)
  • 插件(plugins):模块功能的补充,借助插件完成记录日志、邮件等功能。
  • 剧本(playbook):定义 Ansible 任务的配置文件,可将多个任务定义在一个剧本中,由 Ansible 自动执行,可由控制主机运行多个任务,同时对多台远程主机进行管理。
  • 连接插件(connectior plugins):Ansible 基于连接插件连接到各个主机,负责和被管节点实现通信。因为支持除SSH连接方法外的其他连接方法,所以需要连接插件。
  • 主机清单(host inventory):定义 Ansible 管理的主机策略。
Ansible 采用 paramiko 协议库,通过 SSH 或 ZeroMQ 等连接主机。Ansible 在控制主机将 Ansible 模块通过 SSH协议推送到被管节点执行,执行完自动删除。控制主机与被管节点之间支持 local、SSH、ZeroMQ 三种连接方式,默认使用基于 SSH 连接,在大规模情况下,使用 ZeroMQ 连接方式执行速度更快。
任务执行模式

Ansible 系统由控制主机对被管节点的操作方式可分为两类,即 ad-hoc 和 playbook。

  • ad-hoc 模式使用单个模块,支持批量执行单条命令。
  • playbook 模式是 Ansible 主要管理方式,playbook 通过多个 task 集合完成一类功能。(可以把 playbook 理解为通过组合多条ad-hoc 操作的配置文件)
《Ansible自动化运维:技术与最佳实践》第一章读书笔记  技术博客 1356806-20190908124818630-813126839

Ansible 特性

Ansible 是基于一致性、安全性、高可靠性设计的轻量级自动化工具,具有功能强大、部署便捷、描述清晰等特性,很好地解决了统一配置、统一部署、流程编排等复杂的 IT 自动化管理问题。
Ansible 功能特性


  • 语法简单、易读
  • 不需要再被管节点安装客户端软件
  • 基于推送(Push)方式
  • 方便管理小规模场景
  • 大量内置模块
  • 非常轻量级的抽象层
Ansible 与其他配置管理的对比

项目PuppetSaltStackAnsible开发语言RubyPythonPython是否有客户端有有无是否支持二次开发不支持支持支持服务器与远程机器通信协议标准 SSL 协议使用AES加密使用 OpenSSH配置文件格式Ruby语法格式YAMLYAML与其他自动化工具比较,Ansible 不需要安装客户端就可以轻松地管理、配置。
《Ansible自动化运维:技术与最佳实践》第一章读书笔记  技术博客 1356806-20190908124934363-928463580

总结

Ansible 的关键想法是计算机是一组,而不是一个个分开的机器,即“多层编排”的思想。避免了证书交换,以及反向解析 DNS 和 NTP 的问题。YAML的配置文件格式,简单易用。

来源:http://www.137zw.com
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
137zw.com IT学习站致力于免费提供精品的java技术教程和python技术教程,CCNA书籍/资料/CCNP书籍/资料教程/CCIE书籍/资料/H3C学习/认证/一级建造师考试/微软学习/认证/包括基础教程和高级实战教程,同时也提供分享网站源码下载和互联网相关一系列的技术教程,我们想做的就是让知识分享更有价值!(IT学习站官方唯一域名地址:www.137zw.com 请谨防假冒网站!)本站所有资源全部收集于互联网或网友自行分享,分享目的仅供大家学习与参考,如无意中侵犯您的合法权益,请联系本站管理员进行删除处理!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

浙ICP备19022368号-1|Archiver|手机版|IT学习站-137zw.com

GMT+8, 2020-7-12 00:32 , Processed in 0.228786 second(s), 33 queries .

快速回复 返回顶部 返回列表