Strategy ONE

安装后向现有 Kafka 集群添加其他 Kafka 节点

首次安装 Platform Analytics 完毕后,可以添加多个包含 Telemetry Server 的节点,以创建 Telemetry Server 集群。集群环境可确保如果遥测节点关闭,其他节点上会提供遥测日志的副本。

要手动将新的 Kafka 节点添加到 Windows 环境中的现有 Kafka 集群,请执行以下步骤:

  1. 禁用服务
  2. 安装 Telemetry Server
  3. 配置 Kafka
  4. 重启服务

MicroStrategy 2019版本中重命名了多项服务。由于此指南需要修改基础文件,因此它使用原始服务名称。

要添加其他 Kafka 节点,您需要:

  • 一个完全安装和配置 MicroStrategy 和 Platform Analytics 的环境。有关详细信息,请参阅For more information, see  安装 Platform Analytics
  • 将空闲环境添加为 Kafka 服务器节点,以创建 Kafka 集群。

禁用服务

在配置新的 Kafka 节点之前,请确保已禁用 Intelligence Server Producer、Apache ZooKepper、Apache Kafka 以及 Platform Analytics Consumer 和 Producer。如果集群中已经有多个节点,则禁用所有节点上的服务。

  1. 在 Command Manager 中,通过运行以下命令禁用 Intelligence Server Producer:
    复制
    ALTER SERVER CONFIGURATION ENABLEMESSAGINGSERVICES FALSE;
  2. 打开 Windows 服务,然后找到 Apache ZooKeeperApache Kafka 以及 MicroStrategy Platform Analytics Consumer 和 MicroStrategy Usher Metadata Producer。右键单击各服务并选择停止

安装 Telemetry Server

  1. 打开要添加其他 Kafka 服务器的节点上的 MicroStrategy Installation Wizard。
  2. 逐步完成 Wizard。
  3. 当系统提示您选择要安装的功能时,请选择 Telemetry Server

    系统默认安装 MicroStrategy Command Manager。

配置 Kafka

对所有节点执行以下步骤,包括集群中已有的节点。

  1. 打开 server.properties 文件位于 C:\Program Files (x86)\MicroStrategy\Messaging Services\Kafka\kafka_2.11-1.1.0\config 目录中。
  2. 对该文件进行如下修改:
    1. 设置 broker.id 每个节点都有一个唯一值。

      不要改变 broker.id 在您的主节点(单节点设置期间配置的机器)上。它应保持默认值并由其他节点引用。

    2. offsets.topic.replication.factor=transaction.state.log.replication.factor= 集群中的节点数。
    3. zookeeper.connect= 以逗号分隔的列表 <IP address:2181> 针对集群中的所有节点。
    4. 添加 advertised.listeners=<the IP address for this node> 在文件末尾。
  3. 保存该文件。
  4. 打开 zookeeper.properties 在同一目录中找到文件。
  5. 将以下属性添加到 zookeeper.properties 文件:
    • initLimit=5
    • syncLimit=2
    • server.X= <IP address of the node>:2888:3888

      将 X 替换为 broker.id 被引用的节点。必须为集群中的每个节点创建单独的条目。

      例如:

      复制
      initLimit=5
      syncLimit=2
      server.0=10.27.18.73:2888:3888
      server.1=10.27.18.224:2888:3888
  6. 创建名为 myid 仅包含 broker.id 节点的。

    如果你的 broker.id=1, 进入 1

  7. 将文件保存在“ZooKeeper”目录(位于 C:\Program Files (x86)\MicroStrategy\Messaging Services\tmp\zookeeper)中。

    确保该文件没有隐藏的扩展名。要检查该文件有无隐藏的扩展名,请在“文件资源管理器”中单击检查视图 > 显示/隐藏 > 文件扩展名。删除您的 myid 文件。

重启服务

在集群中所有 Kafka 节点上完成安装和配置后,重启 Intelligence Server Producer、Apache ZooKeeper、Apache Kafka 以及 Platform Analytics Consumer 和 Producer。

重启服务之前,必须先完成所有配置文件更改。例如,如果除了现有的一个节点外,您还要添加另外两个 Kafka 节点,那么在重启任何服务之前,应在所有三个节点上完成安装和配置。

此外,有些服务相互依赖,因此必须按照以下顺序启动服务:

Apache Zookeeper

  1. 在 Windows 服务中,启动 Apache ZooKeeper。先启动主节点,然后再启动其他节点。

Apache Kafka

  1. 在 Windows 服务中,启动 Apache Kafka。

Intelligence Server Producer

  1. 打开 Command Manager,然后运行以下脚本:

    复制
    ALTER SERVER CONFIGURATION 
    ENABLEMESSAGINGSERVICES TRUE 
    CONFIGUREMESSAGINGSERVICES"bootstrap.servers:<hostname1:9092>,<hostname2:9092>,<hostname3:9092>/batch.num.messages:5000/queue.buffering.max.ms:2000";

    更换 hostnameport 使用适用于 Platform Analytics 环境的新 Telemetry Server 集群配置。

  2. 重启 Intelligence Server。

    如果存在 Intelligence Server 集群,则必须重启所有节点。

