MicroStrategy ONE

MicroStrategy Telemetry Server

MicroStrategy Telemetry Server on Windows

Telemetry Server is a component that is coupled with the Intelligence Server during installations and upgrades. Telemetry Server is configured out-of-the-box and runs automatically after the installation is completed.

After installation, you can see the following services are automatically started:

  • Apache Kafka (C:\Program Files (x86)\MicroStrategy\Telemetry Server\Kafka\kafka_2.13-2.6.1)
  • Apache ZooKeeper (C:\Program Files (x86)\MicroStrategy\Telemetry Server\Kafka\kafka_2.13-2.6.1)

By default MicroStrategy will still send Intelligence Server diagnostic logs to local disk. Diagnostic logs will be sent to the Telemetry Server Server after you perform the following:

Afterwards you will see Kafka log files created in the Kafka installation folder:

C:\Program Files (x86)\MicroStrategy\Telemetry Server\tmp\kafka-logs

Different Kafka topics will be created to store data for different MicroStrategy components.

Configuring Telemetry Server after upgrading

By default, MicroStrategy Telemetry Server are installed along with the Intelligence server upgrade.

Telemetry Server Workflow for Intelligence Server

  • Intelligence Server is the Kafka Producer and can be deployed as a single node or cluster.
  • Kafka Server can be deployed as a single node or cluster.

Enable MicroStrategy Telemetry Server

Telemetry Server configuration is saved in the MicroStrategy Intelligence Server configuration. It can be enabled or disabled on the fly, without restarting your Intelligence Server.

Command Manager Scripts for Telemetry Server

To check if Telemetry Server is enabled, execute:

LIST ALL PROPERTIES FOR SERVER CONFIGURATION;

To enable Telemetry Server through Command Manager, execute:

ALTER SERVER CONFIGURATION ENABLEMESSAGINGSERVICES TRUE CONFIGUREMESSAGINGSERVICES "bootstrap.servers:10.15.208.236:9092/batch.num.messages:5000/queue.buffering.max.ms:2000";

In the example above set:

  • bootstrap.servers: to your Kafka Server IP address and port number.
  • batch.num.messages: to the number of messages to send in one batch when using asynchronous mode.
  • queue.buffering.max.ms: to the maximum time to buffer data when using asynchronous mode.

You can specify more Kafka Producer configuration settings in this command following the same format.

Turn On the Sending Log to Telemetry Server Feature

You can turn on the Sending Log to Telemetry Server feature using either MicroStrategy Web or Command Manager.

From MicroStrategy Web

  1. Log in using and Administrator account.
  2. Open User Preferences > Project Defaults.
  3. Locate Sending Log to Telemetry Server in the Features for Customer Feedback section.
  4. Select On from the drop-down menu.
  5. Click Apply.

From Command Manager

  1. Connect to your project source.
  2. Execute the following:

    ALTER FEATURE FLAG "SENDING LOG TO TELEMETRY SERVER" ON;

Modifying Telemetry Server Configuration

Apache Kafka Server

The Kafka Server can be configured by modifying the server.properties file found in:

C:\Program Files (x86)\MicroStrategy\Telemetry Server\Kafka\kafka_2.13-2.6.1\config

Both Apache Kafka Server and ZooKeeper should be restarted after modifying the above configuration file.

MicroStrategy Telemetry Server Configuration for Clustered Environments

If you have clustered your Intelligence Servers and want to use a separate machine to run MicroStrategy Telemetry Server after upgrading, complete the following steps for each node in the cluster.

The minimum number of nodes for a cluster is 3.

Each node must have the following installed:

  • MicroStrategy Telemetry Server
  • Apache Kafka
  • Apache Zookeeper

Configure Zookeeper

  1. Browse to folder C:\Program Files (x86)\MicroStrategy\Telemetry Server\Kafka\kafka_2.13-2.6.1\config.
  2. Edit file zookeeper.properties by adding following lines:

    Copy
    clientPort=2181
    dataDir=C:\\Program Files (x86)\\MicroStrategy\\Telemetry Server\\tmp\\zookeeper
    maxClientCnxns=0
    initLimit=5
    syncLimit=2
    server.1=10.27.20.16:2888:3888
    server.2=10.27.20.60:2888:3888
    server.3=10.15.208.236:2888:3888

    Each server parameter must contain a unique integer identifier as shown above. You attribute the server id to each machine by creating a text file named myid, one for each server, which resides in that server's data directory, as specified by the configuration file parameter dataDir = C:\Program Files (x86)\MicroStrategy\Telemetry Server\tmp\zookeeper

  3. Go to folder C:\Program Files (x86)\MicroStrategy\TelemetryServer\Kafka\kafka_2.13-2.6.1\config.

  4. Create a text file named myid containing the identifying value from the server parameter name in the zookeeper.properties file.

Configure Kafka

  1. Browse to folder C:\Program Files (x86)\MicroStrategy\Telemetry Server\Kafka\kafka_2.13-2.6.1\config.
  2. Edit file server.properties, add a row zookeeper.connect=10.27.20.16:2181,10.27.20.60:2181,10.15.208.236:2181 to the Zookeeper section.

    Copy
    ############################# Zookeeper #############################
    # Zookeeper connection string (see zookeeper docs for details).
    # This is a comma separated host:port pairs, each corresponding to a zk# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
    # You can also append an optional chroot string to the urls to specify the# root directory for all kafka znodes.
    # zookeeper.connect=localhost:2181
    zookeeper.connect=10.27.20.16:2181,10.27.20.60:2181,10.15.208.236:2181
  3. Modify the broker.id value to a unique integer from other Kafka servers (the default value is 0), such as for node 10.27.20.60 we use number 2.

    Copy
    ############################# Server Basics #############################
    # The id of the broker. This must be set to a unique integer for each broker.
    broker.id=2

