Centos 7安装ansible自动化运维工具
1、介绍:
ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、SaltStack、chef、func)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
本期为大家展示安装ansible和一些基本的配置和命令使用,后期会讲述具体一些模块和其他内容。
2、部署环境
| 操作系统版本 | IP地址 | 主机名 |
|---|---|---|
| Centos7.6 | 192.168.0.200 | manage |
| Centos7.6 | 192.168.0.201 | node01 |
| Centos7.6 | 192.168.0.202 | node02 |

关闭selinux和防火墙
# 关闭selinux
修改/etc/sysconfig/selinux文件中的SELINUX=disable
sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
#关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
3、安装ansible
- yum安装
# 安装依赖epel-release
yum -y install epel-release
#安装ansible
yum -y install ansible
- 二进制编译安装
# 可以自己选择版本
wget https://releases.ansible.com/ansible/ansible-2.9.3.tar.gz
# 解压安装
tar xvf ansible-2.9.3.tar.gz
mv ansible-2.9.3.tar.gz /opt/ansible
cd /opt/ansible
# 安装依赖,pip3为python的安装,先确认是否安装python3
pip3 install -r requirements.txt -i https://pypi.yuna.tsinghua.edu.cn/simple/
# 创建软连接
ln -s /usr/bin/pip3 /usr/bin/pip
# 安装ansible
pip install --user ansible -i https://pypi.yuna.tsinghua.edu.cn/simple/
# 创建python软连接
ln -s /usr/bin/python3 /usr/bin/python
# 创建ansible软连接
ln -s /opt/ansible/bin/* /usr/bin
# 将配置文件复制到ansible 工作路径下
cp /opt/ansible/examples/ansible.cfg /etc/ansible
cp /opt/ansible/examples/hosts /etc/ansible
4、ansible配置文件
- ansible的主配置文件为/etc/ansible/ansible.cfg
inventory :管理的主机清单文件路径
library:ansible的模块存放的目录
remote_tmp:上述工作原理中提到的将脚本发送至对端的临时目录
local_tmp:上述工作原理中提到本地生成脚本存放的临时目录
forks:并发连接数,默认为5
sudo_user :命令执行用户
remote_port :访问管理主机的端口
host_key_checking:设置是否检查SSH主机的密钥,默认为false
timeout :ssh连接被管理主机的超时时间
log_path:ansilbe日志文件路径
- ansible的主机配置文件为/etc/ansible/hosts
# 这个清单就是我们的主机清单,里面保存的是一些 ansible 需要连接管理的主机列表
1、直接指明主机地址或者主机名
## green.example.com
## blue.example.com
192.168.0.200
192.168.0.201
node02
# 主机地址范围
192.168.0.[200:202]
2、定义一个主机组[组名]把地址或主机名加进去
例如mysql组
[mysqlserver]
192.168.0.201
web组
[webserver]
192.168.0.201
192.168.0.202
# 根据自己需求修改配置
5、ansbile常用命令
# 查看ansible版本
ansible --version

# 常用于获取模块信息及其使用帮助
ansible-doc -l | grep mysql
# 例如查找出mysql相关的模块信息

# ansible命令格式如下
ansible <host-pattern> [-f forks] [-m module_name] [-a args]
6、配置服务器间的ssh免密登录
# 在主控机上生成密钥
ssh-keygen # 接下来一路回车即可
# 将密钥传给客户端
ssh-copy-id root@192.168.0.201
ssh-copy-id root@192.168.0.202
# 期间会输一次客户端的登录密码即可
/
/
/
7、使用ansible的ping模块进行验证
# 测试两台客户机网络是否连通
ansible 192.168.0.201 -m ping

# 使用分组的host主机来验证
ansible webserver -m ping

Centos 7安装ansible自动化运维工具的更多相关文章
- Ansible自动化运维工具-上
[Ansible特点] 1)Ansible与saltstack均是基于Python语言开发的 2)安装使用简单,基于不同插件和模块实现各种软件,平台,版本的管理以及支持虚拟容器多层级的部署 3)不需要 ...
- Ansible自动化运维工具及其常用模块
Ansible自动化运维工具及其常用模块 目录 Ansible自动化运维工具及其常用模块 一.Ansible简介 1. Ansible概述 2. Ansible作用 3. Ansible的工作模块 4 ...
- Ansible 自动化运维工具
Ansible 自动化运维工具 Ansible是什么? Ansible是一个"配置管理工具"也是一个"自动化运维工具" Ansible 作用: Ansible是 ...
- Ansible自动化运维工具的使用
Ansible自动化运维工具的使用 host lnventory 管理主机 ip root账号密码 ssh端口 core mod ...
- Ansible自动化运维工具使用
概述本文描述自动化运维工具 Ansible 的安装及基础使用方法,包含: Centos 下的安装主机配置Ad-Hoc command(命令行执行)Playbook (任务剧本)Ansible 和 Sa ...
- ansible自动化运维工具使用详解
一. ansible 简介 1. ansible ansible是新出现的 自动化 运维工具 , 基于Python研发 . 糅合了众多老牌运维工具的优点实现了批量操作系统配置.批量程序的部署.批量运行 ...
- Ansible自动化运维工具
ansible软件介绍 python语言是运维人员必会的语言! ansible是一个基于Python开发的自动化运维工具!(saltstack) 其功能实现基于SSH远程连接服务! ans ...
- Ansible自动化运维工具安装与使用实例
1.准备两台服务器,要确定网络是通的.服务器当然越多越好啦....Ansible的简介和好处我就不多说了,自己看百科去(*╹▽╹*) IP:192.168.139.100 IP:192.168.139 ...
- 三石之道之Ansible自动化运维工具部署
centos6默认python版本为2.6 centos7默认python版本为2.7 ansible需要最低python2.7的支持 总结:centos6要部署ansible工具,需要先升级pyth ...
- CentOS7下搭建Ansible自动化运维工具,集中管理服务器
(1).Ansible具有如下特点: 部署简单,只需在主控端部署Ansible环境,被控端无需做任何操作: 默认使用SSH协议对设备进行管理: 主从集中化管理: 配置简单.功能强大.扩展性强: 支持A ...
随机推荐
- python菜鸟学习: 5.字符串的基本用法,进度条显示
# -*- coding: utf-8 -*-import sys,timestr1 = "my name is liyuzhoupan"# 首字母大写print(str1.cap ...
- Centos7编译Nginx1.19.0笔记
下载Nginx安装包 官网下载页:http://nginx.org/en/download.html 终端输入: # 安装依赖yum -y install wget gcc gcc-c++ autoc ...
- Linux基础命令、按照软件、数据库基础操作
一.Linux基础命令 1.防火墙 systemctl - 控制 systemd 系统与服务管理器 systemctl 可用于 检查和控制 systemd(1) 系统与服务管理器的 状态 常用的命令: ...
- 06 Spark SQL 及其DataFrame的基本操作
1.Spark SQL出现的 原因是什么? Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个叫作Data Frame的编程抽象结构数据模型(即带有Schema信息的RDD),S ...
- Notepad++中文设置
找到问题所在了,作者改了个小代码,在安装目录下打开localization找到chineseSimplified,打开后,在852行那里找到下面这段代码 <MarginsBorderEdge t ...
- 4、excel快速排序从1开始
在分世界杯的文件时,要求把每一行从1开始排列,自己的做法就是先输入1和2,然后拖黑1和2,接着鼠标一直往下拖,这样就了. 公式的方法: 输入公式=Row()-1,如何在这个单元格的右下角双击就可以了 ...
- 【Android异常】关于静态注册BroadcastReceiver接收不到自定义广播的问题
Android 8.0以上需要setComponent()来指定包名和类名,第1个参数是指接收广播类的包名,第2个参数是指接收广播类的完整类名.静态广播1.先使用Android Studio创建一个广 ...
- nginx启动命令
启动加载配置文件 [root@172 sbin]#/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 检查配置信息是否正确 ...
- 2022 ICPC沈阳合肥游记
选赛区的时候很争议,除了沈阳是确定要选,队友对于合肥新赛区的看法很质疑,但我想选合肥,一是觉得人少,二是觉得强队会少,因为隔壁CCPC.然后就选了合肥,看情况选合肥确实很对. 一开始也不认为会拿牌,后 ...
- FII-PRA006/010开发板硬件实验一
FII-PRA006/010开发板硬件实验一 以一位全加器为例介绍如何利用开发板进行板载实验.一位全加器的Verilog代码如下: 1 2 3 4 5 6 7 8 9 10 module fadd1 ...