Platform Analytics Consumer

在主节点上只能执行以下步骤。主节点是指运行 Platform Analytics Consumer 的节点。

  1. 打开 PAConsumerConfig.yaml 文件位于 C:\Program Files (x86)\MicroStrategy\Platform Analytics\conf。
  2. 对该文件进行如下修改:
    1. kafkaTopicNumberOfReplicas: 集群中的节点数。
    2. zookeeperConnection: <ipAddress:2181> 针对集群中的所有节点。
    3. bootstrap.servers: <ipAddress:9092> 针对集群中的所有节点。
  3. 保存该文件。
  4. 在 Windows 服务中,启动 MicroStrategy Platform Analytics Consumer 和 MicroStrategy Usher Metadata Producer。

疑难解答

如果无法重启 Apache ZooKeeper,请确认是否已完全配置 Kafka。

  1. 打开“kafka-logs”文件夹(位于 C:\Program Files (x86)\MicroStrategy\Messaging Services\tmp)。
  2. 打开 meta.properties 归档并确保 broker.id 与出现在 server.properties。如果不同,这可能就是 Apache ZooKeeper 无法启动的原因。
  3. 如果 Kafka 主题中没有遥测,请在 Command Manager 中运行以下命令,检查 Platform Analytics 是否启用了统计:
    复制
    LIST ALL PROPERTIES FOR PASTATISTICS IN PROJECT "Platform Analytics";
  4. 如果该命令返回的是 False,请运行:

    复制
    ALTER PASTATISTICS BASICSTATS ENABLED DETAILEDREPJOBS TRUE DETAILEDDOCJOBS TRUE JOBSQL TRUE COLUMNSTABLES TRUE IN PROJECT "Platform Analytics";

    BASICSTATS 必须始终处于启用状态。选择需要哪种高级统计数据,方法是将其后的参数更改为 true/false。看列表平台分析统计属性声明有关基本统计数据和高级统计数据的更多信息。

首次安装 Platform Analytics 完毕后,可以添加多个包含 Telemetry Server 的节点,以创建 Telemetry Server 集群。集群环境可确保如果遥测节点关闭,其他节点上会提供遥测日志的副本。

要手动将新的 Kafka 节点添加到 Linux 环境中的现有 Kafka 集群,请执行以下步骤:

  1. 禁用服务
  2. 安装 Telemetry Server
  3. 配置 Kafka
  4. 重启服务

MicroStrategy 2019版本中重命名了多项服务。由于此指南需要修改基础文件,因此它使用原始服务名称。

要添加其他 Kafka 节点,您需要:

  • 一个完全安装和配置 MicroStrategy 和 Platform Analytics 的环境。有关详细信息,请参阅For more information, see  安装 Platform Analytics
  • 将空闲环境添加为 Kafka 服务器节点,以创建 Kafka 集群。

禁用服务

在配置新的 Kafka 节点之前,请确保已禁用 Intelligence Server Producer、Apache ZooKepper、Apache Kafka 以及 Platform Analytics Consumer 和 Producer。如果集群中已经有多个节点,则禁用所有节点上的服务。

  1. 在 Command Manager 中,通过运行以下命令禁用 Intelligence Server Producer:

    复制
    ALTER SERVER CONFIGURATION ENABLEMESSAGINGSERVICES FALSE;

    此操作不会影响 MicroStrategy Intelligence Server 标准功能。

  2. 在“Platform Analytics”目录(位于 /opt/MicroStrategy/PlatformAnalytics)中,打开 bin 文件夹。
  3. 运行下列命令:
    复制
    ./platform-analytics-consumer.sh stop
    ./platform-analytics-usher-lookup-producer.sh stop
  4. 在“Kafka”目录(位于 /opt/MicroStrategy/MessagingServices/Kafka/kafka_2.11-1.1.0/)中,打开 bin 文件夹。
  5. 运行下列命令:
    复制
    ./kafka-server-stop.sh
    ./zookeeper-server-stop.sh

安装 Telemetry Server

  1. 打开要添加其他 Kafka 服务器的节点上的 MicroStrategy Installation Wizard。
  2. 逐步完成 Wizard。
  3. 当系统提示您选择要安装的功能时,请选择 Telemetry Server

    系统默认安装 MicroStrategy Command Manager。

配置 Kafka

