Table of Contents
Last updated: 2024-06-26

Reverse proxy (gateway) installation


Prerequisites


The installation of the ShareAspace component Reverse Proxy (or Gateway) requires the following prerequisites to be satisfied:

Gateway Server Setup

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 example https://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 - if true enables failover health checks.
  • ConsecutiveFailuresHealthPolicy.Threshold - Number of retries before entering failover mode.