当前位置: 首页 > news >正文

Centos7安装自动化运维Ansible

自动化运维Devops-Ansible

Ansible是新出现的自动化运维工具,基于Python 开发,集合了众多运维工具(puppet 、cfengine、chef、func、fabric)的优点,实现了批量系统配置 、批量程序部署、批量运行命令 等功能。Ansible架构相对比较简单,仅需通过SSH 连接客户机 执行任务即可

Ansible是一个同事管理多个远程主机的软件(ssh),可以是linux也可以是Windows主机

测试环境

操作系统版本

IP地址

主机名

Centos7.6

192.168.68.133

manage

Centos7.6

192.168.68.134

node01

Centos7.6

192.168.68.135

node02

# 关闭selinux

修改/etc/sysconfig/selinux文件中的SELINUX=disable

sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

#关闭防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

Ansible的认证方式有:SSH、公私钥认证

安装python3

yum -y install python3 python3-pip -y

Manage安装ansible

yum安装

# 安装依赖epel-release

yum -y install epel-release

#安装ansible

yum -y install ansible

ansible --version

二进制安装

# 可以自己选择版本    

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

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命令语法

Ansible 192,168,68,124 -m shell -a “free -m”

Ansible webservers -m shell -a “free -m”

Ansible 192,168,68,[124:200] -m shell -a “free -m”

Ansible主机清单

/etc/ansible/hosts

编写node组

vim + /etc/ansible/hosts

配置认证

认证

将master虚拟机的公钥分发给需要免密登录的虚拟机

ssh-copy-id root@192.168.68.134

ansible 192.168.68.134 -m shell -a "hostname"

密码认证

vim + /etc/ansible/hosts

默认ansible_user=root

Ansible连接指纹确认

~/.ssh/known_hosts文件存放了目标机器的指纹信息

首次连接确认需要指纹确认,可以忽略

host_key_checking = False 不做检查主机密钥

ansible报错

> app | FAILED! => {

> "msg": "Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support

> this. Please add this host's fingerprint to your known_hosts fihost."

> }

解决办法:

vi /etc/ansible/ansible.cfg

在文件找到host_key_checking = False

修改前

# uncomment this to disable SSH key host checking

#host_key_checking = False

修改后:就是把前面得#号去掉

# uncomment this to disable SSH key host checking

host_key_checking = False

http://www.lryc.cn/news/383279.html

相关文章:

  • element-ui 下拉菜单el-dropdown-item添加点击事件
  • Day45
  • 新媒体矩阵系统是什么?怎么搭建矩阵系统?
  • HarmonyOS应用开发——Hello World
  • Ubuntu20.04使用Samba
  • 第9章:软件可靠性基础知识
  • Go 语言学习笔记之通道 Channel
  • 第 133 场 LeetCode 双周赛题解
  • 【仿真】UR机器人相机标定、立体标定、手眼标定、视觉追踪(双目)
  • 功能测试【测试用例模板、Bug模板、手机App测试★】
  • Android音频系统
  • Android开发系列(九)Jetpack Compose之ConstraintLayout
  • SpringMVC系列三: Postman(接口测试工具)
  • 项目实训-vue(十二)
  • 达梦数据库的系统视图v$lock
  • 【无人机三维路径规划】基于树木生长算法TGA实现复杂城市地形下无人机避障三维航迹规划附Matlab代码
  • 制造业工厂的管理到底有多难
  • QTday5 2024-06-19
  • Node官网下载各个版本
  • 备战秋招day4
  • 【华为OD机试B卷】服务器广播、需要广播的服务器数量(C++/Java/Python)
  • 目标检测数据集 - 手机屏幕表面表面缺陷检测数据集下载「包含VOC、COCO、YOLO三种格式」
  • 语音相关算法学习整理
  • [C#] opencvsharp对Mat数据进行序列化或者反序列化以及格式化输出
  • Linux中的TCP与UDP:理解两者的差异
  • 通信系统网络架构_1.局域网网络架构
  • Pycharm 启动 Django项目 —— python篇
  • 6-47选择整数计算
  • 什么是Redis?|介绍与使用及特点浅记
  • LeetCode题练习与总结:只出现一次的数字Ⅱ--137