1.2. 支持的版本
4.7 | 4.8 | 4.9 | |
---|---|---|---|
RHOL 5.1 | X | X | |
RHOL 5.2 | X | X | X |
RHOL 5.3 | X | X |
1.2.1. OpenShift Logging 5.1.0
此发行版本包括 RHSA-2021:2112 OpenShift Logging 程序错误修复 5.1.0。
1.2.1.1. 新功能及功能增强
OpenShift Logging 5.1 现在支持 OpenShift Container Platform 4.7 及之后的版本运行:
- IBM Power 系统
- IBM Z 和 LinuxONE
此版本对以下方面进行了改进
-
作为集群管理员,您可以使用 Kubernetes pod 标签从应用程序收集日志数据并将其发送到特定的日志存储。您可以通过在
ClusterLogForwarder
自定义资源 (CR) YAML 文件中配置inputs[].application.selector.matchLabels
元素来收集日志数据。您还可以按命名空间过滤收集的日志数据。(LOG-883) 此发行版本将以下新的
ElasticsearchNodeDiskWatermarkReached
警告添加到 OpenShift Elasticsearch Operator (EO):- 已达到 Elasticsearch 节点磁盘低水位线
- 已达到 Elasticsearch 节点磁盘高水位线
- 已达到 Elasticsearch 节点磁盘的洪水水位线
当 Elasticsearch 节点预计在未来 6 小时内将到达
磁盘低水位线
、磁盘高水位线
或磁盘洪水 Stage 水位线
阈值时,警报会应用过去几个警告。这个警告周期为您提供了在节点达到磁盘水位线阈值前响应的时间。警告消息也提供故障排除步骤的链接,您可以按照这些链接来帮助缓解问题。EO 应用过去几小时的磁盘空间数据到线性模型来生成这些警告。(LOG-1100)- JSON 日志现在可以作为 JSON 对象(而不是带引号的字符串)转发到红帽受管 Elasticsearch 集群或其他支持的第三方系统。另外,您现在可以从 Kibana 中的 JSON 日志消息查询各个字段,从而增加特定日志的可发现性。(LOG-785, LOG-1148)
1.2.1.2. 弃用和删除的功能
之前版本中的一些功能已被弃用或删除。
弃用的功能仍然包含在 OpenShift Logging 中,并且仍然被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。
1.2.1.2.1. Elasticsearch Curator 已被删除
在这个版本中,Elasticsearch Curator 已被移除,不再被支持。Elasticsearch Curator 可帮助您在 OpenShift Container Platform 4.4 及更早版本中对索引进行策展或管理。配置日志保留时间,而不是使用 Elasticsearch Curator。
1.2.1.2.2. 使用旧的 Fluentd 和旧 syslog 方法转发日志已被弃用
从 OpenShift Container Platform 4.6 升级到现在,使用旧的 Fluentd 和旧 syslog 方法转发日志已被弃用,并将在以后的发行版本中删除。应使用标准的非传统方法。
1.2.1.3. 程序错误修复
-
在更新之前,
ClusterLogForwarder
CR 在创建后不会显示input[].selector
元素。在这个版本中,当您在ClusterLogForwarder
CR 中指定一个selector
时,它会保留。对于 LOG-883,需要修复此错误,这将启用使用 pod 标签选择器来转发应用日志数据。(LOG-1338) - 在以前的版本中,集群服务版本(CSV)中的更新会意外地为 OpenShift Elasticsearch Operator 容器引入资源和限制。特定情况下,这会导致终止 Elasticsearch Operator pod 的内存不足状况。在这个版本中,通过删除 Operator 容器的 CSV 资源和限制解决了这个问题。Operator 可以被调度且没有问题。(LOG-1254)
在更新前,使用串联的证书将日志转发到 Kafka 会失败并显示以下错误消息:
state=error: certificate verify failed (unable to get local issuer certificate)
无法将日志转发到带有中间 CA 签名的证书的 Kafka 代理。这是因为 Fluentd Kafka 插件只能处理对应 secret 的
ca-bundle.crt
条目中提供的单个 CA 证书。在这个版本中解决了这个问题,它启用了 Fluentd Kafka 插件来处理对应 secret 的ca-bundle.crt
条目中提供的多个 CA 证书。现在,日志可以被转发到带有中间 CA 签名的证书的 Kafka 代理。(LOG-1218, LOG-1216)- 在以前的版本中,当存在负载时,Elasticsearch 可能会对一些请求响应 HTTP 500 错误,即使集群没有错误。重试请求会成功。在这个版本中解决了这个问题,方法是更新索引管理 cron 作业使其在遇到临时 HTTP 500 错误时更具弹性。更新的索引管理 cron 作业将在失败前多次重试请求。(LOG-1215)
-
在以前的版本中,如果您没有在集群安装配置中设置
.proxy
值,然后在已安装的集群上配置了全局代理,则存在一个程序漏洞,它会阻止 Fluentd 将日志转发到 Elasticsearch。要临时解决这个问题,在代理或集群配置中,将no_proxy
值设置为.svc.cluster.local
,使其跳过内部流量。在这个版本中解决了代理配置问题。如果在安装 OpenShift Container Platform 集群后配置全局代理,Fluentd 将日志转发到 Elasticsearch。(LOG-1187, BZ#1915448) - 在更新之前,日志记录收集器创建了比必要更多的套接字连接。在这个版本中,日志记录收集器重复使用现有的套接字连接来发送日志。(LOG-1186)
在更新前,如果集群管理员尝试从 Elasticsearch 集群中添加或删除存储,OpenShift Elasticsearch Operator (EO) 会错误地尝试升级 Elasticsearch 集群,显示
scheduledUpgrade: "True"
,shardAllocationEnabled: 26ries
并更改卷。在这个版本中,EO 不会尝试升级 Elasticsearch 集群。EO 状态显示以下新状态信息,以指示您尝试对已忽略的 Elasticsearch 存储进行不受支持的更改:
-
当您尝试在临时存储结构和持久存储结构之间更改时,
StorageStructureChangeIgnored
。 -
当您尝试更改存储类名称时,
StorageClassNameChangeIgnored
。 -
当您尝试更改存储大小时,
StorageSizeChangeIgnored
。
注意如果您将
ClusterLogging
自定义资源 (CR )配置为从临时切换到持久性存储,EO 会创建一个持久性卷声明 (PVC),但不创建持久性卷 (PV)。要清除StorageStructureChangeIgnored
状态,您必须恢复对ClusterLogging
CR 的更改并删除持久性卷声明 (PVC)。(LOG-1351)
-
当您尝试在临时存储结构和持久存储结构之间更改时,
- 在更新前,如果您重新部署了一个完整的 Elasticsearch 集群,它会处于不健康状态,一个非数据节点正在运行,所有其他数据节点关闭。出现这个问题的原因是,新证书阻止 Elasticsearch Operator 缩减 Elasticsearch 集群的非数据节点。在这个版本中,Elasticsearch Operator 可以缩减所有数据和非数据节点,然后再次备份,以便它们加载新证书。Elasticsearch Operator 加载新证书后可以访问新节点。(LOG-1536)