14.4. 配置和启动清理控制


配置 Cruise Control 使用的属性,然后使用 cruise-control-start.sh 脚本启动 Cruise Control 服务器。该服务器托管于整个 Kafka 集群的单一机器上。

在 Cruise Control 启动时会自动创建三个主题。如需更多信息,请参阅 自动创建的主题

先决条件

流程

  1. 编辑 Cruise Control 属性文件(/opt/cruise-control/config/cruisecontrol.properties)。
  2. 配置以下示例配置中显示的属性:

    # The Kafka cluster to control.
    bootstrap.servers=localhost:9092 1
    
    # The replication factor of Kafka metric sample store topic
    sample.store.topic.replication.factor=2 2
    
    # The configuration for the BrokerCapacityConfigFileResolver (supports JBOD, non-JBOD, and heterogeneous CPU core capacities)
    #capacity.config.file=config/capacity.json
    #capacity.config.file=config/capacityCores.json
    capacity.config.file=config/capacityJBOD.json 3
    
    # The list of goals to optimize the Kafka cluster for with pre-computed proposals
    default.goals={List of default optimization goals} 4
    
    # The list of supported goals
    goals={list of master optimization goals} 5
    
    # The list of supported hard goals
    hard.goals={List of hard goals} 6
    
    # How often should the cached proposal be expired and recalculated if necessary
    proposal.expiration.ms=60000 7
    
    # The zookeeper connect of the Kafka cluster
    zookeeper.connect=localhost:2181 8
    1
    Kafka 代理的主机和端口号(始终端口 9092)。
    2
    Kafka 指标示例存储主题的复制因素。如果您要在单节点 Kafka 和 ZooKeeper 集群中评估 Cruise Control,请将此属性设置为 1。对于生产环境,将此属性设置为 2 或更多。
    3
    为代理资源设置最大容量限制的配置文件。使用应用于您的 Kafka 部署配置的 文件。如需更多信息,请参阅 容量配置
    4
    使用完全限定域名(FQDN)的逗号分隔默认优化目标列表。许多主优化目标(参见 5)已设置为默认优化目标;如果需要,您可以添加或删除目标。如需更多信息,请参阅 第 14.5 节 “优化目标概述”
    5
    使用 FQDN 以逗号分隔的主优化目标列表。为了完全排除用于生成优化判断的目标,请将其从列表中删除。如需更多信息,请参阅 第 14.5 节 “优化目标概述”
    6
    使用 FQDN 以逗号分隔的硬目标列表。七个主优化目标已被设置为硬目标;如果需要,您可以添加或删除目标。如需更多信息,请参阅 第 14.5 节 “优化目标概述”
    7
    从默认优化目标生成的缓存优化建议的间隔,以毫秒为单位。如需更多信息,请参阅 第 14.6 节 “优化调整概述”
    8
    ZooKeeper 连接的主机和端口号(始终端口 2181)。
  3. 启动清理控制服务器。默认情况下,服务器在端口 9092 上启动;可选,指定不同的端口。

    cd /opt/cruise-control/
    ./bin/cruise-control-start.sh config/cruisecontrol.properties PORT
  4. 要验证 Cruise Control 是否正在运行,请向 Cruise Control 服务器的 /state 端点发送 GET 请求:

    curl 'http://HOST:PORT/kafkacruisecontrol/state'

自动创建的主题

下表显示了 Cruise Control 启动时自动创建的三个主题。这些主题是必需的,清理控制才能正常工作,且不得删除或更改。

表 14.1. 自动创建的主题
自动创建的主题创建者功能

__CruiseControlMetrics

Sything Control Metrics Reporter

将 Metrics Reporter 中的原始指标存储在每个 Kafka 代理中。

__KafkaCruiseControlPartitionMetricSamples

Sything Control

存储每个分区派生的指标。它们由 Metric Sample Aggregator 创建。

__KafkaCruiseControlModelTrainingSamples

Sything Control

存储用于创建集群 工作负载模型 的指标示例。

要确保在自动创建的主题中 禁用 了日志紧凑,请确保配置 Cruise Control Metrics Reporter,如 第 14.3 节 “部署 Cruise 控制指标报告器” 所述。日志紧凑可以删除 Cruise Control 所需的记录,并阻止其正常工作。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.