源码安装Ansible

一、Ansible介绍

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

1、连接插件connection plugins:负责和被监控端实现通信;
2、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
3、各种模块核心模块、command模块、自定义模块;
4、借助于插件完成记录日志邮件等功能;
5、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。

二、Ansible特性
1、no agents:不需要在被管控主机上安装任何客户端;
2、no server:无服务器端,使用时直接运行命令即可;
3、modules in any languages:基于模块工作,可使用任意语言开发模块;
4、yaml,not code:使用yaml语言定制剧本playbook;
5、ssh by default:基于SSH工作;
6、strong multi-tier solution:可实现多级指挥。

三、Ansible优点

1、轻量级,无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可;
2、批量任务执行可以写成脚本,而且不用分发到远程就可以执行;
3、使用python编写,维护更简单,ruby语法过于复杂;
4、支持sudo。

四、源码安装Ansible
源码安装需要python2.6以上版本,其依赖模块paramiko、PyYAML、Jinja2、httplib2、simplejson、pycrypto等模块,以上模块可以通过pip或easy_install 进行安装。

包的版本如下:

Python-2.7.8.tgz
Jinja2-2.7.3.tar.gz
MarkupSafe-0.9.3.tar.gz
PyYAML-3.11.tar.gz
ansible-1.7.2.tar.gz
ecdsa-0.11.tar.gz
paramiko-1.15.1.tar.gz
pycrypto-2.6.1.tar.gz
setuptools-7.0.tar.gz
simplejson-3.6.5.tar.gz
yaml-0.1.5.tar.gz

1、安装python2.7

# tar xvzf Python-2.7.8.tgz
# cd Python-2.7.8
# ./configure --prefix=/usr/local
# make --jobs=`grep processor  /proc/cpuinfo | wc -l`
# make install
# 将python头文件拷贝到标准目录,以避免编译ansible时,找不到所需的头文件
# cd /usr/local/include/python2.7
# cp -a ./* /usr/local/include/
# 备份旧版本的python,并符号链接新版本的python
# cd /usr/bin
# mv python python2.6
# ln -s /usr/local/bin/python python

2、安装setuptools模块

# tar xvzf setuptools-7.0.tar.gz
# cd setuptools-7.0
# python setup.py install

3、安装pycrypto模块

# tar xvzf pycrypto-2.6.1.tar.gz
# cd pycrypto-2.6.1
# python setup.py install

4、安装PyYAML模块

# tar xvzf yaml-0.1.5.tar.gz
# cd yaml-0.1.5
# ./configure --prefix=/usr/local
# make --jobs=`grep processor/proc/cpuinfo | wc -l`
# make install

# tar xvzf PyYAML-3.11.tar.gz
# cd PyYAML-3.11
# python setup.py install

5、安装Jinja2模块

# tar xvzf MarkupSafe-0.9.3.tar.gz
# cd MarkupSafe-0.9.3
# python setup.py install

# tar xvzf Jinja2-2.7.3.tar.gz
# cd Jinja2-2.7.3
# python setup.py install

6、安装paramiko模块

# tar xvzf ecdsa-0.11.tar.gz
# cd ecdsa-0.11
# python setup.py install

# tar xvzf paramiko-1.15.1.tar.gz
# cd paramiko-1.15.1
# python setup.py install

7、安装simplejson模块

# tar xvzf simplejson-3.6.5.tar.gz
# cd simplejson-3.6.5
# python setup.py install

8、安装ansible

# tar xvzf ansible-1.7.2.tar.gz
# cd ansible-1.7.2
# python setup.py install
时间: 2024-10-07 17:12:03

源码安装Ansible的相关文章

SuSE源码安装Ansible自动化工具

自动化运维工具ansible源码安装方法 注:安装之前先对SuSE官方说一声FUCK!!!! 1.首先查看python版本 [[email protected] ~]# python -V Python 2.6.6 注意安装ansible的时候,必须python的版本为2.6以上. 2.安装ansible 2.1 安装pycrypto模块 https://pypi.python.org/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gz tar xv

