centos7 pip安装 ansible

首先ansible基于python2.X 环境
默认centos都已经安装好了python2环境

安装可选性

ansible可以通过源码,yum,pip等方式安装
本文采用pip安装方式

centos默认没有安装pip,这里我们要安装pip

参考文献:传送门

 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

 python get-pip.py

 [root@localhost ~]# pip -V
pip 19.0. from /usr/lib/python2./site-packages/pip (python 2.7)

安装基础环境

yum install gcc glibc-devel zlib-devel rpm-build openssl-deve -y
yum install -y python-devel

安装ansible

[root@localhost ~]# pip install ansible

[root@localhost ~]# ansible --version
ansible 2.7.7
config file = None
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Oct 30 2018, 23:45:53) [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)]
pip安装是没有config file文件的 我们可以将官网的默认文件上传到服务器
官方文档:传送门
mkdir /etc/ansible
touch /ect/ansible.cfg

创建后ansible会自动搜索,无需操作

[root@localhost ~]# ansible --version
ansible 2.7.
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2./site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7. (default, Oct , ::) [GCC 4.8. (Red Hat 4.8.-)]

到这里pip安装ansible就算完成了,接下来来实现一些具体的操作

ansible操作

主机说明
控制主机:10.0.15.59 用于控制其它机器的主机
管理主机:10.0.15.60 被控制的主机
管理主机:10.0.15.66 被控制的主机
A.在控制主机创建秘钥
ssh-keygen -t rsa
在root/.ssh目录下存在两个文件
id_rsa是私钥(不能外泄),id_rsa.pub这个是公钥
B.将控制主机的公钥远程传输到管理主机
ssh-copy-id -i ~/.ssh/id_rsa.pub 10.0.15.60
ssh-copy-id -i ~/.ssh/id_rsa.pub 10.0.15.66
输入密码后查看管理主机的.ssh目录下是否出现authorized_keys
C.测试免密是否成功
ssh root@10.0.15.60
ssh root@10.0.15.66

配置免密登录

配置管理主机

vim /etc/ansible/hosts
[group1]
10.0.15.60:2222
10.0.15.66
[group2]
10.0.15.66

A.方括号[]中是组名,用于对系统进行分类,便于对不同系统进行个别的管理.

B.一个系统可以属于不同的组

C.如果有主机的SSH端口不是标准的22端口,可在主机名之后加上端口号,用冒号分隔

等等一些详细的说明可以查看:官方文档

测试

[root@localhost ~]# ansible group1 -m ping
10.0.15.66 | SUCCESS => {
"changed": false,
"ping": "pong"
}
10.0.15.60 | SUCCESS => {
"changed": false,
"ping": "pong"
} 磁盘检测
[root@localhost ~]# ansible all -m shell -a "df -hP|awk 'NR>1 && int(\$5) '"
10.0.15.60 | CHANGED | rc=0 >>
/dev/mapper/centos-root 9.8G 5.0G 4.9G 51% /
tmpfs 488M 7.7M 480M 2% /run
/dev/mapper/centos-home 8.1G 2.6G 5.5G 32% /home
/dev/sda1 197M 120M 77M 61% /boot 10.0.15.66 | CHANGED | rc=0 >>
/dev/mapper/centos-root 17G 1.1G 16G 7% /
tmpfs 488M 7.7M 480M 2% /run
/dev/sda1 1014M 130M 885M 13% /boot

