4.18. Red Hat Enterprise Linux 系统角色
network
RHEL 系统角色支持使用 nmstate
API 的网络配置
有了此更新,network
RHEL 系统角色支持通过 nmstate
API 进行网络配置。用户现在可以将所需网络状态的配置直接应用到网络接口,而不是创建连接配置集。该功能还允许部分配置网络。因此,存在以下优点:
- 网络配置复杂性降低
- 应用网络状态更改的可靠方法
- 不需要跟踪整个网络配置
用户可以使用 network
RHEL 系统角色,创建具有 IPoIB 功能的连接
network
RHEL 系统角色的 infiniband
连接类型现在支持 Internet Protocol over Infiniband (IPoIB) 功能的互联网协议。要启用此功能,请为 infiniband
的 p_key
选项定义一个值。请注意,如果指定了 p_key
,则 network_connections
变量的 interface_name
选项必须保留为未设置。以前的 network
RHEL 系统角色的实现没有正确地验证 p_key
值和用于 infiniband
连接类型的 interface_name
选项。因此,IPoIB 功能在以前不能工作。如需更多信息,请参阅 /usr/share/doc/rhel-system-roles/network/
目录中的 README 文件。
HA 集群 RHEL 系统角色现在支持 SBD 隔离和 Corosync 设置的配置
HA Cluster 系统角色现在支持以下功能:
- SBD 隔离
- 隔离是 HA 集群配置的重要组成部分。SBD 为节点提供了一种在需要隔离时提供可靠的自终止的方法。在无法实现传统隔离机制的环境中,SBD 隔离特别有用。现在,可以使用 HA 集群系统角色配置 SBD 隔离。
- corosync 设置
- HA Cluster 系统角色现在支持 Corosync 设置的配置,如传输、压缩、加密、链接、图腾和仲裁。当默认设置不合适时,需要使用这些设置来将集群的配置与客户的需要和环境匹配。
(BZ#2065337, BZ#2070452, BZ#2079626, BZ#2098212, BZ#2120709, BZ#2120712)
network
RHEL 角色现在为路由规则配置网络设置
在以前的版本中,您可以根据数据包中的目标地址字段路由数据包,但您无法定义源路由和其他策略路由规则。在这个版本中,network
RHEL 角色支持路由规则,以便用户可以控制数据包传输或路由选择。
previous:replaced
配置可让 firewall
系统角色将防火墙设置重置为默认值
管理不同机器集合(其中每台机器都有不同的预先存在的防火墙设置)的系统管理员,现在可以使用 firewall
角色中的 previous: replaced
配置,来确保所有机器都有相同的防火墙配置设置。previous: replaced
的配置可能会清除所有现有的防火墙设置,并使用一致的设置替换它们。
postfix
RHEL 系统角色中用于覆盖以前配置的新选项
如果您管理一组具有 postfix
配置不一致的系统,则可能要在所有这些配置上保持一致。在这个版本中,您可以指定 postfix_conf
字典中的 previous: replaced
选项,以移除任何现有配置并在清 postfix
安装之上应用所需的配置。因此,您可以清除任何现有的 postfix
配置并确保所有被管理的系统上的一致性。
增强的 microsoft.sql.server
RHEL 系统角色
以下新变量现在对 microsoft.sql.server
RHEL 系统角色可用:
-
带有
mssql_ha_
前缀的变量用来控制配置高可用性集群。 -
mssql_tls_remote_src
变量,用来在受管节点上搜索mssql_tls_cert
和mssql_tls_private_key
值。如果保持默认的false
设置,则该角色会在控制节点上搜索这些文件。 -
mssql_manage_firewall
变量用来自动管理防火墙端口。如果此变量被设为false
,则您必须手动启用防火墙端口。 -
mssql_pre_input_sql_file
和mssql_post_input_sql_file
变量来控制您要在角色执行前或之后运行的 SQL 脚本。这些新变量替换以前的mssql_input_sql_file
变量,这不会影响 SQL 脚本执行的时间。
logging
RHEL 系统角色支持文件输入中的 startmsg.regex
和 endmsg.regex
有了这个更新,您现在可以使用正则表达式过滤来自文件的日志消息。startmsg_regex
和 endmsg_regex
选项现在包含在文件的输入中。startmsg_regex
代表与消息的开始部分匹配的正则表达式,而 endmsg_regex
代表与消息的最后部分匹配的正则表达式。现在,您可以根据日期、优先级和严重性等属性过滤消息。
sshd
RHEL 系统角色验证用于置入目录的 include 指令
RHEL 9 上的 sshd
RHEL 系统角色只管理置入目录中的文件,但之前不验证目录是否包含在主 sshd_config
文件中。有了这个更新,该角色会验证 sshd_config
是否包含置入目录的 include 指令。因此,该角色可以更可靠地应用提供的配置。
sshd
RHEL 系统角色可以通过 /etc/ssh/sshd_config
进行管理
应用到 RHEL 9 受管节点的 sshd
RHEL 系统角色将 SSHD 配置放在置入目录(默认为/etc/ssh/sshd_config.d/00-ansible_system_role.conf
)中。在以前的版本中,对 /etc/ssh/sshd_config
文件的任何更改都会覆盖 00-ansible_system_role.conf
中的默认值。在这个版本中,您可以使用 /etc/ssh/sshd_config
而不是 00-ansible_system_role.conf
管理 SSHD,同时保留 00-ansible_system_role.conf
中的系统默认值。
metrics
角色在其管理的配置文件中使用 "Ansible_managed" 注释
在这个版本中,metrics
角色使用 Ansible 标准 ansible_managed
变量将"Ansible managed"注释插入到配置文件。注释指示不应直接编辑配置文件,因为 metrics
角色将覆盖该文件。因此,配置文件包含一个声明,表示配置文件由 Ansible 管理。
storage
RHEL 系统角色现在支持管理池成员
storage
RHEL 系统角色现从现有 LVM 池中添加或删除磁盘,而无需先删除池。要增大池容量,storage
RHEL 系统角色可以在池中添加新磁盘,并目前在池中为另一个用途分配的磁盘。
storage
RHEL 系统角色现在支持精简置备的卷
storage
RHEL 系统角色现在可以创建和管理精简置备的 LVM 逻辑卷(LV)。精简配置的 LV 会在编写时分配,在为精简置备的 LV 提供的物理存储创建卷时具有更大的灵活性。LVM 精简配置还允许创建效率更高的快照,因为对于精简 LV 的通用数据块及其任何快照都是共享的。
storage
RHEL 系统角色对缓存的卷提供更好的支持
storage
RHEL 系统角色现在可以将缓存添加到现有 LVM 逻辑卷上。LVM 缓存可用于通过在较小的、更快速的设备上(如 SSD)临时存储 LV 数据的子集来提高较慢的逻辑卷的性能。这提高了创建缓存卷的支持,方法是允许将缓存(附加)缓存添加到现有的未缓存卷中。
logging
RHEL 系统角色现在支持 template
,severity
and facility
选项
logging
RHEL 系统角色现在对文件输入提供新的有用的 severity
和 facility
选项,以及对文件和转发输出提供新的 template
选项。使用 template
选项使用 traditional
参数指定传统时间格式,使用参数 syslog
指定 syslog 协议 23 格式,使用参数 modern
指定现代风格格式。现在,您可以使用 logging
角色根据严重性和工具过滤,并从模板创建输出格式。
RHEL 系统角色现在也在禁用了事实收集的 playbook 中提供
由于性能或其他原因,可能会在您的环境中禁用 Ansible 事实收集。在以前的版本中,无法在这样的配置中使用 RHEL 系统角色。有了这个更新,系统会在您的配置中检测 ANSIBLE_GATHERING=explicit
参数,在 playbook 中检测 gather_facts: false
参数,并使用 setup:
模块来仅收集给定角色所需要的事实(如果在事实缓存中没有)。
如果您因为性能而禁用了 Ansible 事实收集,您可以启用 Ansible 事实缓存,这会导致从来源检索它们的性能。
存储角色现在默认具有较少的详细程度
存储角色输出现在默认为详细。在这个版本中,用户可以提高存储角色输出的详细程度,仅在使用 Ansible 详细程度 1 或更高版本时生成调试输出。
在配置 masquerade
或 icmp_block_inversion
时,firewall
RHEL 系统角色不需要 state
参数
在配置自定义防火墙区时,变量 masquerade
和 icmp_block_inversion
是布尔值设置。true
值表示 state: present
和 false
值表示 state: absent
。因此,配置 masquerade
或 icmp_block_inversion
时不需要 state
参数。
现在,您可以在 firewall
RHEL 系统角色中使用 absent
和 present
状态添加、更新或删除服务
在这个版本中,您可以使用 present
状态来添加端口、模块、协议、服务和目标地址,或使用 absent
状态来删除它们。请注意,要在 firewall
RHEL 系统角色中使用 absent
和 present
状态,请将 permanent
选项设置为 true
。将 permanent
选项设置为 true
时,状态设置将应用至更改后,并且保持不受角色重新加载的影响。
firewall
系统角色可以使用 PCI 设备 ID 向区添加或删除接口
使用 PCI 设备 ID,firewall
系统角色现在可以为区分配或删除网络接口。在以前的版本中,如果只有 PCI 设备 ID 已知而不是接口名称,用户必须首先识别对应的接口名称才能使用 firewall
系统角色。在这个版本中,firewall
系统角色可以使用 PCI 设备 ID 来管理区中的网络接口。
firewall
RHEL 系统角色可以提供 Ansible 事实
有了此增强,您现在可以通过在 playbook 中包含不带参数的 firewall:
变量,来从所有系统中收集 firewall
RHEL 系统角色的 Ansible 事实。要收集更多 Ansible 事实的详细版本,请使用 detailed: true
参数,例如:
vars: firewall: detailed: true
将 seuser
和 selevel
的设置添加到 selinux
RHEL 系统角色中
有时,在设置 SELinux 上下文文件系统映射时,需要设置 seuser
和 selevel
参数。在这个版本中,您可以使用 selinux_fcontext
中的 seuser
和 selevel
可选参数来指定 SELinux 上下文文件系统映射中的 SELinux 用户和级别。
用于设置自定义监听端口的新的 cockpit
系统角色变量
cockpit
系统角色引入了 cockpit_port
变量,它允许您设置默认的 9090 端口以外的自定义监听端口。请注意,如果您决定设置自定义监听端口,您也需要调整 SELinux 策略以允许 Web 控制台侦听该端口。
metrics
角色可以导出 postfix
性能数据
现在,您可以使用 metrics
角色中的新 metrics_from_postfix
布尔值变量记录和详细性能分析。在这个版本中,设置变量会在系统中启用 pmdapostfix
指标代理,生成关于 postfix
可用的统计信息。
postfix
角色在其管理的配置文件中使用 "Ansible_managed" 注释
postfix
角色生成 /etc/postfix/main.cf
配置文件。在这个版本中,postfix
角色使用 Ansible 标准 ansible_managed
变量将"Ansible managed"注释插入到配置文件。注释表示不应直接编辑配置文件,因为 postfix
角色可以覆盖该文件。因此,配置文件包含一个声明,表示配置文件由 Ansible 管理。
nbde-client
RHEL 系统角色支持静态 IP 地址
在之前的 RHEL 版本中,重启具有静态 IP 地址并使用 nbde_client
RHEL 系统角色配置的系统更改了系统的 IP 地址。在这个版本中,nbde_client
角色支持使用静态 IP 地址的系统,重启后它们的 IP 地址不会改变。
请注意,默认情况下,nbde_client
角色在引导时使用 DHCP,并在系统引导后切换到配置的静态 IP。
(BZ#2070462)