Mid Sever Installation on Linux Server ( Red Hat , Amazon Linux) - Article

SK Chand Basha
Giga Sage

Mid Server Installation on Linux OS: A Step-by-Step Guide

Installing the ServiceNow MID (Management, Instrumentation, and Discovery) Server on a Linux-based system is an essential step for integrating ServiceNow with on-premises applications, devices, or databases. The MID Server acts as a bridge between ServiceNow and these systems, allowing for efficient data transfers and real-time updates. In this article, we'll walk through the process of installing and configuring the ServiceNow MID Server on a Linux OS.

Prerequisites:

 

Use these minimum system requirements to allocate resources for computers hosting MID Servers.

Hardware & Software Requirements:

  • CPU: Minimum dual-core processor, but a quad-core or higher is recommended for better performance.
  • RAM: Minimum 8 GB RAM, but 16 GB or more is recommended.
  • Disk space: At least 40GB of free disk space for installation and log files.
  • Operating System: Linux Red Hat 6 and above.
  • Make sure the necessary ports are open for communication. Typically, this involves allowing outbound traffic on port 443(HTTPS) for communication with the ServiceNow instance.
  • The MID Server requires the minimum PowerShell version 3.0 and supports versions up to PowerShell 5.1.  

Java version support:

  • OpenJDK JRE 11.0.17 is bundled with the MID Server installer package and is installed on the host for all new MID Servers. It supports both 64-bit Windows MID Servers and 64-bit Linux MID Servers. For the best performance, install the 64-bit MID Server for your operating system. The MID Server requires a minimum JRE version 11.0.8, and the recommended version is 11.0.9_1. If you are using a lower version than 11.0.8, you may see encryption related issues.
  1. Mid Server User Creation
  • Navigate to All -> System Security -> Users

SKChandBasha_0-1744529171509.png

 

  • Open the users and click on the New

SKChandBasha_1-1744529171513.png

 

  • Fill the details

SKChandBasha_2-1744529171517.png

 

  • Save the record
  • Under related list we have Roles click on it
  • Select Edit

SKChandBasha_3-1744529171522.png

 

  • Enter mid Server

     

SKChandBasha_4-1744529171524.png

 

  • Move it to Roles List and Save
  • Set a Password

 

SKChandBasha_5-1744529171527.png

 

  • Click on Generate and copy
  • Save the password