ansible部署(pip安装)的更多相关文章

  1. [svc][op]pip安装ansible && yum安装python34

    相对yum安装,pip安装的好处是jinjia版本到了2.8 pip安装ansible Successfully installed MarkupSafe-1.0 PyYAML-3.12 ansibl ...

  2. CentOSLinux系统中Ansible自动化运维的安装以及利用Ansible部署JDK和Hadoop

    Ansible 安装和配置 Ansible 说明 Ansible 官网:https://www.ansible.com/ Ansible 官网 Github:https://github.com/an ...

  3. Ansible介绍及安装部署

    本节内容: 运维工具 Ansible特性 Ansible架构图和核心组件 安装Ansible 演示使用示例 一.运维工具 作为一个Linux运维人员,需要了解大量的运维工具,并熟知这些工具的差异,能够 ...

  4. ansible入门一(Ansible介绍及安装部署)

    本节内容: 运维工具 Ansible特性 Ansible架构图和核心组件 安装Ansible 演示使用示例 一.运维工具 作为一个Linux运维人员,需要了解大量的运维工具,并熟知这些工具的差异,能够 ...

  5. 自动化运维工具之 Ansible 介绍及安装使用

    一.初识Ansible 介绍: Absible 使用 模块(Modules)来定义配置任务.模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等.A ...

  6. 【ansible】ansible部署方式以及部署包

    最近研究ansible的使用,在使用pip安装的时候遇到很多奇怪的问题,为此采用了手动安装的方式,并编写了一键安装脚本. ansible要求机器必须安装python2.6以上版本,可以通过一下命令查看 ...

  7. 使用ansible部署CDH 5.15.1大数据集群

    使用ansible离线部署CDH 5.15.1大数据集群 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在此之前,我之前分享过使用shell自定义脚本部署大数据集群,不管是部署CD ...

  8. pip安装指定版本的package

    起因 最近到一个项目组,用了一套高大上的运维工具来搭建开发环境. 有vagrant控制VirtualBox启动虚拟机.有ansible来运行playbook初始化环境. 然后遇到了一个坑,项目现有的p ...

  9. [linux]执行pip安装的程序:command not found

    执行pip安装的程序:command not found 问题描述: 我有一台阿里云服务器,上面装的是centos系统,我用pip安装好vituralenv,都没办法直接启动.同样 我今天在部署我的t ...

随机推荐

  1. C#课后练手

    猜拳(三局两胜)请输入您的手势:石头用户手势:石头      电脑手势:剪刀用户胜:1      电脑胜:0 请输入您的手势:石头用户手势:石头      电脑手势:石头用户胜:1      电脑胜: ...

  2. 如何打war包和jar包

    1.jar包的导出 答:右键项目,export—jarfile  生成. 2.war包的导入 答:方法一:右键项目,export—WAR file 生成. 方法二:[ant文件]—[deploy-be ...

  3. python 利用urllib 获取办公区公网Ip

    import json,reimport urllib.requestdef GetLocalIP(): IPInfo = urllib.request.urlopen("http://ip ...

  4. 六、Django之表单和类视图-Part 4

    一.表单form 为了接收用户的投票选择,我们需要在前端页面显示一个投票界面.让我们重写先前的polls/detail.html文件,代码如下: <h1>{{ question.quest ...

  5. Python获取每一位的数字,并返回到列表

    通过计算 def calc(value): result = [] while value: result.append(value % 10) value = value // 10 #逆序,按正常 ...

  6. Catlike学习笔记(1.2)-使用Unity画函数图像

    『Catlike系列教程』第二篇来了~今天周六,早上(上午11点)醒来去超市买了一周的零食回来以后就玩了一整天游戏非常有负罪感.现在晚上九点天还亮着感觉像下午7点左右的样子好像还不是很晚...所以就写 ...

  7. OLAP和OLTP的区别

    OLAP(On-Line Analytical Processing)联机分析处理,也称为面向交易的处理过程,其基本特征是前台接收的用户数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果 ...

  8. 初学node.js-nodejs中实现HTTP服务(3)

    一.node.js实现服务端 创建hello-world-server.js文件,服务端源码如下: /** * node.js实现http服务端 */ var http = require('http ...

  9. React Native移动开发实战-3-实现页面间的数据传递

    React Native使用props来实现页面间数据传递和通信.在React Native中,有两种方式可以存储和传递数据:props(属性)以及state(状态),其中: props通常是在父组件 ...

  10. ipython快捷键操作及常用命令

    Ipython shell命令- Ctrl-P 或上箭头键 后向搜索命令历史中以当前输入的文本开头的命令- Ctrl-N 或下箭头键 前向搜索命令历史中以当前输入的文本开头的命令- Ctrl-R 按行 ...