8.14. 使用 network RHEL 系统角色配置 ethtool coalesce 设置

您可以使用 network RHEL 系统角色配置 NetworkManager 连接的 ethtool coalesce 设置。

重要

当您运行一个使用 network RHEL 系统角色的 play 时,如果设置值与 play 中指定的值不匹配,则角色会用相同的名称覆盖现有的连接配置文件。要防止将这些值重置为默认值,请始终在 play 中指定网络连接配置文件的整个配置,即使配置(如 IP 配置已存在)。

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

先决条件

  • 您已准备好控制节点和受管节点
  • 以可在受管主机上运行 playbook 的用户登录到控制节点。
  • 用于连接到受管节点的帐户对其具有 sudo 权限。
  • 要在其上运行此 playbook 的受管节点或受管节点组列在 Ansible 清单文件中。

流程

  1. 创建一个 playbook 文件,如 ~/configure-ethernet-device-with-ethtoolcoalesce-settings.yml,其内容如下:

    ---
    - name: Configure the network
      hosts: managed-node-01.example.com
      tasks:
      - name: Configure an Ethernet connection with ethtool coalesce settings
        include_role:
          name: rhel-system-roles.network
    
        vars:
          network_connections:
            - name: enp1s0
              type: ethernet
              autoconnect: yes
              ip:
                address:
                  - 198.51.100.20/24
                  - 2001:db8:1::1/64
                gateway4: 198.51.100.254
                gateway6: 2001:db8:1::fffe
                dns:
                  - 198.51.100.200
                  - 2001:db8:1::ffbb
                dns_search:
                  - example.com
              ethtool:
                coalesce:
                  rx_frames: 128
                  tx_frames: 128
              state: up

    此 playbook 使用以下设置创建 enp1s0 连接配置集,或者在配置集已存在时进行更新:

    • 静态 IPv4 地址 - 198.51.100.20 ,子网掩码为 /24
    • 静态 IPv6 地址 - 2001:db8:1::1/64 子网掩码
    • IPv4 默认网关 - 198.51.100.254
    • IPv6 默认网关 - 2001:db8:1::fffe
    • IPv4 DNS 服务器 - 198.51.100.200
    • IPv6 DNS 服务器 - 2001:db8:1::ffbb
    • DNS 搜索域 - example.com
    • ethtool coalesce 设置:

      • RX 帧:128
      • TX 帧:128
  2. 验证 playbook 语法:

    # ansible-playbook ~/configure-ethernet-device-with-ethtoolcoalesce-settings.yml --syntax-check

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

  3. 运行 playbook:

    # ansible-playbook ~/configure-ethernet-device-with-ethtoolcoalesce-settings.yml

其它资源

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