Manually installing IBM Storage Scale bridge for Grafana with the RPM

You can install the IBM Storage Scale bridge for Grafana feature by using a uniquely named set of RPM packages.

Note: It’s recommended to use the installation toolkit for production deployments because it automates installation and configuration tasks.

On a GPFS cluster, the Grafana bridge should be installed on a pmcollector node whenever possible. Installing it on a non-gpfs pmcollector node outside the cluster is possible, but it requires additional configuration and might lead to performance issues, such as slower system response times. For security, the Grafana bridge uses HTTPS connections by default.

Manual installation should be used only in specific scenarios, such as:
  • Deploying an additional Grafana bridge instance on the same node
  • Installing the Grafana bridge on non-scale nodes. This requires additional configuration that can impact performance.
  • Environments not managed by the installation toolkit
Before you begin, ensure the following:
  • Grafana bridge must run on a pmcollector-node
  • If installing on non-scale nodes, ensure that the minimum required Python version is installed.
  1. Download the Grafana bridge package with the format: gpfs.grafana-bridge-version_release.arch.file_format
    For example:
    • gpfs.grafana-bridge-9.0.1-1.noarch.rpm
    • gpfs.grafana-bridge_9.0.1-1_all.deb
  2. Install the package using any of these commands:
    • To install Grafana bridge on Red Hat® Enterprise Linux® 9.x x86_64 node, use the following command:
      rpm -ivh gpfs.grafana-bridge-x.x.x-x.noarch.rpm
    • To install Grafana bridge on Ubuntu amd64 node, use the following command:
      dpkg -i gpfs.grafana-bridge_x.x.x-x_all.deb
  3. Add the following API keys to enable authenticated communication with the internal IBM Storage Scale performance monitoring system:
    • mmperfmon config add --apiKey scale_grafana
    • mmperfmon config show --apiKey scale_grafana
  4. Update the /etc/grafanbridge/config.ini file by adding the following section for the API key:
    ##################### GPFS Server ###############################################
    [server]
    # The host name or ip address of the pmcollector node
    server = localhost
     
    # The https port to use
    serverPort = 9980
     
    # The sleep time in seconds before attempting to get metaData from the server again.
    # This most likely the case if the query was sent to server before it did finish the
    # initial startup (maximum 3 attempts)
    retryDelay = 60
     
    # The name of REST HTTPS API key name
    apiKeyName = scale_grafana
     
    # The REST HTTPS API key value, f.e:
    apiKeyValue = e40960c9-de0a-4c75-bc71-0bcae6db23b2
    
  5. Reload the systemd configuration and enable the Grafana bridge service:
    • systemctl daemon-reload
    • systemctl enable gpfs.grafana-bridge.service
  6. Start the Grafana bridge service:
    systemctl start gpfs.grafana-bridge.service
  7. Verify the Grafana bridge service status:
    systemctl status gpfs.grafana-bridge.service
    A sample output is as follows:
         gpfs.grafana-bridge.service - IBM Storage Scale bridge for Grafana
         Loaded: loaded (/etc/systemd/system/gpfs.grafana-bridge.service; enabled; preset: disabled)
         Active: active (running) since Mon 2026-03-09 11:57:56 CET; 15s ago
       Main PID: 2701837 (python3.12)
          Tasks: 15 (limit: 74669)
         Memory: 42.8M
            CPU: 2.211s
         CGroup: /system.slice/gpfs.grafana-bridge.service
                 └─2701837 /usr/bin/python3.12 /opt/IBM/grafanabridge/zimonGrafanaIntf.py --configFile /etc/grafanabridge/config.ini
    
    Mar 09 11:57:56 scale-12 grafana-bridge[2701837]: Using mmpython
    Mar 09 11:57:57 scale-12 grafana-bridge[2701837]: All dependencies from /opt/IBM/grafanabridge/requirements.in are installed for interpreter /usr/lpp/mmfs/bin/mmpython
    Mar 09 11:57:57 scale-12 grafana-bridge[2701837]: TLS certs already present at /etc/grafanabridge/ssl/certs
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]: 2026-03-09 11:57 - MainThread                               - INFO     -  *** IBM Storage Scale bridge for Grafana - Version: 9.0.1 ***
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]: 2026-03-09 11:57 - MainThread                               - INFO     - Successfully retrieved MetaData
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]: 2026-03-09 11:57 - MainThread                               - INFO     - Received sensors:CPU, CTDBDBStats, CTDBStats, DiskFree, GPFSBufMgr, GPFSEXPELNODE, GPFSFilesystem, GPFSFilesystemAPI, GPFSNSDDisk, GPFSNSDFS, GPFSNSDPool, GPFSNode, GPFSNodeAPI, GPFSRPCS, GPFSTSCOM, GPFSVFSX, GPFSWaiters, GPFSmmhealth, Load, Memory, Netstat, Network, SMBGlobalStats, SMBStats, TopProc, IPFIX, GPFSDiskCap, GPFSEXPEL, GPFSFileset, GPFSInodeCap, GPFSPool, GPFSPoolCap
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]: 2026-03-09 11:57 - MainThread                               - INFO     - Initial cherryPy server engine start have been invoked. Python version: 3.12.5 (main, Aug 23 2024, 00:00:00) [GCC 11.5.0 20240719 (Red Hat 11.5.0-2)], cherryPy version: 18.10.0.
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]: 2026-03-09 11:57 - MainThread                               - INFO     - Registered applications:
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]:  OpenTSDB Api listening on Grafana queries
    Mar 09 11:57:58 scale-12 grafana-bridge[2701837]: 2026-03-09 11:57 - MainThread                               - INFO     - server started
    If the Grafana bridge does not start using systemd (systemctl), you can try starting it manually by using one of the following methods:
    • Run the Python command:
      /usr/bin/python3.12 /opt/IBM/grafanabridge/zimonGrafanaIntf.py --configFile /etc/grafanabridge/config.ini
    • Run the startup script:
      /opt/IBM/grafanabridge/bridge_startup.sh
  8. Optional: To activate the Prometheus Exporter, change the settings in the Prometheus Exporter API Connection Defaults section:
    ##################### Prometheus Exporter API Connection Defaults #############
    [prometheues_exporter_plugin]
    # Port number the bridge listening on for Prometheus server requests;
    prometheus = 9250
  9. To remove the Grafana bridge package, run one of the following commands:
    • yum remove gpfs.grafana-bridge
    • rpm -e gpfs.grafana-bridge

