目录
ansible的安装:
一、配置centos8基本源
二、配置epel
三、安装ansible
四、查看ansible是否安装以及版本
实例:
实例一:控制主机和受控主机通过root用户免密验证远程控制主机实施对应任务
实例二:控制主机连接受控主机通过普通用户以免密验证远程控住受控主机实施特权指定操作
ansible的安装:
一、配置centos8基本源
#vim /etc/yum.repos.d/base.repo
[AppStream]
name=AppStream
baseurl=https://mirrors.aliyun.com/centos/8-stream/AppStream/x86_64/os/
gpgcheck=0
[BaseOS]
name=AppStream
baseurl=https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/
gpgcheck=0
二、配置epel
(1)安装epel源数据包
yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
安装完epel数据包后,会在/etc/yum.repos.d/下会多出四个epel开头的.repo型文件
(2)将repo的地址更换到阿里云开源镜像站
sed -i 's|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.co
m|'/etc/yum.rep os.d/epel*
sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel*
三、安装ansible
[root@localhost ~]# yum install ansible -y
四、查看ansible是否安装以及版本
[root@localhost ~]# ansible --version
实例:
实例一:控制主机和受控主机通过root用户免密验证远程控制主机实施对应任务
(1)控制主机--server 通过主机名匹配对应连接的主机
#vim /etc/hosts
192.168.101.111 node1 node1.exmaple.com
192.168.101.222 node2 node2.exmaple.com
(2)实现控制主机能够免密登录受控主机
1.在控制主机上生成密钥对
#ssh-keygen
2.将生成的密钥对发送到受控主机
#ssh-copy-id -i node1
#ssh-copy-id -i node2
3.验证免密是否成功登录
[root@server ~]# ssh node1 hostname
node1
[root@server ~]# ssh node2 hostname
node2
实例二:控制主机连接受控主机通过普通用户以免密验证远程控住受控主机实施特权指定操作
当我们用普通用户在受控主机上新建用户时,会遇到权限不够的问题,而ansible中有提权的操作
(1)确定控制端和受控端都有对应的普通身份,可以通过 id 用户名 查看
(2)进入控制端的普通用户下,再次创建密钥对,发送给受控主机实现免密登录
(3)在受控主机中进行提权操作
vim /etc/sudoers
第一种[root@node1 ~]# cat /etc/sudoers | grep -C 1 redhat 查看是否授权
root ALL=(ALL) ALL
redhat ALL=(ALL) NOPASSWD: ALL
第二种[root@node2 ~]# cat /etc/sudoers | grep wheel
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) NOPASSWD: ALL
[root@node2 ~]# gpasswd -a cyg wheel
正在将用户“cyg”加入到“wheel”组中
(4)查看提权是否成功
[root@server ~]# ssh node1 sudo useradd user1
[root@server ~]# ssh node1 id user1
uid=1001(user1) gid=1001(user1) 组=1001(user1)
[root@server ~]# ssh node2 id cyg
uid=1000(cyg) gid=1000(cyg) 组=1000(cyg),10(wheel)