System Requirements and Considerations
System Requirements
Before you install Records Management and any of its components, verify that your system meets or exceeds the following requirements:
Records Management Server | ||
---|---|---|
Cores | Memory (MB) | |
Minimum | 2 | 4096 |
Recommended | 4 | 8192 |
Windows Server 2012 or later (x64)
Windows Server 2012 R2* or later (x64)
- For Windows Server 2012 R2, the WebClient service must be running. To enable the WebClient service, ensure that the Desktop Experience feature is enabled on the server.
- .NET Framework 4.8 (only for Records Management v5.0)
.NET Framework 4.5
.NET Framework 3.5
Internet Information Services 7 or later
PowerShell 3+
250 MB Disk Space for software and 200 MB for log files
July 1, 2021: HTTPS Requirement
Today, it is exceedingly rare to have non-sensitive web traffic. By always using HTTPS connections, people's changing expectations for how websites handle sensitive traffic make everyone safer. By always using HTTPS connections, web services don’t have to make a subjective judgment call about what’s “sensitive”. By always using HTTPS connections, there is less room for error and deployment is simpler and more consistent across all of your environments.
Some modern web browsers now have default behavior that does not allow certain authentication schemes over HTTP. As a result, Gimmal now requires using HTTPS with Gimmal Records for any version of the software. The version of Gimmal Records you're using doesn't change the behavior of the browser with HTTP. The exact behavior when using HTTP depends on your choice of web browser and its related security configuration. For these reasons, Gimmal will provide limited, best-effort support for HTTP and will require HTTPS to be configured before troubleshooting any support tickets.
As a security best practice, Gimmal recommends that you configure your server to use Transport Layer Security (TLS) 1.2.
As a security best practice when using the .NET Framework, Gimmal recommends that you enable Transport Layer Security (TLS) 1.2, which provides communications security for client/server applications.
To enable TLS 1.2, you must add the following Windows registry settings to the Records Management Core server(s) and the servers of any Records Management connectors you are using (if applicable), and then reboot your system.
HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 "SchUseStrongCrypto"= dword:00000001
HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 "SystemDefaultTlsVersions"= dword:00000001
HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319 "SchUseStrongCrypto"= dword:00000001
HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319 "SystemDefaultTlsVersions"= dword:00000001
Note that some operating systems require additional steps to enable TLS 1.2. For more information, see Microsoft's TLS documentation To verify that your operating system supports TLS 1.2, read the Support for TLS 1.2 section of Microsoft's documentation.
SharePoint on-Premises Requirements:
SharePoint Server 2016
SharePoint Server 2019
Database Requirements
Effectively managing a database requires familiarity with collation, maintenance plans, recovery models, backups, and techniques for minimizing file system fragmentation, such as creating a database file large enough for any anticipated growth.
SQL Server Versions
- SQL Server 2016 or later
If it is necessary to upgrade from an older version of SQL Server (pre 2016), after you upgrade SQL Server and BEFORE installing the latest version of Gimmal Record Management, verify the SQL Compatibility Level of the “InformationLifecycle “ database by running the following query:
select compatibility_level from sys.databases where name = 'InformationLifecycle'
This query should return a minimum value of 130. If this is not the case, refer to the following Microsoft documentation for updating the compatibility level here.
Sizing
The following table shows database sizing estimates in GB. The "m" in the Data File headings represents millions.
Data File | 1m | 25m | 50m | 100m |
---|---|---|---|---|
Information Lifecycle Data | 25 | 600 | 1200 (1.1 TB) | 2400 (2.4 TB) |
Information Lifecycle Log | 15 | 50 | 100 | 200 |
Temp Data | 100 | 100 | 100 | 100 |
Temp Log | 10 | 10 | 10 | 10 |
Collation
Records Management requires a case insensitive collation as a minimum system requirement for the SQL Server database. The default EN-US collation is SQL_Latin1_General_CP1_CI_AS, which meets the Records Management minimum system requirements. Guidance on collations is available here: https://msdn.microsoft.com/en-us/library/ms143508(v=sql.105).aspx
Maintenance Plans
The Database Administrator should be familiar with tuning and monitoring a SQL Server instance. If there are no efforts made to track database performance over time, it becomes highly likely that database performance may be negatively impacted.
These monitoring efforts should be documented in reports containing empirical information about the database. From these reports, it is possible to construct and maintain a well-designed SQL Server maintenance plan. A SQL maintenance plan is highly recommended for any Records Management implementation.
The plan should address, but not be limited to, the following:
Index Fragmentation
Transaction Logs
Backups/disaster recovery
VerifyBackups
Maintenance Plan Cleanup
Database administrators must run the stored procedure ProcBlock_RebuildIndexes to rebuild the Records Manager indexes to improve query performance if they experience slowness.
Message Queue Considerations
Records Management is now using a message queue to improve the performance and reliability of the system. By default SQL Server is used as the queuing mechanism, but to improve performance and reliability Azure Queues can be used. This works with an Azure Service Bus instance located in your Microsoft Azure account and will distribute work across n number of machines where the service is installed and is configured to listen to the same set of queues. To configure your system to use Azure Queues, make the following additions to the <appSettings> section in the config file for both the Lifecycle Processing Service (RecordLion.RecordsManager.ServiceV2.exe.config) and Physical Records Management (RecordLion.RecordsManager.PhysicalAssets.Service.exe.config).
<add key ="rl.queue_type" value="azure"/>
<add key="rl.servicebus_connection_string" value="{service bus connection string}"/> value comes from the azure service bus instance and should include the security information for accessing the service bus
<add key="rl.azure_job_queue_name" value="{queue name}"/> value represents the name of the Queue in the Azure Service Bus Namespace that will be used
<add key="rl.job_worker_count" value="1"/> value represents the number of parallel active messages, please set to 1 unless instructed by Gimmal to increase