ansible的基本安装

目录

一、简介

1.ansible自动化运维人工运维时代

2.自动化运维时代

3.ansible介绍

4.ansible特点

二、ansible实践

1.环境

2.ansible管理安装

3.ansible被管理安装

4.管理方式

5.添加被管理机器的ip

6.ssh密码认证方式管理

三、配置免密登录

1.ansible自带的密码认证参数

2.ssh密钥方式批量管理


一、简介

1.ansible自动化运维人工运维时代

运维人员早期需要维护数量众多的机器,因此需要执行反复,重复的劳动力,很多机器需要同时部署相同的服务或是执行相同的命令,得反复的登录不同的机器,执行重复的动作。

比如说你要在backup服务器配置rsync服务,进行数据同步的操作,那么客户端都得单独的安装一下rsync命令工具才能正确使用你可能一台台机器去登录,安装rsync之后,再推出,登录下一个机器,可以使用xshel等工具,快捷的创建ssh登录,但是还是属于人]运维,效率比较低

2.自动化运维时代

早期运维人员会结合ssh免密登录以及shell脚本来完成自动化的部署操作系统管理员面临的问题主要是,配置管理系统,远程执行命令,批量安装服务,启停服务等等

后来也就诞生了众多的开源软件,自动化运维软件

  • fabric
  • puppet
  • saltstack
  • chef
  • Ansible

3.ansible介绍

ansible是一个同时管理多个远程主机的软件,必须是任意可以通过ssh登录的机器,因此ansible可以管理的机器如

  • 远程虚拟机
  • 物理机
  • 也可以直接管理本机机器

ansible通过shh协议实现了,管理节点(老板,安装了ansible服务的机器),被管理节点(员工,被管理的机器节点)的通信。只能是通过ssh协议登录的主机,就可以完成ansible自动化部署操作。

ansible通过shh协议实现了,管理节点(老板,安装了ansible服务的机器),被管理节点(员工,被管理的机器节点)的通信。只能是通过ssh协议登录的主机,就可以完成ansible自动化部署操作

  • 批量文件分发
  • 批量数据复制
  • 批量数据修改,删除
  • 批量自动化安装软件服务
  • 批量服务启停
  • 脚本化,自动批量服务部署

4.ansible特点

ansible的编排引擎可以出色的完成各种任务配置管理,ansible在流程控制,资源部署等方便很强大,并且ansible无须安装客户端软件管理简洁,使用yaml配置文件语法,功能强大,便于维护。

ansible是基于python语言开发的,主要由python的两个ssh处理模块,paramiko,以及PyYAML模块。

  • 安装部署简单
  • 管理主机便捷,支持多台主机并行管理
  • 无须安装被管理节点的客户端(no agent),且无须占用客户端的其他端口,仅仅使用ssh服务即可
  • 不仅仅支持python,还支持其他语言的二次开发
  • 不用root用户也可执行,降低系统权限

二、ansible实践

1.环境

准备三个虚拟机

一台管理机器

两台被管理机器

三台设备要配置好ssh

2.ansible管理安装

yum install epel-release -y
yum install ansible libselinux-python -y

看下ansible的各种命令

rpm -ql ansible | grep -E '^/etc|^/usr/bin'

3.ansible被管理安装

yum install ansible libselinux-python -y

4.管理方式

ansible批量管理主机的方式主要两种

  • 传统的输入ssh密码验证
  • 密钥管理

备份一下hosts文件

cp /etc/ansible/hosts{,.ori} 
ls /etc/ansible/

5.添加被管理机器的ip

vim /etc/ansible/hosts

添加被管理ip

[manage]
192.168.0.107
192.168.0.103

6.ssh密码认证方式管理

ansible是直接利用linux本地的ssh服务,以及一些远程的ssh操作,一般情况下客户端的sh服务默认都是开启的,无须额外管理

  • -m MODULE_NAME,--module-name=MODULE_NAME

#module name to execute (default=command)

#指定执行使用的模块,默认使用 command 模块

  • -a MODULE_ARGS,--args=MODULE_ARGS

#module arguments

#指定执行模块使用的参数

  • -k 询问密码验证

在管理机器上,告诉其他被管理的机器,你要执行什么命令,以及用什么用户去执行

ansible manage -m command -a 'hostname' -k -u root

输出网卡信息

ansible manage -m command -a 'ip a' -k -u root

三、配置免密登录

每次执行ansible命令的时候,都需要输入ssh的认证密码,也就是rot的密码,如果不同的主机密码不一致,那你还得输入多次才行因此我们可以配置如下的快捷登录方式

1.ansible自带的密码认证参数

可以在 /etc/ansible/hosts文件中,定义好密码即可,即可实现快速的认证,远程管理主机

参数

  • ansible_host 主机地址
  • ansible_port 端口,默认是22端口
  • ansible_user 认证的用户
  • ansible ssh_pass 用户认证的密码
vim /etc/ansible/hosts

填入

[manage]
192.168.0.107 ansible_user=root ansible_ssh_pass=123456
192.168.0.103 ansible_user=root ansible_ssh_pass=123456

