第 8 章 使用 RHEL 系统角色配置网络设置

管理员可以使用 network RHEL 系统角色自动化与网络相关的配置和管理任务。

8.1. 使用网络 RHEL 系统角色和接口名称,使用静态 IP 地址配置以太网连接

您可以使用 network RHEL 系统角色远程配置以太网连接。

在 Ansible 控制节点上执行此步骤。

先决条件

  • 您已准备好控制节点和受管节点
  • 以可在受管主机上运行 playbook 的用户登录到控制节点。
  • 用于连接到受管节点的帐户对其具有 sudo 权限。
  • 要在其上运行此 playbook 的受管节点或受管节点组列在 Ansible 清单文件中。
  • 服务器配置中有一个物理或者虚拟以太网设备。
  • 受管节点使用 NetworkManager 配置网络。

流程

  1. 创建包含以下内容的 playbook 文件,如 ~/ethernet-static-IP.yml

    ---
    - name: Configure the network
      hosts: managed-node-01.example.com
      tasks:
      - name: Configure an Ethernet connection with static IP
        include_role:
          name: rhel-system-roles.network
    
        vars:
          network_connections:
            - name: enp1s0
              interface_name: enp1s0
              type: ethernet
              autoconnect: yes
              ip:
                address:
                  - 192.0.2.1/24
                  - 2001:db8:1::1/64
                gateway4: 192.0.2.254
                gateway6: 2001:db8:1::fffe
                dns:
                  - 192.0.2.200
                  - 2001:db8:1::ffbb
                dns_search:
                  - example.com
              state: up

    这些设置使用以下设置为 enp1s0 设备定义一个以太网连接配置文件:

    • 静态 IPv4 地址 - 192.0.2.1/24 子网掩码
    • 静态 IPv6 地址 - 2001:db8:1::1/64 子网掩码
    • IPv4 默认网关 - 192.0.2.254
    • IPv6 默认网关 - 2001:db8:1::fffe
    • IPv4 DNS 服务器 - 192.0.2.200
    • IPv6 DNS 服务器 - 2001:db8:1::ffbb
    • DNS 搜索域 - example.com
  2. 验证 playbook 语法:

    # ansible-playbook ~/ethernet-static-IP.yml --syntax-check

    请注意,这个命令只验证语法,且不会防止错误但有效的配置。

  3. 运行 playbook:

    # ansible-playbook ~/ethernet-static-IP.yml

其他资源

  • /usr/share/ansible/roles/rhel-system-roles.network/README.md 文件