Skip to main content

Plugin Server Setup Guide

Enables extensible automation capabilities by hosting and executing custom plugins that integrate with ServiceOps to perform specialized functions and integrations.

The Plugin Server is a specialized component of ServiceOps that hosts and executes custom plugins to extend the platform's functionality. This guide provides step-by-step instructions for installing and configuring the Plugin Server on Ubuntu and Red Hat Enterprise Linux systems.

The Plugin Server architecture enables:

  • Extensibility: Add custom functionality without modifying the core platform.
  • Isolation: Separate plugin execution from the main application.
  • Scalability: Run plugins on dedicated servers for better performance.

Prerequisites

Before installing, ensure your environment meets the following requirements.

System and Network Requirements

System Requirements

  • Operating System: Ubuntu 22.04 LTS+ or Red Hat Enterprise Linux 9.2+
  • Hardware: Minimum 4GB RAM (8GB recommended), 20GB disk space.
  • Software: Java Runtime Environment (JRE) 8 or later.

Network Requirements

  • Ports: The Plugin Server uses port 8080 by default. Ensure it is open and that there is bidirectional communication with the main ServiceOps server (typically on port 80/443).
  • Firewall: Configure firewall rules to allow traffic on the required ports.

Main Server Requirements

  • ServiceOps Version: v8.3.9 and above.
  • Access: Administrative access to configure plugins.

Installation and Configuration

Step 1: Install the Plugin Server

  1. Download: Get the appropriate package for your OS from the Download Links.

  2. Prepare: Transfer the file to your server and set execute permissions:

    sudo chmod 777 plugin_server_CI

  3. Install: Run the installation script:

    sudo ./plugin_server_CI

    A success message will be displayed upon completion.

  4. Verify: Check that the service is active and running:

    systemctl status ft-plugins-server

Step 2: Configure Main Server Connection

The Plugin Server must be able to communicate with the main ServiceOps server.

  1. Edit the configuration file:
    sudo nano /opt/flotomate/plugin-server/config/application-hosted.properties
  2. Update the connection URL to point to your main server's IP and port if it's not on localhost:
    com.flotomate.mainserver.connection.url=http://your-main-server-ip:port/api
  3. Restart the service:
    sudo systemctl restart ft-plugins-server

Operations and Plugin Management

Service Management
Manage the Plugin Server service using systemctl commands.
  • Start: sudo systemctl start ft-plugins-server
  • Stop: sudo systemctl stop ft-plugins-server
  • Restart: sudo systemctl restart ft-plugins-server
  • Enable Auto-Start: sudo systemctl enable ft-plugins-server
Plugin Management

After installing the Plugin Server, upload and register plugins through the ServiceOps UI.

  1. Login as an administrator.
  2. Navigate to Admin > Automation > Integrations > Plugin.
  3. Upload the desired .fp plugin file.
  4. Register the uploaded plugin from the dropdown menu.

Supported Plugin Types:

  • Standard: For custom automation and third-party integrations.
  • Report: To generate custom reports and export data.
  • Chat: To integrate with customer bots and train AI models.
Monitoring and Maintenance

Monitoring Logs

  • Real-Time Logs: sudo journalctl -u ft-plugins-server -f
  • Log Files: Check /opt/flotomate/plugin-server/logs/ for plugin-server.log and error.log.

Regular Maintenance

  • Log Rotation: Implement log rotation to manage disk space.
  • Updates: Regularly update plugins and the Plugin Server itself.
  • Backups: Periodically back up the configuration and plugin directories.

Troubleshooting

Common Installation and Performance Issues

Permission Denied Errors

  • Solution: Ensure you are running commands with sudo and have set execute permissions on the installer.

Service Fails to Start

  • Solution: Check the service logs with journalctl. Verify that Java is installed and that the required ports are not in use by another service.

Connection Issues with Main Server

  • Solution: Use ping and telnet to verify network connectivity to the main server. Check the connection URL in application-hosted.properties and verify firewall rules.

Performance Issues

  • Solution: For high memory usage or slow plugin execution, monitor system resources (htop) and consider adjusting the JVM memory settings in the Advanced Configuration.