Acceldata
Pulse

Manage Pulse Cluster using APIs

This page describes API details for managing and scaling Pulse services and components. It includes operations such as restarting services, managing shards, indexing databases, and processing FSImage data.


Restart Pulse Services

This API endpoint restarts the specified Pulse services without applying any configuration changes. It restarts only the services that are already deployed and uses the configuration defined in the annotations of the Custom Resource (CR).

Accepted Inputs: A list of services that can be restarted.

  • Core Connectors
  • SparkStats
  • Kafka Connector
  • FS Analytics v2
  • Ozone Connector
  • Oozie Connector
  • Impala Connector
  • Druid Analyzer
  • LDAP
  • SQL Analyser
  • Trino Connector
  • GraphQL
  • Streaming
  • Hydra
  • Dashplot
  • Dashplot-UI
  • Notifications
  • Alerts
  • Pulse-UI
  • Actions
{
"services": [
"GRAPHQL"
]
curl --request PUT \
--url <Ingress API for the manager Server>/api/v1/mserver/restart/<clustername>
--header '<basic credentials>'
--header 'Content-Type: application/json' \
--data '{
"services": [
"GRAPHQL"
]
}'

Remove Pulse Add-On Services

This API endpoint removes specified add-ons from the Pulse cluster. It deletes the corresponding pods, deployments, or stateful sets, and clears the related annotations for the selected service.

Accepted Inputs: A list of add-on services can be removed.

  • SparkStats
  • Kafka Connector
  • FS Analytics v2
  • Ozone Connector
  • Oozie Connector
  • Impala Connector
  • Druid Analyzer
  • LDAP
  • SQL Analyser
  • Trino Connector
{
"addons": [
"OZONE CONNECTOR",
"SQL ANALYSER",
"CORE CONNECTORS",
"SPARKSTATS",
"FS ANALYTICS V2",
"DRUID ANALYZER"
]
}
curl --request PUT \
--url <Ingress API for the manager Server>/api/v1/mserver/remove/addons/<clustername> \
--header '<basic credentials>'
--header 'Content-Type: application/json' \
--data '{
"addons": [
"OZONE CONNECTOR",
"SQL ANALYSER",
"CORE CONNECTORS",
"SPARKSTATS",
"FS ANALYTICS V2",
"DRUID ANALYZER"
]
}'

Refresh Core

This API endpoint refreshes the configuration of core services and restarts all of them.

Affected Services:

  • GraphQL
  • Streaming
  • Hydra
  • Dashplot
  • Dashplot-UI
  • Notifications
  • Alerts
  • Pulse-UI
  • Actions
{
"extra_hosts": {
"<IP Address 1>": "<host name 1>",
"<IP Address 2>": "<host name 2>",
"<IP Address 2>": "<host name 3>",
"<IP Address 3>": "<host name 4>",
}
}
curl --request PUT \
--url <Ingress API for the manager Server>/api/v1/mserver/refresh/core/<clustername> \
--header '<basic credentials>'
--header 'Content-Type: application/json' \
--data '{
"extra_hosts": {
"<IP Address 1>": "<host name 1>",
"<IP Address 2>": "<host name 2>",
"<IP Address 2>": "<host name 3>",
"<IP Address 3>": "<host name 4>",
}
}'

Scale Factor

This API endpoint updates the scale factor for scalability-related services.

Affected services:

  • Core Connectors
  • Alerts
  • Streaming
  • SparkStats
  • Impala Connector

Input:

{
"scale_factor": 2
}
curl --request PUT \
--url <Ingress API for the manager Server>/api/v1/mserver/configsf/cluster/<clustername> \
--header '<basic credentials>'
--header 'Content-Type: application/json' \
--data '{
"scale_factor": 2
}'

Shard Count

This API endpoint updates the shard count for scalability-related services.

Affected services:

  • Core Connectors
  • Alerts
  • Streaming
  • SparkStats
  • Impala Connector

Input:

{
"shard_count": 12
}
curl --request PUT \
--url <Ingress API for the manager Server>/api/v1/mserver/configsc/cluster/odp_smokey \
--header '<basic credentials>'
--header 'Content-Type: application/json' \
--data '{
"shard_count": 12
}'

Index Databases

Use the following command to index the databases.

curl --request PUT \
--url http://<Ingress API for the Manager Server>/api/v1/mserver/init/indexdb \
--header '<basic credentials>'
--header 'Content-Type: application/json'

Reload Events

This operation reloads event configurations for Pulse services without requiring a full restart.

curl --request PUT \
--url http://<Ingress API for the Manager Server>/api/v1/mserver/init/reloadevents \
--header '<basic credentials>'
--header 'Content-Type: application/json'

Init Sharding

This command initializes sharding for the supported Pulse services. It should be used during the initial setup or when resetting shard configurations.

curl --request PUT \
--url http://<Ingress API for the Manager Server>/api/v1/mserver/init/sharding \
--header '<basic credentials>'
--header 'Content-Type: application/json'

FSImage Load Command

This command loads the FSImage data into the system.

curl --request PUT \
--url http://<Ingress API for the Manager Server>/api/v1/mserver/fsa/load/<clustername> \
--header 'Basic Credentials' \
--header 'Content-Type: application/json'

FSImage Process Command

This command processes the loaded FSImage data for analysis.

curl --request PUT \
--url http://<Ingress API for the Manager Server>/api/v1/mserver/fsa/process/<clustername> \
--header 'Basic Credentials' \
--header 'Content-Type: application/json'

FSImage Reports Command

This command generates reports based on the processed FSImage data.

curl --request PUT \
--url http://<Ingress API for the Manager Server>/api/v1/mserver/fsa/reports/<clustername> \
--header 'Basic Credentials' \
--header 'Content-Type: application/json'