对所有节点执行以下步骤,包括集群中已有的节点。

  1. 打开 server.properties 文件位于 /opt/MicroStrategy/MessagingServices/Kafka/kafka_2.11-1.1.0/config。
  2. 对该文件进行如下修改:
    1. 设置 broker.id 每个节点都有一个唯一值。

      不要改变 broker.id 在您的主节点(单节点设置期间配置的机器)上。它应保持默认值并由其他节点引用。

    2. offsets.topic.replication.factor=transaction.state.log.replication.factor= 集群中的节点数。
    3. zookeeper.connect= 以逗号分隔的列表 <IP address:2181> 针对集群中的所有节点。
    4. 添加 advertised.host.name=<the IP address for this node> 在文件末尾。
  3. 保存该文件。
  4. 打开 zookeeper.properties 在同一目录中找到文件。
  5. 将以下属性添加到 zookeeper.properties 文件:
    • initLimit=5
    • syncLimit=2
    • server.X= <IP address of the node>:2888:3888

      将 X 替换为所引用节点的 broker.id。必须为集群中的每个节点创建单独的条目。

      例如:

      复制
      initLimit=5
      syncLimit=2
      server.0=10.27.18.73:2888:3888
      server.1=10.27.18.224:2888:3888
  6. 创建名为 myid 仅包含 broker.id 节点的。

    如果你的 broker.id=1, 进入 1

  7. 将文件保存在“ZooKeeper”目录(位于 /opt/MicroStrategy/MessagingServices/Kafka/tmp/zookeeper)中。

重启服务

集群中所有 Kafka 节点上的安装和配置完成之后,重启 Intelligence Server Producer、Apache ZooKepper、Apache Kafka 以及 Platform Analytics Consumer 和 Producer。

重启服务时,务必注意必须先完成所有配置文件更改。例如,如果除了现有的一个节点外,您还要添加另外两个 Kafka 节点,那么在重启任何服务之前,应在所有三个节点上完成安装和配置。

此外,有些服务相互依赖,因此应按照以下顺序启动服务:

Apache Zookeeper

  1. 在位于 /opt/MicroStrategy/MessagingServices/Kafka/kafka_2.11-1.1.0/ 上的“Kafka”目录中,打开 bin 文件夹。
  2. 要在所有节点上启动 ZooKeeper,请运行以下命令:
    复制
    ./zookeeper-server-start.sh -daemon ../config/zookeeper.properties

Apache Kafka

  1. 在同一文件夹中,通过运行以下命令在所有节点上启动 Kafka:
    复制
    ./kafka-server-start.sh -daemon ../config/server.properties

Intelligence Server Producer

  1. 打开 Command Manager,然后运行以下脚本:
    复制
    ALTER SERVER CONFIGURATION ENABLEMESSAGINGSERVICES TRUE CONFIGUREMESSAGINGSERVICES "bootstrap.servers:10.27.16.225:9092,10.27.19.34:9092/batch.num.messages:5000/queue.buffering.max.ms:2000";

    更换 hostnameport 使用适用于 Platform Analytics 环境的新 Telemetry Server 集群配置。

  2. 重启 Intelligence Server。

    如果存在 Intelligence Server 集群,则必须重启所有节点。

Platform Analytics Consumer

在主节点上只能执行以下步骤。主节点是指运行 Platform Analytics Consumer 的节点。

  1. 打开 PAConsumerConfig.yaml 文件位于 /opt/MicroStrategy/PlatformAnalytics/conf 目录中。
  2. 对该文件进行如下修改:
    1. kafkaTopicNumberOfReplicas: 集群中的节点数。
    2. zookeeperConnection: <ipAddress:2181> 针对集群中的所有节点。
    3. bootstrap.servers: <ipAddress:9092> 针对集群中的所有节点。
  3. 保存该文件。
  4. 在“Platform Analytics”目录(位于 /opt/MicroStrategy/PlatformAnalytics)中,打开 bin 文件夹。
  5. 运行以下命令:
    复制
    ./platform-analytics-consumer.sh start
    ./platform-analytics-usher-lookup-producer.sh start

疑难解答

如果无法启动 Apache ZooKeeper,请确认是否已完全配置 Kafka。

  1. 打开“kafka-logs”文件夹(位于 /opt/MicroStrategy/MessagingServices/Kafka/tmp)。
  2. 打开 meta.properties 归档并确保 broker.id 与出现在 server.properties。如果不同,这可能就是 Apache ZooKeeper 无法启动的原因。
  3. 如果 Kafka 主题中没有遥测,请在 Command Manager 中运行以下命令,检查 Platform Analytics 是否启用了统计:
    复制
    LIST ALL PROPERTIES FOR PASTATISTICS IN PROJECT "Platform Analytics";
  4. 如果该命令返回的是 False,请运行:

    复制
    ALTER PASTATISTICS BASICSTATS ENABLED DETAILEDREPJOBS TRUE DETAILEDDOCJOBS TRUE JOBSQL TRUE COLUMNSTABLES TRUE IN PROJECT "Platform Analytics";

    BASICSTATS 必须始终处于启用状态。选择需要哪种高级统计数据,方法是将其后的参数更改为 true/false。看列表平台分析统计属性声明有关基本统计数据和高级统计数据的更多信息。