Ansible ad-hoc命令配置yum仓库

创建并运行 Ansibie ad-hoc 命令

创建一个 shell 脚本名为 adhoc.sh 用以运行 ad-hoc 命令 . 为每个受控节点配罝 yum仓库. 
要求如下: 
仓库1 : 
- ​ Name: RH294_Base 
- ​ Description: RH294 base software 
- ​ Baseurl: http://content.example.com/rhel8.0/x86_64/dvd/BaseOS 
- ​ 需要验证钦件包 GPG 签名 
- ​ GPG key 在: /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 
- ​ 启用此软件仓库 
-仓库 2:
- ​ Name: RH294_Stream 
- ​ Description : RH294 stream software 
- ​ Baseurl: http://content.example.com/rhel8.0/x86_64/dvd/AppStream 
- ​ 需要验证软件包 GPG 签名 
- ​ GPG key 在: /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 
- ​ 启用此软件仓库

先测试

[devops@workstation ansible]$ ansible prod -m yum_repository -a 'name="RH294_Base" \
> description="RH294 base software" \
> baseurl="http://content.example.com/rhel8.0/x86_64/dvd/BaseOS" \
> gpgcheck=yes \
> gpgkey=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release \
> enabled=yes'

Ansible ad-hoc命令配置yum仓库_第1张图片
成功!

编辑shell脚本

[devops@workstation ansible]$ vim adhoc.sh
#!/bin/bash
ansible all -m yum_repository -a 'name=RH294_Base \
    description="RH294 base software" \ 
	baseurl="http://content.example.com/rhel8.0/x86_64/dvd/BaseOS" \ 
	gpgcheck=yes \ 
	gpgkey=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release \ 
	enabled=yes' 
ansible all -m yum_repository -a 'name=RH294_Stream \ 
	description="RH294 stream software" \ 
	baseurl="http://content.example.com/rhel8.0/x86_64/dvd/AppStream" \ 
	gpgcheck=yes \ 
	gpgkey=/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release \ 
	enabled=yes'

给脚本添加执行权限

[devops@workstation ansible]$ chmod +x adhoc.sh

执行脚本

[devops@workstation ansible]$ ./adhoc.sh

Ansible ad-hoc命令配置yum仓库_第2张图片
(主机serverb不知道为什么没有启动起来!)

心得:

这个实验应该是很简单的,但是我弄了一下午,报错的点
(测试的是dev主机组)
Ansible ad-hoc命令配置yum仓库_第3张图片
内容上没有太大的错误,最后认为可能是格式上有问题:
最后做了一些调整:
(这次用的是prod主机组)
Ansible ad-hoc命令配置yum仓库_第4张图片
name和repository不要写在同一行;
-a不要换行后直接加上name=“RH294_Base”,换行后‘\’再添加repository
baseurl后面的网址考虑到有特殊字符要加上双引号“ ”
最后,编写yum源仓库的时候可能会遗漏,或者不熟悉可以再打开另一个会话框使用帮助手册

[devops@workstation ~]$ ansible-doc yum_repository

建议直接/EXAMPLE去看例子,这样会更方便!
(加油!!!)

你可能感兴趣的:(linux,centos)