ansible工作架构和原理

我们知道,随着时代的发展,运维已逐渐向着自动化方向发展,那么,掌握一些自动化运维工具必不可少,这样我们才能更加快速,准确的完成任务,避免手动带来的失误

常用的自动化运维工具

  • Ansible:Python,Agentless,中小型应用环境
  • Saltstack:Python,一般需要部署agent端,执行效率更高
  • Puppet:ruby,功能强大,配置复杂,重型,适用于大型环境
  • Fabric:Python,Agentless
  • Chef:ruby,国内应用少
  • Cfengine
  • func

特性

  • 模块化:调用特定的模块,完成特定的任务
  • 有Paramiko、PyYAML、Jinjia2(模板语言)三个关键板块
  • 支持自定义模块
  • 基于Python语言实现
  • 部署简单,基于python和ssh(默认安装),agentless
  • 安全,基于openssh
  • 基于playbook编排任务
  • 幂等性:一个任务执行一遍和执行n遍效果一样,不会因为重复执行带来意外情况
  • 无需代理不依赖pki(无需ssl)
  • 可使用任何编程语言写模块
  • YAML格式,编排任务,支持丰富的数据结构
  • 较强大的多层解决方案

你可能感兴趣的:(Ansible)