Start, Stop, Restart, and Check Status of Telemetry Server

On Windows installations, open Task Manager > Services to start, stop, restart, and check the status of Telemetry Server components.

MicroStrategy Telemetry Server on Linux

Telemetry Server is a component that is coupled with the Intelligence Server during installations and upgrades. Telemetry Server is configured out-of-the-box and runs automatically after the installation is completed.

After installation, you can see the following services are automatically started:

  • Apache Kafka (/opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0)
  • Apache ZooKeeper(/opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0)

By default MicroStrategy will still send Intelligence Server diagnostic logs to local disk. Diagnostic logs will be sent to the Telemetry Server after you perform the following:

Afterwards you will see Kafka log files created in the Kafka installation folder:

/opt/MicroStrategy/TelemetryServer/Kafka/tmp/kafka-logs

Different Kafka topics will be created to store data for different MicroStrategy components.

Configuring Telemetry Server after upgrading

By default, MicroStrategy Telemetry Server are installed along with the Intelligence server upgrade.

Telemetry Server Workflow for Intelligence Server

  • Intelligence Server is the Kafka Producer and can be deployed as a single node or cluster.
  • Kafka Server can be deployed as a single node or cluster.

Enable MicroStrategy Telemetry Server

Telemetry Server configuration is saved in the MicroStrategy Intelligence Server configuration. It can be enabled or disabled on the fly, without restarting your Intelligence Server.

Command Manager Scripts for Telemetry Server

To check if Telemetry Server is enabled, execute:

LIST ALL PROPERTIES FOR SERVER CONFIGURATION;

To enable Telemetry Server through Command Manager, execute:

ALTER SERVER CONFIGURATION ENABLEMESSAGINGSERVICES TRUE CONFIGUREMESSAGINGSERVICES "bootstrap.servers:10.15.208.236:9092/batch.num.messages:5000/queue.buffering.max.ms:2000";

In the example above set:

  • bootstrap.servers: to your Kafka Server IP address and port number.
  • batch.num.messages: to the number of messages to send in one batch when using asynchronous mode.
  • queue.buffering.max.ms: to the maximum time to buffer data when using asynchronous mode.

You can specify more Kafka Producer configuration settings in this command following the same format.

Turn On the Sending Log to Telemetry Server Feature

You can turn on the Sending Log to Telemetry Server feature using either MicroStrategy Web or Command Manager.

From MicroStrategy Web

  1. Log in using and Administrator account.
  2. Open User Preferences > Project Defaults.
  3. Locate Sending Log to Telemetry Server in the Features for Customer Feedback section.
  4. Select On from the drop-down menu.
  5. Click Apply.

From Command Manager

  1. Connect to your project source.
  2. Execute the following:

    ALTER FEATURE FLAG "SENDING LOG TO TELEMETRY SERVER" ON;

Modifying Telemetry Server Configuration

Apache Kafka Server

The Kafka Server can be configured by modifying the server.properties file found in:

/opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0

Both Apache Kafka Server and ZooKeeper should be restarted after modifying the above configuration file.

MicroStrategy Telemetry Server Configuration for Clustered Environments

If you have clustered your Intelligence Servers and want to use a separate machine to run MicroStrategy Telemetry Server after upgrading, complete the following steps for each node in the cluster.

The minimum number of nodes for a cluster is 3.

Each node must have the following installed:

  • MicroStrategy Telemetry Server
  • Apache Kafka
  • Apache Zookeeper

Configure Zookeeper

  1. Browse to folder /opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0/config.
  2. Edit file zookeeper.properties by adding following lines:

    Copy
    maxClientCnxns=0
    initLimit=5
    syncLimit=2
    server.1=10.27.20.16:2888:3888
    server.2=10.27.20.60:2888:3888
    server.3=10.15.208.236:2888:3888

    Each server parameter must contain a unique integer identifier as shown above.

  3. Go to folder /opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0/config.

  4. Create a file named myid containing the identifying value from the server parameter name in the zookeeper.properties file.

Configure Kafka

  1. Browse to folder /opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0/config.
  2. Edit file server.properties, add a row zookeeper.connect=10.27.20.16:2181,10.27.20.60:2181,10.15.208.236:2181 to the Zookeeper section.

    Copy
    ############################# Zookeeper #############################
    # Zookeeper connection string (see zookeeper docs for details).
    # This is a comma separated host:port pairs, each corresponding to a zk
    # server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
    # You can also append an optional chroot string to the urls to specify the
    # root directory for all kafka znodes.
    # zookeeper.connect=localhost:2181zookeeper.connect=10.27.20.16:2181,10.27.20.60:2181,10.15.208.236:2181
  3. Modify the broker.id value to a unique integer from other Kafka servers (the default value is 0), such as for node 10.27.20.60 we use number 2.

    Copy
    ############################# Server Basics #############################
    # The id of the broker. This must be set to a unique integer for each broker.
    broker.id=2

Start, Stop, Restart, and Check Status of Telemetry Server

To start or stop Kafka Server and Zookeeper, go to /opt/MicroStrategy/TelemetryServer/Kafka/kafka_2.13-2.6.0/bin and execute one of the following:

  • ./kafka-server-start.sh ../config/server.properties
  • ./kafka-server-stop.sh
  • ./zookeeper-server-start.sh ../config/zookeeper.properties
  • ./zookeeper-server-stop.sh