FbF bioServer + App Server install requirements
v1.0 (09/12/2024)
CheckList
- Components to install on the server hosting AppServer+bioServer
- VC++ 2022 x64
- .NET 4.8
- IIS
- Ensure a SQL Server instance is available
- Install SQL Server instance
- Ensure you have tools to access the SQL Server instance
- Create the bioServer database
- Create the AppServer database
- Optional: Create a SQL user authorized to access the bioServer database
- Optional: Create a SQL user authorized to access the AppServer database
- Create the firewall rules
- Inbound access to TCP 443
- Outbound access to licenses.fulcrumbiometrics.com 443
- Outbound access to the SQL Server instance (ignore if all-in-one install)
1. Install VC++ 2022 x64
https://aka.ms/vs/17/release/vc_redist.x64.exe
2. Install Microsoft .NET 4.8
On operating systems such as Windows Server 2022, .NET 4.8 is installed as a Server Feature. In your Server Manager > Features, install the following features:
- .NET Framework 4.8 Features
- .NET Framework 4.8
- ASP.NET 4.8
- WCF Services
- Http Activation
- TCP Port Sharing
If prompted for additional features (dependencies), accept.
On other operating systems, .NET 4.8 must be downloaded and installed separately using an installer. The installer can be downloaded here https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net48-web-installer
3. Install IIS
3.1 Enable the Web Server (IIS) role
Requirements: IIS must be installed. On Windows Server 2019 and 2022, this requires installing the "Web Server (IIS)" server role with the following features:
- Web Server
- Common HTTP features
- Default Document
- Directory Browsing
- HTTP Errors
- Static Content
- Health And Diagnostics
- Performance
- Static Content Compression
- Security
- Request Filtering
- IP and Domain Restrictions
- Windows Authentication
- Application Development
- .NET Extensibility 4.8
- Application Initialization
- ASP.NET 4.8
- ISAPI Filters
- Management Tools
In the following order:
Note: If IIS was launched before installing Url Rewrite and ARR, make sure to close it and restart it. Otherwise, ARR won't be available in IIS.
- Go to the host node in the left window (top most node) and click on the
Application Request Routing
menu item in the right window:
- In the Actions panel of ARR, click on
Server Proxy Settings
.
- Check the
Enable proxy
checkbox and click on Apply
in the Actions panel.
4. Ensure availability of MS SQL Server
4.1 Install SQL Server
The solution requires the availability of a Microsoft SQL Server instance. In the absence of a dedicated server, it is possible to self-host an instance of SQL Server Express 2022 on the same VM as the solution.
Documentation on how to install SQL Server Express is widely available online. We recommend enabling Mixed Mode authentication, as it will allow both Windows Authentication (without needing to input credentials in the various connection strings) and SQL authentication (credentials need to be present in the connection strings, but overall management is more simple).
Important:
- the SQL Server Browser service must be enabled and configured to start automatically.
- TCP/IP protocol must be enabled in SQL Server Configuration.
To ensure the above points are properly configured, launch the SQL Server 2022 Configuration Manager
app from the startup menu as an administrator.
4.2 Install SQL Server Management Studio
In addition to SQL Server Express, the install process will require executing several SQL scripts on the DB server. To do so, we recommend the use of SQL Server Management Studio (SSMS). It can be downloaded here https://learn.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16.
Documentation on how to install SQL Server Express is widely available online.
5. Initialize the databases
5.1 bioServer DB
- Using SSMS or other DB management tool of your choice, connect to the target SQL Server instance.
- Create a new database. By default, you may name it "bioserver".
- Execute the script
db-structure.sql
on the new database (The script is included in the bioServer installer archive).
Optionally, you may create a SQL user specifically for this application. To do so, you can execute the script db-user.sql
(The script is included in the bioServer installer archive). Before doing so, edit the file with a text editor and ensure:
- Replace all occurrences of fulcrumuser with the desired user name.
- Replace all occurrences of @DATABASE-NAME@ with the name of the DB created previously.
- Make sure to define a password instead of the placeholder @PASSWORD-GOES-HERE@.
5.2 AppServer DB
- Using SSMS or other DB management tool of your choice, connect to the target SQL Server instance.
- Create a new database. By default, you may name it "appserver".
- Execute the script
backend/db/mssql-init.sql
on the new database (The script is included in the AppServer installer archive).
Optionally, you may create a SQL user specifically for this application. To do so, you can execute the script backend/db/mssql-user-init.sql
(The script is included in the AppServer installer archive). Before doing so, edit the file with a text editor and ensure the database, username and password are set accordingly.
6. Firewall rules
- Allow Inbound access to TCP 443
- Allow Outbound access to licenses.fulcrumbiometrics.com 443
- Allow Outbound access to the SQL Server instance (ignore if all-in-one install), port 1433
Appendix A: Specs
Target population: 200k templates
- OS: Windows Server 2019 (or up)
- Ram: 8 GB RAM
- CPU: Intel i5 (or equivalent) with 4 cores (8 preferred)
- Disk: 128 GB disk
Target population: 1 million
- OS: Windows Server 2019 (or up)
- Ram: 32 GB RAM
- CPU: Intel i5 (or equivalent) with 4 cores (8 preferred) with SSE4.2/AES-NI.
- Disk: 128 GB disk
Target population: 10 million
- OS: Windows Server 2019 (or up)
- Ram: 256 GB RAM
- CPU: Intel i5 (or equivalent) with 64 cores with SSE4.2/AES-NI.
- Disk: 128 GB disk