1197691-20171118092223015-957438863.png

Ansible特性:

  • 模块化:调用特定的模块,完成特定任务;

  • 基于Python语言实现,由Paramiko, PyYAMLJinja2三个关键模块;

  • 部署简单:agentless

  • 支持自定义模块;

  • 支持playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。;

  • 连接插件connection plugins:负责和被监控端实现通信;

  •  host      inventory:指定操作的主机,是一个配置文件里面定义监控的主机;

  • 各种模块核心模块、command模块、自定义模块;借助于插件完成记录日志邮件等功能;

  • 幂等性;连接操作同一命令不会报错,如touch 创建文本。但如mkdir 创建目录存在则会报错,需要添加键来确保幂等性

ansible安装:epel源, ansible

配置文件:/etc/ansible/ansible.cfg

主机清单:/etc/ansible/hosts

主程序:

  • ansible

  • ansible-playbook

  • ansible-doc

ansible的简单使用格式

ansible   HOST-PATTERN   -m   MOD_NAME  -a    MOD_ARGS   -f   FORKS  -C  -u  USERNAME  -c  CONNECTION

其中HOST-PATTERN主机匹配可用all(全部),IP地址匹配或hosts组匹配等

FORKS  指每次批量执行主机数量,默认5