SKChandBasha_6-1744529171530.png

 

  • Update the record.
  • Log in using the newly created user account and update the password, ensuring it does not contain any HTML special characters(Avoid using characters like <, >, &, ', or " in the password).
  1. Download the MID Sever Installer

First, you need to download the appropriate version of the MID Server installer package for Linux. This can be done using the wget command.

How to get the installer mid server file?

  • Navigate to  Mid Sever  Downloads

SKChandBasha_7-1744529171532.png

 

 

  • Copy the Linux (RPM) 64 bit file.

SKChandBasha_8-1744529171534.png

Switch to Root User in host

  • The process requires administrative privileges. Use the following command to switch to the root user:
sudo su - 
  • Run the following command to download the installer:
  • Syntax : wget <copied link of the installer> 
wget https://install.service-now.com/glide/distribution/builds/package/app-signed/mid-linux-installer/2024/08/31/mid-linux-installer.washingtondc-12-20-2023__patch7-08-21-2024_08-31-2024_1809.linux.x86-64.rpm

 

SKChandBasha_9-1744529171551.png

  1. Install the RPM Package

 

  • Install the downloaded RPM package using the following command:

SKChandBasha_29-1744529505687.png

 

Syntax  : sudo rpm -ivh --nodeps package_name.rpm
  • The package name displayed above the image with an arrow indicator.
sudo rpm -ivh --nodeps mid-linux-installer.washingtondc-12.20.2023_patch9a-12 …. rpm

Tip: Once you enter 'nodeps', start typing 'mid' and hit Tab to fill in the complete package name automatically.

 

SKChandBasha_30-1744529606065.png

 

4.Create Non-Root User to run a MID Server as a daemon service,

Syntax : sudo adduser newuser
  • sudo adduser mid_service_user
  • Set the User Password
Syntax: sudo passwd newuser
  • sudo passwd mid_service_user
  • A prompt will appear to update the password for the 'mid_service_user' account
  • Enter strong  New Password:
  • Retype new password:
  • If the values match, a prompt will be displayed.
  • passwd: all authentication tokens updated successfully
  1. Navigate to the ./installer.sh file
  • /opt/servicenow/mid/agent/installer.sh

SKChandBasha_31-1744529729001.png

Syntax : cd /opt
  • To view the files in the folder
Syntax: ls

SKChandBasha_32-1744529744321.png

 

  • Syntax: cd servicenow

SKChandBasha_33-1744529753671.png

 

  • Syntax : cd mid
  • Type ls

SKChandBasha_34-1744529764171.png

 

  • Syntax : cd agent
  • Type ls

SKChandBasha_0-1744529818341.png

Syntax : ./installer.sh

SKChandBasha_1-1744529829039.png

 

  • The prompt will request the ServiceNow instance URL—enter the target instance URL where the MID Server needs to be installed.

SKChandBasha_2-1744529843005.png

 

  • If you are using a proxy, enter 'Y'. If you also want to use mutual authentication, type 'Y' again; otherwise, type 'N'

SKChandBasha_3-1744529853287.png

 

mid.proxy.use_proxy

  • Enables the MID Server to use a web proxy to access the ServiceNow instance.

mid.proxy.host

  • Set this parameter to define the web proxy's host.

mid.proxy.port

  • Set this parameter to define the web proxy's port.

mid.proxy.username

  • If the web proxy requires a user name, set this parameter to define that username.

mid.proxy.password

  • If the web proxy requires a password, set this parameter to define

that password.

  • The MID Server can bypass proxy servers whose DNS/IP address is listed in the configurationparameter mid.cloud.discovery.proxy.exclusion.list. See MID Server property for more information.

 

MUTUAL_AUTH

  • Set this value to Y to use mutual authentication instead of basic authentication. Otherwise, set it to N.

Note: If MUTUAL_AUTH = Y then provide the path to the certificate with CERTIFICATE_PATH.

 

CERTIFICATE_PATH

  • If mutual authentication is enabled, provide the path to the certificate.
  • Enter the Username and Password for mid server which was created in first step

SKChandBasha_4-1744529872753.png

 

  • When the username and password match, you'll see the following output

SKChandBasha_5-1744529881637.png

 

  • Do you want to enable the certificate revocation type ‘Y’ otherwise ‘N’.
  • Enter the MID Server name as it appears in the ServiceNow instance 

SKChandBasha_6-1744529894520.png

 

  • Enter the Service Name, Ex: Mid_Service

SKChandBasha_0-1744529936894.png

  • Enter the long name for the service, EX : Servicenow_Mid_Service

SKChandBasha_0-1744529975276.png

  • Provide the non-root user details which is created in earlier step

 

SKChandBasha_1-1744529996289.png

  • The prompt will ask for permission to proceed—only a non-root user should have access to the directory. Type 'Y' to begin the installation.

SKChandBasha_2-1744530007006.png

  • Upon successful installation, the following output will be displayed.

SKChandBasha_3-1744530024923.png

 

SKChandBasha_4-1744530052860.png

 

 

Test & Validation

  • Navigate to MID Server → Servers
  • Open the record for the MID Server you created
  • Click Validate. A popup will appear—click Save

Tip:
If validation takes too long, you may need to restart the MID Server service.

Commands:

# List all services

systemctl list-unit-files --type=service --all

 

# Restart the MID Server service (replace 'service' with the actual service name)

sudo systemctl restart <service-name>.service

 

 

 

1 REPLY 1

Pratiksha
Mega Sage
Mega Sage

Very helpful