批量搞机(一):ansible简介、ansible安装
一、ansible简介
Ansible是2013年推出的一款IT自动化和DevOps软件,目前由Redhat已签署Ansible收购协议。其是基于Python研发,糅合了很多老运维工具的优点实现了批量操作系统配置,批量程序的部署,批量运行命令等功能
ansible可以让我们实现:
- 自动化部署APP
- 自动化管理配置项
- 自动化的持续交付
- 自动化的(AWS)于服务管理
为什么要选择ansible
选择一款配置管理软件总的来说,无外乎从以下几点来权衡利弊:
- 学习成本
- 使用成本
- 编码诧言
- 性能
- 使用是否广泛

ansible优点:
仅需要ssh和Python即可使用,无客户端;ansible功能强大,模块丰富,上手容易门槛低,基于python 开发,做二次开发更容易,使用公司比较多,社区活跃。
ansible缺点:
对于几千台、上万台机器的操作,还丌清楚性能、效率情况如何,需要迚一步了解。
ansible特性:
1> 模块化设计,调用特定的模块来完成特定任务
2> 基于python语言实现
- paramiko
- PyYAML (半结构化语言)
- jinja2
3> 其模块支持JSON等标准输出格式,可采用任何编程语言重写,部署简单,主从模式工作,支持自定义模块,支持playbook,易于使用,支持多层部署,支持异构IT环境
ansible大体执行过程 :

二、ansible安装
软件依赖关系 :
对管理主机要求Python 2.6 或 Python 2.7;ansible 使用了以下模块,都需要安装
- paramiko
- PyYAML
- Jinja2
- httplib2
- six
对于被托管主机
- Ansible默认通过 SSH 协议管理机器
- 被管理主机要开启 ssh 服务,允许 ansible 主机登录
- 在托管节点上也需要安装 Python 2.5 戒以上的版本
- 如果托管节点上开启了SElinux,需要安装libselinux-python
ansible 可以基于源码运行;源码安装:
1> pip:需要配置扩展软件包源 extras
2> git:
yum install epel-release
yum install git python2-pip
3> pip安装依赖模块
pip install paramiko PyYAML Jinja2 httplib2 six
小插曲===>
初始化虚拟机的方法:
# cd /var/lib/libvirt/images/
# rm -rf node?.img //删除原有的虚拟机镜像
# for i in node{1..9};do qemu-img create -b source.qcow2 -f qcow ${i};done //创建几台虚拟机
# virsh -c qemu:///system
virsh # start node1
virsh # console node1
localhost login:root
密码:____
# sed -i 's,192.168.4.253,192.168.4.1,' /etc/sysconfig/network-scripts/ifcfg-eth0
# cd /etc/yum.repos.d/
# cat rhel7.repo
[epel_mirror]
name=epel
baseurl=http://mirrors.sohu.com/fedora-epel/7/x86_64/
enabled=1
gpgcheck=0
# cat 163.repo
[163_mirror]
name=epel
baseurl=http://mirrors.163.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0
<==小插曲
#########
####
批量搞机(一):ansible简介、ansible安装的更多相关文章
- 批量搞机(二):分布式ELK平台、Elasticsearch介绍、Elasticsearch集群安装、ES 插件的安装与使用
一.分布式ELK平台 ELK的介绍: ELK 是什么? Sina.饿了么.携程.华为.美团.freewheel.畅捷通 .新浪微博.大讲台.魅族.IBM...... 这些公司都在使用 ELK!ELK! ...
- ansible简介安装配置
ansible简介 ansible是一款,自动化运维管理工具.顾名思义是用于批量去管理及安装服务及批量管理主机. ansible与saltstack对比 ansible优点:配置简单,部署容易除主管理 ...
- ansible源码安装、普通用户实现批量控制
一.ansible简介 ansible是一款自动化运维工具,基于Python开发,集合了众多运维工具(puppet.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行 ...
- 1、Ansible简介及简单安装、使用
参考Ansible权威指南:https://ansible-tran.readthedocs.io/en/latest/index.html 以下内容学习自马哥教育 Ansible: 运维工作:系统安 ...
- 【原创】运维基础之Ansible(1)简介、安装和使用
官方:https://www.ansible.com/ 一 简介 Ansible is a radically simple IT automation engine that automates c ...
- ansible Ansible Galaxy ansible-playbook 安装 使用 命令 笔记 生成密钥 管控机 被管控机 wget epel源
笔记 ansible 安装 与salt对比 相同 都是为了同时在多台机器上执行相同的命令 都是python开发 不同 agent(saltstack需要安装.ansible不需要) 配置(salt配置 ...
- 001.Ansible简介与基本安装
一 自动化运维 1.1 运维的自动化发展历程 IAAS:infratructure as a Service PAAS:platform as a Service 平台及服务 SAAS:softwar ...
- Ansible - 简介和应用自动化基础实践
installAnsible简介和应用自动化基础实践 一.引入: 1.1 如官方定义,Ansible is The simplest way to automate apps and IT infr ...
- ansible示例,离线安装etcd
一.基础介绍 ========================================================================================== 1. ...
随机推荐
- 【Android Studio安装部署系列】十三、Android studio添加和删除Module 2
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 新建.导入.删除Module是常见的操作,这里简单介绍下. 新建Module File——New——New Module... 选中 ...
- 基于PyQt5的Python-Gui开发
环境搭建 电脑环境 win10 64位系统 Python3.5安装 从Python官网下载python3.5安装文件,选择windows 64位版本python-3.6.5-amd64.exe.双击安 ...
- 在layui中,新的页面怎么获取另一个页面传过来的数据,并可以对数据进行判断,layui中的后台分页(table)。
例如:打开一个新页面的同时,传数据. layer.open({ type: 2, title: '新增项目', shadeClose: false, shade: [0.3], maxmin: tru ...
- TensorFlow学习笔记12-word2vec模型
为什么学习word2word2vec模型? 该模型用来学习文字的向量表示.图像和音频可以直接处理原始像素点和音频中功率谱密度的强度值, 把它们直接编码成向量数据集.但在"自然语言处理&quo ...
- <编译原理 - 函数绘图语言解释器(3)解释器 - python>
<编译原理 - 函数绘图语言解释器(3)解释器 - python> <编译原理 - 函数绘图语言解释器(2)词法分析器 - python> <编译原理 - 函数绘图语言解 ...
- pandas 入门(3)
from pandas import Series, DataFrame, Index import numpy as np # 层次化索引 对数据重塑和分组操作很有用 data = Series(n ...
- git比较重要但是又容易忘记的操作
git rebase head~1 把多次commit合并成一次 git reset head 撤销已缓存的内容 git checkout . git stash 去除改动未提交的代码
- Node.js实战12:fs模块高级技巧。
通过fs模块使用流 fs模块同样有流接口,如下例: var fs = require("fs"); var read_able = fs.createReadStream(&quo ...
- JS 总结之关于 this 应该知道的几个点
JS 中的 this 对每位前端工程师都不陌生,经常看到对象这里 this 那里 this,那什么是 this?答案就是上下文对象,即被调用函数所处的环境,也就是说,this 在函数内部指向了调用函数 ...
- wxpython程序基本功能源码整理,包括基本文字,输入框,字体设置,按钮绑定事件触发
#coding=utf-8 import wx class MyApp(wx.App): def __init__(self): wx.App.__init__(self) def OnInit(se ...