Skip to main content

Workbench Deployment

...About 4 min

Workbench Deployment

The visualization console is one of the supporting tools for IoTDB. It is an official application tool system used in various stages of database deployment, operation and maintenance management, and application development, making the use, operation and management of databases simpler and more efficient, truly achieving low-cost management and operation of databases. This document will help you install Workbench.

Installation Preparation

Preparation ContentNameVersion RequirementsLink
Operating SystemWindows or Linux--
Installation EnvironmentJDKNeed>=V1.8.0_162 (recommended to use 11 or 17, please choose ARM or x64 installation package according to machine configuration when downloading)https://www.oracle.com/java/technologies/downloads/open in new window
Related SoftwarePrometheusRequires installation of V2.30.3 and above.https://prometheus.io/download/open in new window
DatabaseIoTDBRequires V1.2.0 Enterprise Edition and aboveYou can contact business or technical support to obtain
ConsoleIoTDB-Workbench-<version>-You can choose according to the appendix version comparison table and contact business or technical support to obtain it

Installation Steps

Step 1: IoTDB enables monitoring indicator collection

  1. Open the monitoring configuration item. The configuration items related to monitoring in IoTDB are disabled by default. Before deploying the monitoring panel, you need to open the relevant configuration items (note that the service needs to be restarted after enabling monitoring configuration).

    ConfigurationLocated in the configuration fileDescription
    cn_metric_reporter_listconf/iotdb-confignode.propertiesUncomment the configuration item and set the value to PROMETHEUS
    cn_metric_levelUncomment the configuration item and set the value to IMPORTANT
    cn_metric_prometheus_reporter_portUncomment the configuration item to maintain the default setting of 9091. If other ports are set, they will not conflict with each other
    dn_metric_reporter_listconf/iotdb-datanode.propertiesUncomment the configuration item and set the value to PROMETHEUS
    dn_metric_levelUncomment the configuration item and set the value to IMPORTANT
    dn_metric_prometheus_reporter_portUncomment the configuration item and set it to 9092 by default. If other ports are set, they will not conflict with each other
    dn_metric_internal_reporter_typeUncomment the configuration item and set the value to IOTDB
    enable_audit_logconf/iotdb-common.propertiesUncomment the configuration item and set the value to true
    audit_log_storageUncomment configuration items
    audit_log_operationUncomment configuration items
  2. Restart all nodes. After modifying the monitoring indicator configuration of three nodes, the confignode and datanode services of all nodes can be restarted:

    ./sbin/stop-standalone.sh      #Stop confignode and datanode first
    ./sbin/start-confignode.sh  -d #Start confignode
    ./sbin/start-datanode.sh  -d   #Start datanode 
    
  3. After restarting, confirm the running status of each node through the client. If the status is Running, it indicates successful configuration:

Step 2: Install and configure Prometheus

  1. Download the Prometheus installation package, which requires installation of V2.30.3 and above. You can go to the Prometheus official website to download it(https://prometheus.io/download)open in new window

  2. Unzip the installation package and enter the unzipped folder:

    tar xvfz prometheus-*.tar.gz
    cd prometheus-*
    
  3. Modify the configuration. Modify the configuration file prometheus.yml as follows

    1. Add configNode task to collect monitoring data for ConfigNode
    2. Add a datanode task to collect monitoring data for DataNodes
    global:
    scrape_interval: 15s 
    evaluation_interval: 15s 
    scrape_configs:
    - job_name: "prometheus"
        static_configs:
        - targets: ["localhost:9090"]
    - job_name: "confignode"
        static_configs:
        - targets: ["iotdb-1:9091","iotdb-2:9091","iotdb-3:9091"]
        honor_labels: true
    - job_name: "datanode"
        static_configs:
        - targets: ["iotdb-1:9092","iotdb-2:9092","iotdb-3:9092"]
        honor_labels: true
    
  4. Start Prometheus. The default expiration time for Prometheus monitoring data is 15 days. In production environments, it is recommended to adjust it to 180 days or more to track historical monitoring data for a longer period of time. The startup command is as follows:

    ./prometheus --config.file=prometheus.yml --storage.tsdb.retention.time=180d
    
  5. Confirm successful startup. Enter in browser http://IPopen in new window:port Go to Prometheus and click on the Target interface under Status. When you see that all States are Up, it indicates successful configuration and connectivity.

Step 3: Install Workbench

Windows:

  1. Enter the config directory of iotdb Workbench -<version>

  2. Modify Workbench configuration file: Go to the config folder and modify the configuration file application-prod.properties. If you are installing it locally, there is no need to modify it. If you are deploying it on a server, you need to modify the IP address

    ConfigurationBefore ModificationAfter modification
    pipe.callbackUrlpipe.callbackUrl=http://127.0.0.1pipe.callbackUrl=http://<Deployed IP address>
  3. Startup program: Please execute the startup command in the sbin folder of IoTDB Workbench -<version>

    # Start Workbench in the background
    start.bat -d
    
  4. You can use the jps command to check if the startup was successful, as shown in the figure:

  5. Verification successful: Open "http://Serveropen in new window IP: Port in configuration file" in the browser to access, for example:“ http://127.0.0.1:9190open in new window ”When the login interface appears, it is considered successful

Linux版:

  1. Enter the IoTDB Workbench -<version> directory

  2. Modify Workbench configuration: Go to the config folder and modify the configuration file application-prod.properties. If you are installing it locally, there is no need to modify it. If you are deploying it on a server, you need to modify the IP address

    ConfigurationBefore ModificationAfter modification
    pipe.callbackUrlpipe.callbackUrl=http://127.0.0.1pipe.callbackUrl=http://<Deployed IP address>
  3. Startup program: Please execute the startup command in the sbin folder of IoTDB Workbench -<version>

    # Start Workbench in the background
    ./start.sh -d
    
  4. You can use the jps command to check if the startup was successful, as shown in the figure:

  5. Verification successful: Open "http://Serveropen in new window IP: Port in configuration file" in the browser to access, for example:"http://127.0.0.1:9190open in new window" When the login interface appears, it is considered successful

Appendix: IoTDB and Workbench Version Comparison Table

Workbench Version NumberRelease NoteSupports IoTDB Versions
V1.2.6Optimize the permission control function of each moduleV1.3.1 and above versions
V1.2.5The visualization function has added the concept of "commonly used templates", and all interface optimization and page caching functions have been supplementedV1.3.0 and above versions
V1.2.4The calculation function has added the "import and export" function, and the measurement point list has added the "time alignment" fieldV1.2.2 and above versions
V1.2.3New "activation details" and analysis functions added to the homepageV1.2.2 and above versions
V1.2.2Optimize the display content and other functions of "measurement point description"V1.2.2 and above versions
V1.2.1New "Monitoring Panel" added to the data synchronization interface to optimize Prometheus prompt informationV1.2.2 and above versions
V1.2.0New Workbench version upgradeV1.2.0 and above versions

Copyright © 2024 The Apache Software Foundation.
Apache IoTDB, IoTDB, Apache, the Apache feather logo, and the Apache IoTDB project logo are either registered trademarks or trademarks of The Apache Software Foundation in all countries

Have a question? Connect with us on QQ, WeChat, or Slack. Join the community now.