验证

ansible manage -m command -a 'hostname'

2.ssh密钥方式批量管理

ssh免密登录形式

原理图

105(ansible管理机的配置)

生成私钥

 ssh-keygen -f ~/.ssh/id_rsa -P "" >  /dev/null 2>&1

编写公钥分发脚本
 

cd /myshell/vim ssh.sh
#!/bin/bash
rm -rf ~/.ssh/id_rsa*
ssh-keygen -f ~/.ssh/id_rsa -P ""> /dev/null 2>&1
SSH_Pass=123456
Key_Path=~/.ssh/id_rsa.pubfor ip in 103 107
dosshpass -p$SSH_Pass ssh-copy-id -i $Key_Path "-o StrictHostKeyChecking=no" 192.168.0.$ip
done# 非交互式分发公销命令需要用 sshpass指定SSH密码,通过-o StrictHostlking=no 跳过 SSH连接确认信息

测试一下

成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/206341.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站被攻击了怎么办,有什么办法防御攻击?

近年来,随着互联网发展,出现了各种各样的网站,web应用,网络极大方便了人们的生活,改变了人们生活方式。而随着网络的发展普及,网络安全问题也困扰着用户。 许多人都曾有过这样经历,网站上线后&…

Pytorch中的tensor维度理解

Pytorch中的tensor维度理解 文章目录 Pytorch中的tensor维度理解摘要打消心理恐惧,从三维学起三维tensor参考文献 摘要 面对pytorch编程中的tensor时,我不时会感到恐惧。对里面数据是怎么排布的,一直没有一个直观的理解。今天我想把这个事情…

微信小程序开发者工具] ? Enable IDE Service (y/N) ESC[27DESC[27C

在HBuilder运行微信小程序开发者工具报错 如何解决 打开微信小程序开发者工具打开设置--->安全设置--->服务器端口选择打开就可以啦

3.11-容器的资源限制

这一小节我们来看一下如何限制容器的资源,比如CPU和内存。 我们先来看一下对内存的限制。 --memory和--memory-swap这两个参数,如果我们只限定了--memory,没有限定--memory-swap,那么--memory-swap的大小就会和--memory大小一样。…

程序员兼职月入30k如何做,快来收藏这21个宝藏平台!

最近经济不太景气,大家都各种方法发展副业收入开源,在某职场论坛上,看到这样一个帖子:某程序员找了3份兼职,晒出自己月入3万的收入! 很多网友对此表示羡慕,评论区很多人在问,这个程…

我在Vscode学OpenCV 几何变换(缩放、翻转、仿射变换、透视、重映射)

几何变换指的是将一幅图像映射到另一幅图像内的操作。 cv2.warpAffine:使用仿射变换矩阵对图像进行变换,可以实现平移、缩放和旋转等操作。cv2.warpPerspective:使用透视变换矩阵对图像进行透视变换,可以实现镜头校正、图像纠偏等…

元素的点击操作

元素的点击操作 .click 语法 // 单击某个元素 .click()// 带参数的单击 .click(options)// 在某个位置点击 .click(position)// 在某个位置点击,且带参数 .click(position, options)// 根据页面坐标点击 .click(x, y)// 根据页面坐标点击,且带参数 .c…

区间第k小数 (可持久化线段树、主席树)

题意:多次询问,每次询问某区间的第k小数。 可持久化线段树: 掺杂了一点前缀和的思想,对于每一个1 ~ i 的区间都建一个树,每个节点存的都是一个线段树,值存的是当前区间中初始数组按大小排序后[l, r]之间的…

前缀和的动态维护——树状数组[C/C++]

文章目录 前言lowbitlowbit的定义lowbit的计算 树状数组的思想树状数组的操作单点修改 update前缀查询 query树状数组的建立 build 前言 树状数组巧妙了利用位运算和树形结构实现了允许单点修改的情况下,动态维护前缀和,并且实现单点修改和前缀和查询的效…

如何用CHAT分析网络流行语的构成特点及趋势?

问CHAT:请分析下网络流行语的构成特点及趋势 CHAT回复: 网络流行语的构成特点: 1. 新颖性:网络流行语象征着新潮的概念、思想和观点,它们新颖独特且易于传播。 2. 深入人心的设定:网络流行语通常是由大众…

四川思维跳动商务信息咨询有限公司引领电商服务的先锋

在当今数字化时代,抖音电商作为新型的电子商务模式,已经深入到各个领域。在这个大背景下,四川思维跳动商务信息咨询有限公司以其独特的思维模式和卓越的技术实力,引领着抖音电商服务的发展。 四川思维跳动商务信息咨询有限公司以…

ADManager Plus:全能Active Directory管理的得力助手

一、简介 ADManager Plus是一款功能强大的Active Directory(AD)管理工具,为企业提供了全面、高效的AD管理解决方案。它不仅简化了AD管理的复杂性,还提高了管理员的工作效率。作为一款综合性的工具,ADManager Plus涵盖…