zl程序教程

您现在的位置是:首页 >  其他

当前栏目

RHCE之路--09生成主机文件

文件 -- 生成 主机 之路 09 rhce
2023-09-14 09:02:05 时间

1. 考题

将一个初始模板文件从 http://materials.example.com/cd/exam_rhce8/hosts.j2 下载到 /home/student/ansible完成该模板,以便用它生成以下文件:针对每个清单主机包含一行内容,其格式与/etc/hosts 相同
创建名为 /home/student/ansible/hosts.yml 的 playbook ,它将使用此模板在 dev 主机组
中的主机上生成文件 /etc/myhosts 。该 playbook 运行后, dev 主机组中主机上的文件 /etc/myhosts 应针对每个受管主机包含一行内容:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.25.250.9 node1.lab.example.com node1
172.25.250.10 node2.lab.example.com node2
172.25.250.11 node3.lab.example.com node3
172.25.250.12 node4.lab.example.com node4
172.25.250.13 node5.lab.example.com node5

2. 解题

2.1 获取模板文件

wget http://materials.example.com/cd/exam_rhce8/hosts.j2 

2.2 配置模板文件

vi /home/student/ansible/hosts.j2 
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

{% for host in groups.all %}
{{ hostvars[host]["ansible_facts"]["default_ipv4"]["address"] }} {{ hostvars[host]["ansible_facts"]["fqdn"] }} { hostvars[host]["ansible_facts"]["hostname"] }}
{% endfor %}

2.3 配置yml

vi /home/student/ansible/hosts.yml
---
- name: 9
  hosts: all

  tasks:
    - name: template
      template:
        src: hosts.j2
        dest: /etc/myhosts
      when: inventory_hostname in groups.dev

2.4 执行yml

ansible-playbook /home/student/ansible/hosts.yml

3. 确认本题是否成功

没有报错即可
在这里插入图片描述