The following tutorial will demonstrate the setup of X Dispatch Server on a machine running Windows Server 2016. If you have any questions or are in need of assistance at any time, please visit our ServiceDesk Portal to open a ticket.
Terminology
Database Server | A database server is a server that houses a database application that provides database services to other computer programs or to computers. |
Application Server | An application server is a software framework that provides both facilities to create web applications and a server environment to run them. |
Web Server | Web server refers to software or hardware dedicated to running a website and serves it's contents to the World Wide Web. It processes network requests over HTTP & other related protocols. |
X Dispatch Install Types
Single Server | When you use just one machine for both the database, web, and even potentially remote desktop roles, this is a single server or combination server setup. |
Multi Server | When you are just running one role per machine, this would be a multi server setup. Example: You have one machine for the database, one machine for web, etc. |
Prerequisites
Minimum Hardware / OS Requirements - 2.5 GHz Intel® or AMD x86-x64 (Quad-core processor)
- 8 GB RAM
- 100 GB available disk space
- Microsoft Windows Server 2016
- Windows Powershell 3.0
- Microsoft SQL Server 2012 R2
|
Important Information About Virtualization CXT Software recommends using a physical server for X Dispatch database server role, however, it is possible to use a Virtual Machine and requires expert level virtualization skills. If a Virtual Machine is configured, it's important to note that performance failures can occur in the Host Operating System (OS), the Virtualization Layer, and Guest Operating System (OS). To minimize potential performance failures, these areas must be configured properly. For specific virtualization instructions please refer to your virtualization technology documentation. |
Domain Accounts You will need to create three domain administrator accounts to handle various back-end processes and roles for X Dispatch. - cxtbll - For running the cxtbll COM+ application.
- cxtjobs -For running the App Pools in IIS and X Stream.
- cxtsupport - For RDP access and troubleshooting.
Once these accounts are created you can move on to installing roles and features in the last prerequisite below. |
Server Roles & Features Server Roles- File and Storage Services
- Web Server
- Web Server
- Common HTTP Features
- Default Document
- Directory Browsing
- HTTP Errors
- Static Content
- Health and Diagnostics
- Performance
- Security
- Application
- .Net Extensibility 3.5
- .Net Extensibility 4.6
- Application Initialization
- ASP
- ASP.NET 3.5
- ASP.NET 4.6
- ISAPI Extensions
- ISAPI Filters
- Server Side Includes
- WebSocket Protocol
- FTP Server
- Management Tools
- IIS Management Console
- IIS Management Scripts and Tools
Features- .Net Framework 3.5 Features
- .Net Framework 4.6
- .NET Framework 4.6
- ASP.NET 4.6
- WCF Services
- Enhanced Storage
- Windows PowerShell
- Windows Powershell 5.1
- Windows Powershell 2.0 Engine
- WoW64 Support
|
Database Server Setup & Configuration
Step 1 - Configuring DEP (Data Execution Prevention) - Right click on the Windows start button.
- Click on System.
- In the system window click on Advanced system settings.
- In the System Properties window click the Advanced tab.
- Under the Advanced tab click the Settings button under Performance.
- In the Performance Options window click the Data Execution Prevention tab.
- Select the Turn on DEP for essential Windows programs and services only then click OK.
- Click OK on the popup to restart the server, then close all active windows and restart.
|
Step 2 - Configuring UAC (User Account Control) - Click on the Windows Start button.
- Start typing "UAC" in the search box.
- Click on Change User Account Control settings.
- Drag slider to lowest Never Notify setting.
- Click OK.
- Click on the Windows Start button.
- Start typing "Regedit" in the search box.
- Click on Regedit.
- Turn off UAC via registry by changing the DWORD "EnableLUA" from 1 to 0 in "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system".
- Restart the server.
|
Step 3 - Configuring COM+ (Component Object Model) - Click on the Windows start button.
- Start typing "Administrative Tools" in the search box.
- Click on Administrative Tools.
- In the Administrative Tools window click on Component Services.
- In the Component Services window expand Component Services, then Computer.
- Right click on My Computer and select Properties.
- In the My Computer Properties window click the Options tab.
- Change the Transaction Timeout from 60 to 600.
- Click on the Default Properties tab.
- Check the Enable distributed COM on this computer and the Enable COM internet services on this computer options, if not already.
- Click the COM Security tab.
- Click on the Edit Limits button located in the Access Permissions section.
- Check that the Everyone and ANONYMOUS LOGON users are listed. If they are not listed, click the Add button and add each user.
- Verify that all the Allow checkboxes are checked for Everyone and ANONYMOUS LOGON users.
- Repeat steps 12 - 14 for Edit Limits and Edit Defaults in the Access Permissions and Launch and Activation Permissions sections.
- Click OK.
- Click OK in the My Computer Properties window
- Click Yes on the DCOM Machine Wide settings window.
- In the Component Services window expand My Computer.
- Expand Distributed Transaction Coordinator.
- Right click on Local DTC and click Properties.
- In the Local DTC Properties window click on the Security tab.
- Under the Security tab check the following boxes, Network DTC Access, Allow Remote Clients, Allow Remote Administration, Allow Inbound, Allow Outbound, No Authentication Required, And Enable XA Transactions.
- Click OK.
- Click Yes on the MSDTC Service window.
- Click OK to the MSDTC Restart message.
- Close the Component Services window.
|
Step 4 - SQL Server Installation & Configuration - Download Microsoft SQL server here. (SQL Server Express is Free to use but is limited to a Database of 10 GB)
- Follow Microsoft instructions to register and download Microsoft SQL Server 2008 R2 Express with Mgmt Tools. (64 Bit ENU\x64\SQLEXPRWT_x64_ENU.exe, 32 Bit ENU\x86\SQLEXPRWT_x86_ENU.exe)
- Right Click on the downloaded SQL Server installer and click Run as Administrator.
- In the SQL Server Installation Center window click on New SQL Server stand-alone installation or add feature to an existing installation.
- Check the box I accept the license terms and click Next.
- On the Products Updates page check the box to Include SQL Server product updates, then click Next.
- On the Feature Selection page check the boxes Database Engine Services, SQL Server Replication, Management Tools - Basic, SQL Client Connectivity SDK, then click Next.
- On the Instance Configuration page select Named Instance and name it "MSSQLSERVER", then click Next.
- On the Server Configuration window ensure the SQL Server Database Engine is configured to use the NT AUTHORITY\SYSTEM account.
- On the Database Engine Configuration page set Authentication Mode to Mixed in Database Engine Configuration window.
- Set the Password and confirm.
- Click ADD and add the 3 users created at the start (cxtbll, cxtjobs, cxtsupport) click Next.
- Click Next to start the installation.
- Once the installation is complete click Close then Close again.
- Click on the Windows start button.
- Start typing "SQL Server Configuration Manager" in the search box.
- Click on SQL Server Configuration Manager.
- In the SQL Server Configuration Manager window expand SQL Server Network Configuration so that Protocols for MSSQLSERVER is visible.
- Click on Protocols for MSSQLSERVER.
- Right click on Shared Memory and select Disable.
- Click OK.
- Right click on TCP/IP and select Enable.
- Click OK.
- Click on SQL Server Services.
- Right click on SQL Server Browser and select Properties.
- Select the Service tab.
- Click Disabled on Start Mode to show options, then select Automatic.
- Click OK.
- Right click on SQL Server (MSSQLSERVER).
- Click Restart.
- Right click on SQL Server Browser.
- Click Start.
- Close all windows.
|
Step 4.5 - Attaching a database - Create a full backup of both CxtData and CxtArchiveData databases.
- Move backup files to a new server if necessary.
- Click on the Window start Button.
- Start typing "SQL Server Management Studio" in the search box.
- Click on SQL Server Management Studio.
- In the Connect to Server window ensure the Server Type is set to Database Engine.
- Enter a period (.) in Server name since the SQL instance has previously been named MSSQLSERVER.
- Under Authentication, you should set it to be Windows Authentication.
- Click Connect.
- Expand Databases in the tree on the left to view all Databases. Note cxtData and cxtArchiveData are not there.
- If you did a backup and are restoring to the new SQL server, right click on Databases and click New Database.
- In the New Database window enter cxtData as the Database name and click OK.
- Repeat steps 11-12 for cxtArchiveData database.
- Right click on cxtData and select Tasks > Restore.
- Select Device then click the ... button.
- In the popup, click the Add button, navigate to the location of the backup file, and select the file.
- Press OK then OK.
Verify that the information is correct and click OK.
|
Step 5 - Installing X Dispatch Server - Download the latest version of X Dispatch Server here.
- Extract the downloaded file.
- Right click Run as Administrator.
- Agree to the terms.
- Click Next.
- Click Install.
- Accept the ASP.NET MVC Install.
- Click Finish ASP.NET MVC.
- Click the Windows start button.
- Start typing in "Services" in the search box.
- Click on Services.
- Scroll down to X Stream.
- Double click and open the X Stream service.
- Click the Log On tab.
- Change from Local System account to the domain account cxtjobs.
- Click OK.
- Click OK on the account has been granted permissions pop up.
- Click OK to the restart Ppp up.
- Right click On X Stream and Click Restart.
|
Step 5.1 - Updating the database - Click the Windows start button.
- Start typing "Powershell" into the search bar.
- Right click Powershell and select to Run as Administrator.
- In the Powershell window, type the following command and press Enter: set-executionPolicy RemoteSigned
- In the Powershell window, type the following command and press Enter: cd "\Program Files (x86)\Connexion"
- In the Powershell window, type the following command and press Enter: .\update.ps1
- Close Powershell.
- In File Explorer, navigate to "C:\Program Files (x86)\Connexion".
- Review the Update.txt file. If any errors are listed, enter a support ticket.
|
Step 5.5 - CXTBLL Configuration - Click the Windows start button.
- Start typing "Component Services" in the search box.
- Click Component Services.
- Expand Component Services, Computers, My Computer, COM+ Applications.
- Right click on cxtbll and click Properties.
- Click the Identity tab
- Click on This User.
- Enter the cxtbll account created in Step 1, click OK.
- Close Component Services.
- Open X Dispatch.
|
Web Server Setup & Configuration
The web portion of this installation will go through the setup and configuration of all CXT web apps such as Rapidship, X Tracking, and various X Dispatch web modules.
Step 1 - App Pool & Sites Configuration - Click on the Windows start button.
- Start typing "IIS" in the search box.
- Click on Internet Information Services (IIS) Manager.
- Expand the server in the tree on the left.
- Right click on Application Pools, click on Add Application Pool...
- In the Add Application Pool window, set the Name to .NET 2.0 and the .NET CLR Version to .NET CLR Version v2.0.50727.
- Click OK.
- Right click on Application Pools, click on Add Application Pool...
- In the Add Application Pool window set the Name to .NET 4.0 and the .NET CLR Version to .NET CLR Version v4.0.30319.
- Click OK.
- Right click on the .NET 2.0 application pool, then click on Advanced Settings...
- In the Advanced Settings window click on ... under Identity.
- Select Custom account and press the Set... button.
- Enter cxtjobs domain account information for the server, then click OK.
- In the Advanced Settings window set the Enable 32 Bit Applications to True, then click OK.
- Repeat steps 11 - 15 for the .NET 4.0 Application Pool.
- Unzip X internet. Download here.
- Copy the second XInternet folder (there is a XInternet folder inside the XInternet folder) to C:\Inetpub\wwwroot so all the content is in C:\Inetpub\wwwroot\XInternet. These are the web files.
- Expand the Sites folder in the tree on the left.
- Right click on Sites, then click Add New Site.
- Name the new site "XInternet".
- Click on the Select... button.
- Select .Net 2.0 as Application Pool.
Click OK. - Set the Physical path to where you saved the web files.
- Open a web browser and navigate to 127.0.0.1 to verify the site is running.
- In IIS, click on the Server then click Server Certificates.
- Check for existence of current license under Name. If the license doesn't exist, select Create Self-Signed Certificate.
- Specify a friendly name for certificate and press OK.
- Select the XInternet website.
- Select Bindings.
- In the Bindings window set the Type to https.
- Set the SSL certificate to the one created.
- Click OK.
- Close the Bindings window.
- Right click on the XInternet site and select Add Application...
- In the Add Application window, name the application "CxtWebService".
- Click Select... to set Application Pool to ".Net 4.0".
- Set the Physical Path to "C:\Program Files (x86)\Connexion\XInternet\CxtWebService".
- Press OK.
- Right click on XInternet site and select Add Application...
- In Add Application window, name the application "XInternetMVC".
- Click Select... to set Application Pool to ".Net 4.0".
- Set the Physical Path to "C:\Program Files (x86)\Connexion\XInternet\v2".
- Click OK.
- Click on CxtWebService.
- Click on Authentication.
- Right click on Anonymous Authentication and select Enable.
- Right click on Anonymous Authentication and select Edit.
- Select Application Pool Identity and press OK.
- Verify that the status is enabled.
- Repeat steps 48 - 51 for XIntenetMVC.
- Click on CXTWebService and open Application Settings.
- Select Add from pane on right.
- Enter "RemoteServer" as Name and Data Source=127.0.0.1;Initial Catalog=cxtdata;Integrated Security=SSPI into Value field. The IP address (127.0.0.1 is used as this is a single server replace with IP address of Database server for multi server setup..)
- Right click on XInternet site and select Add Application.
- Enter "ROWS" for Alias.
- Select ".Net 2.0" for Application Pool.
- Set Physical path to "C:\Program Files(x86)\Connexion\ROWS".
- Press OK.
- Right click on X Internet, and select Add Application.
- Set Alias to XInternet.
- Set Physical Path to "C:\Program Files(x86)\Connexion\XInternet".
- Set Application Pool to ".NET 2.0".
- Press OK.
- Change Connect As user to cxtbll.
- Click Test Settings... to verify path and user account are accurate.
- Select the XInternet application and open Application Settings section.
- Set the AspAddress value under Application Settings to URL location of ASP site. " / " can be entered if a virtual directory is created under ASP website and ASP website is the default website in IIS.
- Select Add under Actions to add a new Application Setting.
- Set Name to "RemoteServer" and enter the IP address of X Dispatch Server under Value.
- Click OK.
- Add (for new installations) or modify (for upgrades) the following settings below.
- Name: XTrackingWebserviceURL - Value: http://127.0.0.1/XInternet/CxtMappingWebService.svc?wsdl - Click OK.
- Close IIS.
Firstly, the IIS CORS module needs to be installed: Download the Web Platform Installer (if it is not installed) Install the CORS module
Next, the ApplicationHost.config file needs to be updated to include the CORS information. Find the ApplicationHost.config file. Normally, it can be found under: C:\Windows\System32\inetsrv\config Under the <system.webServer> tag, add the following:
Save the file and restart IIS. |
Remote Desktop Setup & Configuration
Detailed instructions for installing Remote Desktop is beyond the scope of this documentation, however, brief notes are provided below. Remote desktop is a standard remote connectivity platform from Microsoft and your IT team should have the ability to install this Microsoft product.
Step 1 - RDS Setup - Open Server Manager.
- Click on Local server.
- Scroll down to Roles and Features.
- Click the Task dropdown and select Add Roles and Features.
- If you receive the "Before you begin" page click Next.
- Select Role-Based or Feature-based Installation, then click Next.
- Select the server and click Next.
- Check Remote Desktop Services under the Select Server Roles screen, then click Next.
- Add required features, then click Next.
- Click Install.
|
Installation Troubleshooting Tips & Tricks
When launching X Dispatch, if it gets stuck at X%
- 32% Cannot connect to Remote Server (Database) or it is blank opens server select utility
- 35% cxtbll COM+ Application may not be configured correctly
- 36% Fails here may mean SQL is not running
- 94% Check the DEP settings
Multi-Server Setup - on-premise: X Internet will not log in
Review the Global.asa file located in the c:\inetpub\wwwroot\XInternet directory.
- RemoteServer - Default "127.0.0.1" - This should be pointed at the DB Server
- XInternetURL - Default "/XInternet/"
- XInternetMvcURL - Default "/XInternetMVC/"
Multi-Server Setup - on-premise: X Mobile will not work
Review the gps.asp file located in the c:\inetpub\wwwroot\XInternet directory.
- The default should be Application("RemoteSever") but it can be a fixed address pointing at the DB Server
- ogps.Process(Application("RemoteServer"))
- ogps.Process("192.168.100.100")