Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/2023.9 add innovation to 7.2 #53

Merged
merged 18 commits into from
Sep 26, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ To get a licence file and feature identifier take the following steps:
Please also include a suitable {{% ctx %}} Innovation feature identifier.
```

1. Extract `Cortex Innovation 2022.9 - Licence Fingerprint Generator.zip`.
1. Extract `Cortex Innovation {{< version >}} - Licence Fingerprint Generator.zip`.
1. From that folder, copy `Cortex.Licensing.FingerprintGeneration.exe` to the server.
1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ To get a licence file and feature identifier take the following steps:
Please also include a suitable {{% ctx %}} Innovation feature identifier.
```

1. Extract `Cortex Innovation 2022.9 - Licence Fingerprint Generator.zip`.
1. Extract `Cortex Innovation {{< version >}} - Licence Fingerprint Generator.zip`.
1. From that folder, copy `Cortex.Licensing.FingerprintGeneration.exe` to the server.
1. Double-click `Cortex.Licensing.FingerprintGeneration.exe` to run it. A command line window will appear, containing a machine identifier and fingerprint, e.g:

Expand Down
82 changes: 82 additions & 0 deletions content/en/docs/2023.7/Reference/troubleshooting/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,87 @@ To work around this error, either uninstall the platform and reinstall it using

Check that the `Feature Flags` Guid in the `CortexGateway.SetParameters.xml` file used for installing {{% ctx %}} Gateway is correct. If it is not, update it and reinstall {{% ctx %}} Gateway or update the value in the `web.config` file and restart the website. If the value is correct, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance.

### {{% ctx %}} Innovation blocks not visible in {{% ctx %}} Studio {#ts-no-blocks}

#### Application Pool user does not have Modify rights to the Roaming folder

The following folders require `Modify` permission to allow creating the `NuGet` folders and its `NuGet.Config` file within:

* `C:\Windows\System32\config\systemprofile\AppData\Roaming`
* `C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming`

For each folder, perform the following steps:

1. Navigate to the `AppData` folder.
1. Right-click on the `Roaming` folder and click `Properties`.
1. In the dialog, click the `Security` tab.
1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions.
1. If the `Application Pool` user for Gateway is not listed:
1. Click the `Edit...` button.
1. Click the `Add...` button.
1. Enter the username of the application pool user and click `OK`.
1. In the `Permissions` section at the bottom, check `Modify`.
1. Click `OK`.
1. Click `Yes` to change the permission to the folder.
1. If the `Application Pool` user for Gateway is listed but does not have permissions:
1. Click the `Edit...` button.
1. Select the `Application Pool` user.
1. Check `Modify`.
1. Click `OK`.
1. Click `Yes` to change the permission to the folder.

#### Application Pool user does not have rights to the Cortex Blocks Provider Host folder

Perform the following steps:

1. Navigate to `C:\ProgramData\Cortex`
1. Right-click on the `Cortex Blocks Provider Host` folder and click `Properties`.
1. In the dialog, click the `Security` tab.
1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions.
1. If the `Application Pool` user for Gateway is not listed:
1. Click the `Edit...` button.
1. Click the `Add...` button.
1. Enter the username of the application pool user and click `OK`.
1. In the `Permissions` section at the bottom, check `Modify`.
1. Click `OK`.
1. If the `Application Pool` user for Gateway is listed but does not have permissions:
1. Click the `Edit...` button.
1. Select the `Application Pool` user.
1. Check `Modify`.
1. Click `OK`.

#### Perform an IIS reset

1. Open a Windows PowerShell (x64) window as administrator.
1. Run the following command: `iisreset`.
1. Wait for the action to complete.

### Flow not starting in {{< ctx >}} Gateway {#ts-flow-not-starting}

#### Application Pool user does not have rights to the Repo folder

Check that the `Application Pool` user has rights to the `Repo` folder using the following steps:

1. Check where the `Repo` folder is located
1. Navigate to the `gateway` IIS folder (usually `%SystemDrive%\inetpub\wwwroot\Cortex\gateway`, e.g. `C:\inetpub\wwwroot\Cortex\gateway`)
1. Open the `web.config` file.
1. Find the value of the `connectionString` named `CortexRepositories`
1. Navigate to the `Repo` folder, not opening it.
1. Right-click on the `Repo` folder and click `Properties`.
1. In the dialog, click the `Security` tab.
1. Check the `Application Pool` user for Gateway is listed in the `Group or user names` and has `Modify` permissions.
1. If the `Application Pool` user for Gateway is not listed:
1. Click the `Edit...` button.
1. Click the `Add...` button.
1. Enter the username of the application pool user and click `OK`.
1. In the `Permissions` section at the bottom, check `Modify`.
1. Click `OK`.
1. If the `Application Pool` user for Gateway is listed but does not have permissions:
1. Click the `Edit...` button.
1. Select the `Application Pool` user.
1. Check `Modify`.
1. Click `OK`.

### Cannot publish a package {#ts-no-publish}

Check that the `Service Fabric Api Gateway Endpoint`, `Service Fabric Using Self Signed Certificates`, `Service Fabric ApiGateway Basic Auth Username` and `Service Fabric ApiGateway Basic Auth Password` in the `CortexGateway.SetParameters.xml` file used for installing {{% ctx %}} Gateway are correct. If any of them are not, update them and reinstall {{% ctx %}} Gateway or update the value in the "web.config" file and restart the website. If the value is correct, please contact [{{% ctx %}} Service Portal][CORTEX Service Portal] for assistance.
Expand Down Expand Up @@ -254,3 +335,4 @@ If this occurs on your server it is important to update your certificates as soo

[CORTEX Service Portal]: {{< url path="Cortex.ServicePortal.MainDoc" >}}
[Rollover Certificates]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.RolloverCertificates" >}}
[add rights to nuget folder]: {{< ref "#ts-add-rights-to-nuget-folder" >}}
Original file line number Diff line number Diff line change
Expand Up @@ -25,22 +25,23 @@ The installation process is the same, regardless of which architecture is used;

The recommended architecture for adding Innovation to a v7.2 Dual Site, Dual Server system requires 8 servers in total; the 4 existing servers, plus 4 new servers:

* 2x Existing Application Servers for v7.2, one of these will also act as the Web Application Server for Innovation. For Innovation, the existing Gateway will be upgraded.
* 2x Existing Database Servers, used for v7.2 and Gateway databases.
* 1x New Load Balancer Server for Innovation.
* 3x New Application Servers for Innovation.
* 2x Existing Application Servers for v7.2, one of these will also act as the Web Application Server for Innovation. For Innovation, the existing Gateway will be upgraded and a new Debug Node will be added
* 2x Existing Database Servers, used for v7.2 and Gateway databases
* 1x New Load Balancer Server for Innovation
* 3x New Application Servers for Innovation

{{< figure src="/images/editable/Cortex Innovation and v7.2 Best Architecture.png" class="centre" title="8 Server, Recommended Architecture Diagram" >}}

{{< section "/architecture/components/node-details.md" >}}

### Minimum Architecture

The minimum architecture requires only the 4 existing servers:
The minimum architecture requires 5 servers:

* 2x Application Servers for v7.2, each of these will also host one of the three Application Servers for Innovation.
* 1x Database Server for v7.2, which will also host the remaining Application Server for Innovation.
* 1x Database Server for v7.2, which will also host the Load Balancer for Innovation.
* 1x Web Application Server, which contains Gateway. For Innovation, the existing Gateway will be upgraded and a new Debug Node will be added
* 2x Application Servers for v7.2, each of these will also host one of the three Application Servers for Innovation
* 1x Database Server for v7.2, which will also host the remaining Application Server for Innovation
* 1x Database Server for v7.2, which will also host the Load Balancer for Innovation

{{< figure src="/images/editable/Cortex Innovation and v7.2 Min Architecture.png" class="centre" title="4 Server, Minimum Architecture Diagram" >}}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,15 @@ This guide describes how to upgrade Gateway on v7.2 to include Innovation. Pleas

The steps to add Innovation functionality to 7.2 are:

1. Install local instance of the Application Server components
1. Upgrade {{% ctx %}} Gateway

## Make Installation Artefacts Available

{{% alert title="Note" %}}
We recommend that the single-node Service Fabric instance, used by {{% ctx %}} Gateway as a Debugger instance, and {{% ctx %}} Gateway are installed on the same Web Application Server.
{{% /alert %}}

1. Copy the following artefacts to a folder on the machine:

* Cortex Innovation {{< version >}} - Block Packages.zip
Expand Down Expand Up @@ -45,7 +50,17 @@ A Friendly Name should be assigned to the certificate being used for the Cortex
1. On the `General` tab in the `Friendly Name` text box, enter a name to be used for the certificate.
1. Click `OK`.

## Perform Installation
## Perform Debugger Installation

{{% alert title="Important" color="warning" %}}
{{< ctx >}} Gateway requires a local instance of the Application Server components to enable the debugging of flows.
{{% /alert %}}

### Install Debugger

To install the components required for debugging, perform the steps detailed in [Install Application Server][] on the Web Application Server.

## Perform Gateway Installation

### Configure {{% ctx %}} Gateway Installation Script

Expand Down Expand Up @@ -86,9 +101,9 @@ A Friendly Name should be assigned to the certificate being used for the Cortex
|`ServiceFabricApiGatewayBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Application Servers][Configure Installation Script]; if so, this value must be configured to the one used.<br /><br />This will overwrite the `ServiceFabricApiGatewayBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.|
|`ServiceFabricApiGatewayBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Application Servers][Configure Installation Script]; if so, this value must be configured to the one used. It can be [{{% ctx %}} Encrypted][CORTEX Encrypted].<br /><br />This will overwrite the `ServiceFabricApiGatewayBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerEndpoint` | Replace `server.domain.com` with the fully qualified domain name of the Web Application Server.<br /><br />This will overwrite the `DotNetFlowDebuggerEndpoint` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerBasicAuthUsername` | This must be changed if you used a non-default `FlowDebuggerBasicAuthUsername`; if so, this value must be configured to the one used.<br /><br />This will overwrite the `DotNetFlowDebuggerBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerBasicAuthPassword` | This must be changed if you used a non-default `FlowDebuggerBasicAuthPassword`; if so, this value must be configured to the one used. It can be [{{% ctx %}} Encrypted][CORTEX Encrypted].<br /><br />This will overwrite the `DotNetFlowDebuggerBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerUsingSelfSignedCertificates` | Configure the value as `$false` if you are using valid CA certificates to secure the site containing {{% ctx %}} Gateway, `$true` if using self-signed certificates.<br /><br />This will overwrite the `DotNetFlowDebuggerUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerBasicAuthUsername` | This must be changed if you used a non-default `ApiGatewayBasicAuthUsername` when [installing the Debugger on the Web Application Server][Install Application Server]; if so, this value must be configured to the one used.<br /><br />This will overwrite the `DotNetFlowDebuggerBasicAuthUsername` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerBasicAuthPassword` | This must be changed if you used a non-default `ApiGatewayBasicAuthPassword` when [installing the Debugger on the Web Application Server][Install Application Server]; if so, this value must be configured to the one used. It can be [{{% ctx %}} Encrypted][CORTEX Encrypted].<br /><br />This will overwrite the `DotNetFlowDebuggerBasicAuthPassword` value in the {{% ctx %}} Gateway web.config.|
|`DotNetFlowDebuggerUsingSelfSignedCertificates` | Configure the value as `$false` if you are using valid CA certificates to secure the communication between {{% ctx %}} Gateway and the Debugger, `$true` if using self-signed certificates.<br /><br />This will overwrite the `DotNetFlowDebuggerUsingSelfSignedCertificates` value in the {{% ctx %}} Gateway web.config.|
|`GatewayApplicationPoolUsername` | Replace `Domain\Username` with the user that is used to run the {{% ctx %}} Gateway application pool currently.|
|`WebRootFolder` | Replace this with the correct path for the Web Root Folder on the server. Typically this will be `C:\inetpub\wwwroot`.|
|`WebsitePort` | Replace this with the port that you wish the website to use. Typically this will be `443`.|
Expand Down Expand Up @@ -153,3 +168,4 @@ Ensure that the installation files are backed up or kept on the server, especial
[Licensing Requirements]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.LicensingRequirements" >}}
[Security Best Practices]: {{< url path="Cortex.GettingStarted.OnPremise.InstallInnovationOnly.Advanced.SSLBestPractices" >}}
[Try it out]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.MultipleServerWithHA.TryItOut" >}}
[Install Application Server]: {{< url path="Cortex.GettingStarted.OnPremise.AddInnovationTo72.SingleServerWithoutHA.InstallApplicationServer" >}}
Loading
Loading