【Ansible 学习之旅】配置控制机器和受控机器

系列文章

Ansible 介绍和架构
Ansible 安装和入门


目录


上一篇文章中提到,我们有三个虚拟机:

主机 操作系统 IP地址 角色 主要软件
server1 Rocky Linux 8.8 192.168.30.121 控制机器 ansible
server2 Rocky Linux 8.8 192.168.30.122 受控机器 httpd
server3 Rocky Linux 8.8 192.168.30.123 受控机器 mysql

并且我们已经完成了在控制机器server1 上安装ansible。下面要建立server1与另外两台机器之间的控制关系。

修改控制机器上ansible的清单文件

Ansible 的全局主机清单文件 Inventory 位于/etc/ansible/hosts。上一篇文章也介绍了/etc/ansible下的重要文件和目录的含义。参阅Ansible 安装和入门

这里我们在/etc/ansible/hosts文件中添加两个组,分别是webserver和mysql,各包含一个主机。

bash 复制代码
vim /etc/ansible/hosts

[webserver]
192.168.30.122
[mysql]
192.168.30.123

主机清单文件的目的是让 Ansible 知道它需要管理哪些主机,以及如何分组这些主机。例如,我们可以创建一个名为 "webservers" 的组,然后将所有 Web 服务器添加到这个组中。这样,在执行任务时就可以针对这个组而不是单独的每一台服务器


配置公私钥

ansible 是基于 ssh 协议实现的,所以其配置公私钥的方式与 ssh 协议的方式相同。

  1. 生成公私钥对

    • 在控制节点上,打开终端并输入 ssh-keygen -t rsa 命令来生成 RSA 密钥对。
    • 当提示保存密钥的位置时,回车接受默认路径(通常是 ~/.ssh/id_rsa)。
    • 输入密码(如果不需要密码,则留空)。
    • 再次输入相同的密码确认。
    • 生成的密钥对将分别保存在 id_rsa(私钥)和 id_rsa.pub(公钥)文件中。
  2. 查看生成的密钥:

    使用 ls 命令查看.ssh目录下生成的密钥文件:id_rsa 和 id_rsa.pub。

  3. 向被管理节点发送公钥:

    使用 ssh-copy-id 命令将公钥复制到被管理节点的 .ssh/authorized_keys 文件中。

bash 复制代码
ssh-copy-id root@192.168.30.122
ssh-copy-id root@192.168.30.123



主机连通性测试

要测试控制节点(Ansible 主机)与被管理节点(目标主机)之间的连通性,我们可以使用 ping 模块。ping 模块是 Ansible 提供的一个内置模块,用于检查目标主机是否可达。

bash 复制代码
ansible webserver -m ping
ansible mysql -m ping

示例:

相关推荐
传奇开心果编程1 分钟前
【Rust入门练中学】 第1课:从零开始
开发语言·学习·rust
高亦真21 分钟前
今天是学习嵌入式的第39天
linux·学习·算法
冬奇Lab1 小时前
DeepSeek Harness 系列(10):写一个完整的 dsh 插件——从需求到上线
人工智能·学习·开源
边境悍匪1 小时前
蜗牛学苑 Java 智能体学习 Day44|Vue 前端项目搭建 思维导图复盘
java·开发语言·spring boot·学习·阿里云
彧azz1 小时前
Java学习记录:判断语句
java·笔记·学习·算法
M78佐菲2 小时前
ARM学习笔记(四)
linux·arm开发·笔记·嵌入式硬件·学习
昌原的儿子LEO2 小时前
i.MX6ULL 裸机开发 C 语言驱动与 BSP 工程管理学习总结
linux·arm开发·学习
kkkkkkkkkk_Z2 小时前
单片机|学习日记:单片机底层架构与寄存器操作全解析
linux·笔记·单片机·学习·51单片机
逐辰十七3 小时前
2023级河海大学自动化计算机控制考试题目
学习
一只路人甲12 小时前
使用AI快速学习
学习