部署Ansible,本地的student用户与被控节点的student配置免密,Ansible清单里面使用主机名。
时间: 2023-12-30 11:02:34 浏览: 37
要实现在本地的student用户与被控节点的student配置免密,需要进行以下步骤:
1. 在本地生成SSH密钥对,并将公钥复制到被控节点的student用户的authorized_keys文件中。可以使用以下命令来生成SSH密钥对:
```
ssh-keygen
```
2. 在Ansible清单中使用主机名,而不是IP地址。例如:
```
[webservers]
webserver1.example.com
webserver2.example.com
[databases]
dbserver1.example.com
dbserver2.example.com
```
3. 在Ansible控制节点上安装并配置SSH客户端。可以使用以下命令来安装SSH客户端:
```
sudo apt-get install ssh
```
4. 在Ansible控制节点上安装并配置Ansible。可以使用以下命令来安装Ansible:
```
sudo apt-get install ansible
```
5. 在Ansible控制节点上创建Ansible清单文件。可以使用以下命令来创建Ansible清单文件:
```
sudo nano /etc/ansible/hosts
```
在清单文件中,按照第2步的格式指定被控节点的主机名。
6. 在Ansible控制节点上测试Ansible是否可以连接到被控节点。可以使用以下命令来测试连接:
```
ansible all -m ping
```
如果一切正常,应该会显示类似于以下内容的输出:
```
webserver1.example.com | SUCCESS => {
"changed": false,
"ping": "pong"
}
webserver2.example.com | SUCCESS => {
"changed": false,
"ping": "pong"
}
dbserver1.example.com | SUCCESS => {
"changed": false,
"ping": "pong"
}
dbserver2.example.com | SUCCESS => {
"changed": false,
"ping": "pong"
}
```
现在,Ansible应该已经配置完成,并且可以使用主机名来管理被控节点。