第 6 章 为 Elasticsearch 配置操作日志存储
默认情况下,过去三个月的使用日志存储在 Red Hat Quay 数据库中,并通过 Web UI 在组织和存储库级别公开。查看日志条目需要适当的管理特权。对于具有大量日志记录操作的部署,您现在可以将用量日志存储在 Elasticsearch 中,而不是 Red Hat Quay 数据库后端。为此,您需要提供自己的 Elasticsearch 堆栈,因为它没有包含在 Red Hat Quay 中,作为可自定义组件。
启用 Elasticsearch 日志记录可以在 Red Hat Quay 部署过程中或使用 Red Hat Quay Config Tool 部署后完成。生成的配置存储在 config.yaml
文件中。配置后,使用日志访问仍通过 Web UI 为存储库和机构提供。
以下是如何配置操作日志存储,将其从默认的 Red Hat Quay 数据库更改为使用 Elasticsearch:
- 获取 Elasticsearch 帐户。
- 打开 Red Hat Quay Config Tool (在 Red Hat Quay 部署期间或之后)。
滚动到 Action Log Storage Configuration 设置,然后选择 Elasticsearch 而不是 Database。下图显示了出现的 Elasticsearch 设置:
为 Elasticsearch 实例填写以下信息:
- Elasticsearch 主机名 :提供 Elasticsearch 服务的系统的主机名或 IP 地址。
- Elasticsearch 端口 :在您刚刚输入的主机上提供 Elasticsearch 服务的端口号。请注意,该端口必须可以从所有运行 Red Hat Quay registry 的系统访问。默认为 TCP 端口 9200。
- Elasticsearch 访问密钥 :如果需要,访问 Elastic 搜索服务所需的访问密钥。
- Elasticsearch secret key :如果需要,访问 Elastic 搜索服务所需的 secret 键。
- AWS 区域 :如果您在 AWS 上运行,请设置 AWS 区域(否则,请将其留空)。
- 索引前缀 :选择要附加到日志条目的前缀。
logs Producer :选择 Elasticsearch (默认)或 Kinesis 将日志定向到 AWS 上的中间 Kinesis 流。您需要设置自己的管道,将日志从 Kinesis 发送到 Elasticsearch (如 Logstash)。下图显示了 Kinesis 中需要填写的其他字段:
如果您选择了 Elasticsearch 作为 Logs Producer,则不需要进一步配置。如果您选择了 Kinesis,请填写以下内容:
- 流名称 :Kinesis 流的名称。
- AWS 访问密钥 :如果需要,访问 Kinesis 流的 AWS 访问密钥名称。
- AWS secret key :如果需要,访问 Kinesis 流的 AWS secret 密钥的名称。
- AWS 区域 :AWS 区域。
- 完成后,保存配置。Config Tool 会检查您的设置。如果连接到 Elasticsearch 或 Kinesis 服务的问题,您会看到一个错误,并有机会继续编辑。否则,在集群使用新配置重启时,日志记录将开始定向到 Elasticsearch 配置。