首页 > 代码库 > ansible部署及应用--持续更新中

ansible部署及应用--持续更新中

1、简介

ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:

(1)、连接插件connection plugins:负责和被监控端实现通信;

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

(3)、各种模块核心模块、command模块、自定义模块;

(4)、借助于插件完成记录日志邮件等功能;

(5)、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。


2、安装

#rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm

#rpm -ivh http://www6.atomicorp.com/channels/atomic/centos/6/x86_64/RPMS/atomic-release-1.0-19.el6.art.noarch.rpm

#cd /etc/yum.repos.d/

#wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

#yum install PyYAML

#yum install ansible


3、配置

默认主机列表文件是 /etc/ansible/hosts

ansible_ssh_port=端口

ansible_ssh_user=用户名

ansible_ssh_private_key_file=私钥位置 

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

host_key_checking = False  不进行host_key检查,省去目标key发生变化时输入(yes/no)的步骤

免ssh密码登录

#ssh-keygen -t rsa  生成公钥

#cat ~/.ssh/id_rsa.pub | ssh -p 端口 user@hostip ‘cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys‘   复制公钥到节点

4、使用

ansible

格式 ansible 主机 参数/模块

常用参数 

-m 指定模块

-k 密码登录 不加的话使用公钥免密码登录

-u 指定用户 不加默认是root登录

-a ‘命令’ 远程执行命令


未完待续,持续更新中。。。。。

ansible部署及应用--持续更新中