目前比较流行的自动化运维工具有下面2款
1.saltstack
基于python开发,采用c/s架构(服务端和客户端)配置语法用的是YMAL,使用脚本配置非常简单
2.ansible
基于python开发, 分布式 无需客户端,超轻量级,配置语法也用的是YMAL 使用ssh来管理客户端
ansible的优点
1.ansible糅合了众多老牌运维工具的优点,基本上pubbet和saltstack能实现的功能全部能实现
2.ansibel 不需要客户端,不需要客户端有一个非常大的优势,就是可以无缝接入现有的架构.ansible不需要在客户端做任何操作,就可以直接使用。
3.ansible是一个工具,ansible不需要启动服务,仅仅只是一个工具,可以轻松的实现分布式扩展
ansible的基本架构
1.连接插件 用于连接主机用来连接被管理端
2.核心模块 连接主机实现操作,它依赖于具体的模块来做具体的事情
3.自定义模块 根据自己的需求编写具体的模块
4.插件 完成模块功能的补充
5.playbooks ansible的配置文件,将多个任务定义在剧本中,由ansible自动执行
6.host inventory(主机清单)定义ansible需要操作主机的范围
最重要的一点是 ansible是模块化的 它所有的操作都依赖于模块
比如我需要创建一个文件 那么我就需要调用file模块 我需要copy文件,那么我就需要copy模块
我需要测试机器的存活率,那么就需要ping模块
ansible的工作原理
Ansible 在管理节点将 Ansible 模块通过 SSH 协议(或者 Kerberos、LDAP)推送到被管理端执行,执行完之后自动删除,可以使用 SVN 等来管理自定义模块及编排
Ansible测试机器存活率
【python资料视频免费分享群:125980254】 群内每天更新python学习视频!分享资料,有大牛技术指导答疑哟!