Ansible 基本配置
准备工作
创建三台 linux 虚拟机,虚拟机均在一个网段,可以相互 ping 通。三台虚拟机均安装 python,主控端安装 ansible
清华源可以下载
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/20.04/
可以直接新创建三台 ubuntu 虚拟机
我这里直接另外创建了两个
创建的时候用户名可以写一样的,之后命令写起来方便. 或者像我一样图方便直接用 root 也行。反正是写作业,现实不会这么干
配置 ansible
安装方式不唯一,下面这种不行可自行百度尝试其他方式
apt update
apt install ansible
apt install ansible-core
安装完成之后可以测试一下是否安装成功
ansible --version
这样就可以了
然后找到 ansible 的配置文件,一般来说在 /etc/ansible/ansible.cfg
找不到的话就直接新建一个就行
vim /etc/ansible/ansible.cfg
里面写上
[default]
inventory = ./hosts
保存后再新建一个 hosts 文件
vim /etc/ansible/hosts
里面写上分组情况,注意 ip 是其他另外两台被控端的 ip。
h144 ansible_host=192.168.107.136
h145 ansible_host=192.168.107.137
[huoaixin]
h144
h145
[dbs]
h145
localhost ansible_connection=local
写完记得截图 。
然后列出配置过的主机列表, 记得截图
将主控端公钥复制到被控端的所有主机
首先我们需要在被控端安装 ssh
sudo apt upgrade
sudo apt install openssh-server
sudo systemctl start ssh
然后查看一下 ssh 的配置文件 vim /etc/ssh/sshd_config
如果你想学我一样图省事,就把第一个框框的注释取消掉, 否则别这么干
以防万一,重置一下被控端密码
passwd root
在主控端测试一下成不成功 ssh root@192.168.107.136
两台被控端都要配置好 ‘
接下来我们把公钥复制到被控端的所有主机
ansible huoaixin -m ansible.posix.authorized_key -a "user=root key='{{lookup('file', '/root/.ssh/id_rsa.pub') }}' path=/home/ubuntu/.ssh/authorized_keys manage_dir=yes" --ask-pass
如果报错的话,检查一下输入的密码是否正确,以及检查命令中的分组、用户名是否正确,检查配置文件路径是否正确。
没错的话是这样的
记得截图
测试主机连通性
一条命令即可
ansible -m ping huoaixin --ask-pass