Troubleshooting

This section provides information to help identify and resolve issues with the Grafana bridge.

If the Grafana bridge does not start or function correctly, follow these recommendations:
  • Review the Grafana bridge log file located at:
    /var/log/ibm_bridge_for_grafana/zserver.log
    The default log level is 15, as defined in /etc/grafanabridge/config.ini.
    ##################### Logging ####################################################
    
    [logging]
    # Directory where the bridge can store logs
    logPath = /var/log/ibm_bridge_for_grafana
    
    # log level 5 (TRACE), 10 (DEBUG), 15 (MOREINFO), 20 (INFO), 30 (WARN),
    # 40 (ERROR) (Default: 15)
    logLevel = 15
    
    # Log file name (Default: zserver.log)
    # Comment out this setting if you want to print trace messages directly on the command line
    logFile = zserver.log
    You can also set the log level from the command line:
    python3 /opt/IBM/grafanabridge/zimonGrafanaIntf.py --configFile /etc/grafanabridge/config.ini --logLevel LOGLEVEL

    You can increase the log level in config.ini or use the --logLevel option to enable more detailed tracing, and then restart the Grafana bridge.

  • If the apiKey is not set in /etc/grafanabridge/config.ini, the Grafana bridge fails to start.
    A sample output is as follows:
    # /opt/IBM/grafanabridge/bridge_startup.sh
    
    Using mmpython
    All dependencies from /opt/IBM/grafanabridge/requirements.in are installed
    TLS certs already present at /etc/grafanabridge/ssl/certs
    Missing mandatory ApiKey settings, quitting
    Resolution: Uncomment and set the apiKey field in /etc/grafanabridge/config.ini (refer to Step 4), and then restart the Grafana bridge by using systemctl restart gpfs.grafana-bridge.service

  • If required dependencies from /opt/IBM/grafanabridge/requirements.in are missing, you get a sample output as follows:
    mmpython not found, falling back to system Python
    Auto-selected python version: 3.12
    
    The following dependencies are missing:
    - CherryPy
    Resolution: Install the required dependencies by running:
    /usr/bin/python3.12 -m pip install -r /opt/IBM/grafanabridge/requirements.in

