LINUX之Ansible自动化运维工具配置和ssh-keygen配置远程免密钥登录

‌**Ansible是一个基于Python开发的自动化运维工具,主要用于配置管理、应用部署、批量运行命令等任务。**‌

  • 核心特性‌:Ansible具有无Agent、幂等性等特性,无需在被管理节点上安装客户端,通过SSH协议即可实现远程管理。同时,其大多数模块都具备幂等性,即多次执行同一操作结果相同。

  • 工作方式‌:Ansible基于模块化工作,本身不提供执行任务的能力,而是通过调用特定的模块来完成任务。它使用YAML语言编写Playbooks,实现任务的自动化执行和配置管理。

  • 应用场景‌:Ansible适用于批量配置、部署、管理上千台主机,能够大大提高运维效率,降低运维成本‌

两种方式打印1-20,但此种方式是单线程方式

复制代码
for i in $(seq 1 20);do echo 192.168.45.13$i;done
for i in {1..20}; do echo 192.168.45.13$i;done

在ansible机器上安装ansible服务

复制代码
[root@localhost ~]# yum install -y ansible

通过rpm -ql ansible 和命令 find / -name ansible查看Ansible软件的安装路径

通过ansible --version查看安装的版本号

安装完成后配置文件目录在:/etc/ansible/ansible.cfg通过ansible --version可以看到路径

hosts文件路径在/etc/ansible/hosts下,通过命令ls -l /etc/ansible/hosts查看

通过命令[root@localhost ~]# ansible -i /etc/ansible/hosts 192.168.45.135 -m command -a "df -h",相当于远程连接到135机器上,并执行df -h命令,但由于现在没有配置hosts文件,所以报如下错误

复制代码
[root@localhost ~]# ansible -i /etc/ansible/hosts 192.168.45.135 -m command -a "df -h"

在配置文件添加完三台客户机后,即可通过以上命令访问对应客户ip

vim /etc/ansible/hosts添加三台客户机

执行以上命令加入-k是输入密码的意思,-m是模块的意思

配置面密钥登录

通过ssh-keygen生成公钥和私钥,当提示输入信息时,直接回车为系统默认输入方式

通过ls -l /root/.ssh/id_rsa*查看生成的公钥和私钥,公钥为.pub

通过命令ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.45.135

复制代码
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.45.135

后将公钥拷贝到远程机器,则在登录远程机器时只需要首次输入密码后,后续登录将不再需要密码

后续执行命令将不再需要输入密码

相关推荐
looking_for__3 分钟前
【Linux】应用层自定义协议与序列化
linux·服务器·网络
云中飞鸿3 分钟前
VS编写QT程序,如何向linux中移植?
linux·开发语言·qt
晚风_END9 分钟前
Linux|操作系统|elasticdump的二进制方式部署
运维·服务器·开发语言·数据库·jenkins·数据库开发·数据库架构
嵌入小生0079 分钟前
Standard IO -- Continuation of Core Function Interfaces (Embedded Linux)
linux·vim·嵌入式·标准io·vscode
Zach_yuan10 分钟前
传输层之TCP/UDP 核心原理全解析:从协议基础到实战机制
linux·网络协议·tcp/ip·udp
独自归家的兔11 分钟前
Ubuntu 系统 systemd timers 详解:替代 crontab 的定时任务进阶方案
linux·运维·ubuntu
Lsir10110_12 分钟前
【Linux】深入解剖页表——分页式存储
linux·运维·服务器
victory043112 分钟前
服务器病毒处理记录
运维·服务器·chrome
爱吃生蚝的于勒13 分钟前
【Linux】线程概念(一)
java·linux·运维·服务器·开发语言·数据结构·vim
风指引着方向14 分钟前
昇腾 AI 开发生产力工具:CANN CLI 的高级使用与自动化脚本编写
运维·人工智能·自动化