【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

示例:

相关推荐
CV学术叫叫兽17 分钟前
一站式学习:害虫识别与分类图像分割
学习·分类·数据挖掘
我们的五年28 分钟前
【Linux课程学习】:进程程序替换,execl,execv,execlp,execvp,execve,execle,execvpe函数
linux·c++·学习
qq_3831398431 分钟前
ansible playbook安装nacos
ansible
一棵开花的树,枝芽无限靠近你1 小时前
【PPTist】添加PPT模版
前端·学习·编辑器·html
VertexGeek1 小时前
Rust学习(八):异常处理和宏编程:
学习·算法·rust
二进制_博客2 小时前
Flink学习连载文章4-flink中的各种转换操作
大数据·学习·flink
codebolt2 小时前
ADS学习记录
学习
Komorebi.py3 小时前
【Linux】-学习笔记05
linux·笔记·学习
朝九晚五ฺ11 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
猫爪笔记12 小时前
前端:HTML (学习笔记)【1】
前端·笔记·学习·html