考试要求
–syntax-check
在您的系统上执行以下所有步骤。
○ 复查 ○ 完成 重要配置信息
系统信息
帐户信息
其他信息
○ 复查 ○ 完成 安装和配置 Ansible
○ 复查 ○ 完成 创建和运行 Ansible 临时命令
○ 复查 ○ 完成 安装软件包
○ 复查 ○ 完成 使用 RHEL 系统角色
○ 复查 ○ 完成 使用 Ansible Galaxy 安装角色
○ 复查 ○ 完成 创建和使用角色
○ 复查 ○ 完成 从 Ansible Galaxy 使用角色
○ 复查 ○ 完成 创建和使用逻辑卷
○ 复查 ○ 完成 生成主机文件
○ 复查 ○ 完成 修改文件内容
○ 复查 ○ 完成 创建 Web 内容目录
○ 复查 ○ 完成 生成硬件报告
○ 复查 ○ 完成 创建密码库
○ 复查 ○ 完成 创建用户帐户
○ 复查 ○ 完成 更新 Ansible 库的密钥
系统信息
账户信息
其他信息
第一题 安装和配置Ansible
第一步:
通过远程连接greg用户进入控制节点172.25.250.254
[kiosk@foundation0 ~]$ ssh greg@172.25.250.254
Activate the web console with: systemctl enable --now cockpit.socket
第二步:
安装所需的软件包
[greg@bastion ~]$ sudo yum install -y ansible
检查软件是否安装成功
[greg@bastion ~]$ ansible --version
ansible 2.8.0
第三步:
先创建清单目录
[greg@bastion ~]$ mkdir /home/greg/ansible
后编辑清单文件
[greg@bastion ~]$ vim /home/greg/ansible/inventory
[dev]
172.25.250.9
[test]
172.25.250.10
[prod]
172.25.250.11
172.25.250.12
[balancers]
172.25.250.13
[webservers:children]
prod
[all:vars]
ansible_user=root
ansible_password=redhat
第四步:
创建配置文件且满足题目要求
[greg@bastion ~]$ cp /etc/ansible/ansible.cfg /home/greg/ansible/
[greg@bastion ~]$ vim /home/greg/ansible/ansible.cfg
inventory = /home/greg/ansible/inventory
roles_path = home/greg/ansible/roles
host_key_checking = False
[greg@bastion ~]$ mkdir /home/greg/ansible/roles
第五步:
检查
[greg@bastion ~]$ cd ansible/
[greg@bastion ansible]$ ansible-inventory --graph
@all:
|--@balancers:
| |--172.25.250.13
|--@dev:
| |--172.25.250.9
|--@test:
| |--172.25.250.10
|--@ungrouped:
|--@webservers:
| |--@prod:
| | |--172.25.250.11
| | |--172.25.250.12
[greg@bastion ansible]$ ansible all -m ping -o
172.25.250.12 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"}
172.25.250.13 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"}
172.25.250.11 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"}
172.25.250.10 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"}
172.25.250.9 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"}
第二题
第一步:
查看帮助,重新打开一个终端
[greg@bastion ~]$ ansible-doc -l | grep ^yum
yum Manages packages wit...
yum_repository Add or remove YUM re...
第二步:
编写shell脚本
[greg@bastion ansible]$ vim /home/greg/ansible/adhoc.sh
#!/bin/bash
ansible all -m yum_repository -a 'name=EX294_BASE description="EX294 base software" file=redhat_dvd baseurl=http://content/rhel8.0/x86_64/dvd/BaseOS gpgcheck=yes gpgkey=http://content/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release enabled=yes'
ansible all -m yum_repository -a 'name=EX294_STREAM description="EX294 stream software" file=redhat_dvd baseurl=http://content/rhel8.0/x86_64/dvd/AppStream gpgcheck=yes gpgkey=http://content/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release enabled=yes'
name #存储库的名字
description #描述
file #yum仓库的文件名
baseurl #yum源的地址
gpgcheck #是否检查签名
gpgkey #key的地址
enabled #是否启用
第三步:
执行脚本
[greg@bastion ansible]$ chmod +x adhoc.sh
[greg@bastion ansible]$ ./adhoc.sh
172.25.250.13 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"repo": "EX294_BASE",
"state": "present"
}
172.25.250.11 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": true,
"repo": "EX294_BASE",
"state": "present"
}
172.25.250.12 | CHANGED =>