Reverse proxy (gateway) installation
Prerequisites
The installation of the ShareAspace component Reverse Proxy (or Gateway) requires the following prerequisites to be satisfied:
- Hardware prerequisites for a Web Server (IIS)
- Software prerequisites for a Web Server (IIS)
- TLS Certificate for the Web Server (IIS)
- Trust to the certificate used by the ShareAspace host for securing the communications (HTTPS)
- HTTPS in IIS
Note
To install the Gateway, a Host Node address is needed. Make sure you have installed a Host Node and have its address.
Installation steps
[1] Run the installer
- Run installer
ReverseProxy-x.y.z.build.msi
to install the Gateway on a Web Server (IIS)
[2] IIS settings
When installing the Reverse Proxy, an Application Pool named "ReverseProxy" is created in IIS. By default the account running the Application Pool is the built-in account "ApplicationPoolIdentity".
Note
If another account has to be used for running the "ReverseProxy" Application Pool, this account running the "ReverseProxy" Application Pool must have read access to the Reverse Proxy installation folder.
Configuration
- Open the file
C:\Program Files\Eurostep\ShareAspace\ReverseProxy\appsettings.json
- Set the ShareAspace Host Node address (at path
ReverseProxy/Clusters/Destinations/ShareAspaceCluster/destination1/Address
) as one of the server addresses, in this examplehttps://host.machine.net:5001
.- If the ShareAspace installation is using ShareAspace Host Cluster, the ShareAspace Host Node address should be the one of the leader.
Example
{
...
"ReverseProxy": {
...
"Clusters": {
"ShareAspaceCluster": {
...
"Destinations": {
"ShareAspaceCluster/destination1": {
"Address": "https://host.machine.net:5001"
}
}
}
}
}
}
Failover configuration
When running in failover mode, the reverse proxy must be configured with the primary node and all secondary nodes. Additional configuration for the health check process is also required.
{
...
"ReverseProxy": {
...
"Clusters": {
"ShareAspaceCluster": {
"LoadBalancingPolicy": "First",
"HttpClient": {
"DangerousAcceptAnyServerCertificate": true
},
"HealthCheck": {
"Active": {
"Enabled": "true",
"Interval": "00:00:10",
"Timeout": "00:00:10",
"Policy": "PrimarySecondary",
"Path": "/health"
}
},
"Metadata": {
"ConsecutiveFailuresHealthPolicy.Threshold": "3"
},
"Destinations": {
"ShareAspaceCluster/destination1": {
"Address": "_HOSTURI_"
},
"ShareAspaceCluster/destination2": {
"Address": "_HOSTURI_"
}
}
}
}
}
}
Placeholder | Description | Example value |
---|---|---|
_HOSTURI_ |
ShareAspace host node address, "destination1" is primary. | https://esaz123N1:5001 |
HealthCheck/Active/Enabled
- iftrue
enables failover health checks.ConsecutiveFailuresHealthPolicy.Threshold
- Number of retries before entering failover mode.