After applying the troubleshooting recommendations, verify successful startup of the Grafana bridge.

Run the following command to start the Grafana bridge:
/opt/IBM/grafanabridge/bridge_startup.sh
  • If mmpython is available, you can see the output similar to the following:
    Using mmpython
    All dependencies from /opt/IBM/grafanabridge/requirements.in are installed for interpreter /usr/lpp/mmfs/bin/mmpython
    TLS certs already present at /etc/grafanabridge/ssl/certs
    2026-02-26 07:48 - MainThread - INFO - *** IBM Storage Scale bridge for Grafana - Version: 9.0.1 ***
    2026-02-26 07:48 - MainThread - INFO - Successfully retrieved MetaData
    2026-02-26 07:48 - MainThread - INFO - Received sensors:CPU, CTDBDBStats, CTDBStats, DiskFree, GPFSBufMgr, GPFSEXPELNODE, GPFSFilesystem, GPFSFilesystemAPI, GPFSNSDDisk, GPFSNSDFS, GPFSNSDPool, GPFSNode, GPFSNodeAPI, GPFSRPCS, GPFSTSCOM, GPFSVFSX, GPFSWaiters, GPFSmmhealth, Load, Memory, Netstat, Network, SMBGlobalStats, SMBStats, TopProc, IPFIX, GPFSDiskCap, GPFSEXPEL, GPFSFileset, GPFSInodeCap, GPFSPool, GPFSPoolCap
    2026-02-26 07:48 - MainThread - INFO - Initial cherryPy server engine start have been invoked. Python version: 3.12.5 (main, Aug 23 2024, 00:00:00) [GCC 11.5.0 20240719 (Red Hat 11.5.0-2)], cherryPy version: 18.10.0.
  • If mmpython is not available, you can see the output similar to the following:
    mmpython not found, falling back to system Python
    Auto-selected python version: 3.12
    All dependencies from /opt/IBM/grafanabridge/requirements.in are installed for interpreter /usr/bin/python3.12
    TLS certs already present at /etc/grafanabridge/ssl/certs
    2026-02-26 07:40 - MainThread - INFO - *** IBM Storage Scale bridge for Grafana - Version: 9.0.1 ***
    2026-02-26 07:40 - MainThread - INFO - Successfully retrieved MetaData
    2026-02-26 07:40 - MainThread - INFO - Received sensors:CPU, CTDBDBStats, CTDBStats, DiskFree, GPFSBufMgr, GPFSEXPELNODE, GPFSFilesystem, GPFSFilesystemAPI, GPFSNSDDisk, GPFSNSDFS, GPFSNSDPool, GPFSNode, GPFSNodeAPI, GPFSRPCS, GPFSTSCOM, GPFSVFSX, GPFSWaiters, GPFSmmhealth, Load, Memory, Netstat, Network, SMBGlobalStats, SMBStats, TopProc, IPFIX, GPFSDiskCap, GPFSEXPEL, GPFSFileset, GPFSInodeCap, GPFSPool, GPFSPoolCap
    2026-02-26 07:40 - MainThread - INFO - Initial cherryPy server engine start have been invoked. Python version: 3.12.5 (main, Aug 23 2024, 00:00:00) [GCC 11.5.0 20240719 (Red Hat 11.5.0-2)], cherryPy version: 18.10.0.
    2026-02-26 07:40 - MainThread - INFO - Registered applications:
    OpenTSDB Api listening on Grafana queries
    2026-02-26 07:40 - MainThread - INFO - server started