ansible介绍

运维工具 OS Provisioning: PXE, Cobbler(repository,distritution, profile) PXE: dhcp, tftp, (http, ftp) dnsusq: dhcp, dns OS Config: puppet, saltstack, func Task Excute: fabric, func, saltstack Deployment: fabric 管理主机,要想管理被管理节点,二者必须有安全管理通道。puppet、saltstack在管理被管节点时,每一个被管节点必须运行puppet agent,管理端进程与每一个被管节点的agent进程进行通信,通信时使用的HTTP协议。此种方式必须在被管节点安装应用程序的agent,远程接收到指令,并在本地负责执行相应的任务。 根据远程管理时,是不是在每一个被管主机上安装agent端,分为两种puppet、func、saltstack;与无需agent端,ansible、fabric。依赖被管节点的ssh服务。而管理端需要知道对方主机上的账号密码。 ansible的组成 ansible核心 host invenory :为了管控每个被管主机,每个主机在本地需要注册。用来定义由ansible远程配置管理的主机,每个主机的IP地址、掩码、SSH监听的地址、端口号、账号密码等。 core modules:ansible执行任何特定管理任务,都是不由ansible自身玩成的,而是通过模块完成的。 custom Modules:使用任何编程语言来编写模块。 playbooks:将主机要完成的多个任务,事先定义在文件中可以多次调用。 1 ansible的特性 基于Python语言实现,由Paramiko, PyYAML和jiniia2三个关键模块 部署简单,agentless 默认使用SSH协议 主从模式: master:ansible, ssh client slave: ssh server 支持自定文模块:支持各种编程语言,支持Playbook,基于“模块”完成各种“任务”。 安装依赖于epel源 配置文件: text 1 2 /etc/ansible/ansible.cfg Invertory:/etc/ansible/hosts 2 ansible命令应用基础 语法: ansible <host-pattern> [-f forks] [-m module_name] [-a args]...

 ·  ·