ansible源码安装

1.可以先查看一下含python-devel的包 yum search python | grep python-devel 2.64位安装python-devel.x86_64,32位安装python-devel.i686,我这里安装: sudo yum install python-devel.x86_64  gmp* 源码安装需要python2.6以上版本,其依赖模块paramiko.PyYAML.Jinja2.httplib2.simplejson.pycrypto模块,以上模块可以通过

cnetos7源码安装openssh(加速ansible)

最近玩ansible发现ansible的执行速度实在是太慢了,看网上说openssh可以加快ansible的执行速度,于是就开启了openssh源码安装的填坑之旅! mkdir -p /root/opensshcd /root/opensshwget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.0p1.tar.gzyum install -y zlib-devel pam-devel tcp_wrappers-dev

OpenStack Kolla 源码分析 --Ansible

OpenStack Kolla 源码分析 –Ansible Kolla介绍 Kolla项目利用Docker.Docker-Compose.Ansible来完成部署OpenStack,目前Kolla已经能够完成一个all-in-one的开发环境的部署.从Kolla项目spec中的描述来看,主要是利用Docker容器的隔离性来达到OpenStack的原子升级.回退在升级.整个升级.回退的过程更容易控制影响范围,降低整个OpenStack的运维复杂度.Kolla 提供了生产级别的 OpenStack

通过自制yum源离线安装ansible

系统环境 --CentOS release 7 python版本--Python 3.5.4 背景:在企业环境中,安装ansible的服务器往往不能访问互联网,简单的下载ansible源码安装,会碰到缺少各种依赖包的问题,因此,推荐制作yum源,然后使用yum安装ansible. 1.准备一台能连接互联网的相同OS服务器,使用yumdownloader工具下载ansible安装包以及所有依赖包. 以 root 身份安装Yumdownloader工具: yum install yum-utils

自制yum源离线安装ansible

适应场景 在实际生产环境中,服务器往往是不能访问互联网,如果简单的下载ansible源码安装,会碰到缺少各种依赖包的问题,因此,推荐制作yum源,然后使用yum安装ansible. 实验环境 模拟可以通互联网的主机A hostname:zabbix IP:192.168.101.201 OS:CentOS 7.5 下载包目录:/data/ansible_packages 模拟生产环境不通互联网的主机B hostname:kvm IP:192.168.101.222 OS:CentOS 7.5 存

centos7.2源码安装openssl1.0.2

centos7.2默认是安装了opensll软件包的,但是部署个别服务时,由于版本太低.会影响服务的正常部署.只能使用源码安装提高openssl软件版本. 因为之前有openssl软件包,所以要先移除之前版本: 删除旧版本: yum remove -y openssl openssl-devel 源码安装openssl需要perl环境编译,如果没有perl环境还是需要安装: yum -y install perl perl-devel 现在新版本openssl: wget https://www

centos6.5 64 源码安装redis服务,建立可远程连接的redis数据库

安装环境:centos6.5 64位 使用的包:redis-2.8.19.tar.gz  tcl8.6.3-src.tar.gz 包的下载链接:http://downloads.sourceforge.net/tcl/tcl8.6.3-src.tar.gz http://download.redis.io/releases/redis-2.8.19.tar.gz 本次安装的目录/home/hadoop/redis为任意目录 代码实现: 1,安装需要的支持环境 su root cd /home/h

ubuntu php5.6源码安装

今天又花了一天时间装了php,感觉php的源码安装也挺麻烦的,整个过程各种报错. 下篇文章准备整合所有查找到的报错和解决方法. php和nginx一样,在安装前需要装一堆的依赖.有libmcrypt.mcrypt.mhash.其实远不止这三个包,在后面的configure和make中还会陆陆续续安装一些依赖. 1.安装libmcrypt.mcrypt.mhash(整个过程都在/usr/local/src/php目录下) #创建/usr/local/src/php目录并进入mkdir /usr/l