

# Databases for SAP on AWS with Amazon FSx for NetApp ONTAP
Databases with Amazon FSx

Amazon FSx for NetApp ONTAP is a fully managed service that provides highly reliable, scalable, high-performing, and feature-rich file storage built on NetApp’s popular ONTAP file system. You can now deploy and operate SAP applications using IBM Db2, SAP MaxDB, SAP ASE, Oracle, and MSSQL on AWS with FSx for ONTAP. For more information, see [Amazon FSx for NetApp ONTAP](https://aws.amazon.com/fsx/netapp-ontap/).

If you are a first-time user, see [How Amazon FSx for NetApp ONTAP works](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/how-it-works-fsx-ontap.html).

**Topics**
+ [

## Instances and sizing
](#rules)
+ [

## Supported instance types
](#instance-types)
+ [

## Sizing
](#sizing)
+ [

## Create storage virtual machines (SVM)
](#svm-sap)
+ [

## Volume configuration and layout
](#volume-configuration)
+ [

## File system setup
](#filesystem-setup)
+ [

# Architecture diagrams for databases with Amazon FSx for NetApp ONTAP
](architecture.md)
+ [

# Host setup for databases with Amazon FSx for NetApp ONTAP
](host.md)
+ [

# Installing the databases
](installation.md)

## Instances and sizing


The following rules and limitations are applicable for deploying SAP applications on AWS using IBM Db2, SAP MaxDB, SAP ASE, Oracle, and MSSQL with FSx for ONTAP.
+ Amazon EC2 instance where you plan to deploy the database and FSx for ONTAP must be in the same subnet.
+ Use separate storage virtual machines (SVM) for binarie, data, and log volumes of the database. This ensures that your I/O traffic flows through different IP addresses and TCP sessions.
+ The following file systems must have their separate FSx for ONTAP volumes. See the following tabs.  
**Example**  

------
#### [ IBM Db2 ]
  +  `/db2/<DBSID>/sapdata1` 
  +  `/db2/<DBSID>/sapdata1` 
  +  `/db2/<DBSID>/log_dir` 
  +  `/db2/<DBSID>/saptmp<x>` 
  +  `/db2/<DBSID>/log_arch` 
  +  `/usr/sap` 

------
#### [ SAP MaxDB ]
  +  `/sapdb/<SID>/sapdata` 
  +  `/sapdb/<SID>/saplog` 
  +  `/sapdb/<SID>/backup` 
  +  `/usr/sap` 

------
#### [ SAP ASE ]
  +  `/sybase/<SID>/sapdata_1` 
  +  `/sybase/<SID>/sapdata_n` 
  +  `/sybase/<SID>/saplog_1` 
  +  `/sybase/<SID>/saptmp` 
  +  `/sybase/<SID>/sapdiag` 
  +  `/sybasebackup` 
  +  `/usr/sap` 

------
#### [ Oracle ]
  +  `/oracle/<DBSID>` 
  +  `/oracle/<DBSID>/oraarch` 
  +  `/oracle/<DBSID>/saparch` 
  +  `/oracle/<DBSID>/sapreorg` 
  +  `/oracle/<DBSID>/sapbackup` 
  +  `/oracle/<DBSID>/saptrace` 
  +  `/oracle/<DBSID>/sapdata<x>` 
  +  `/oracle/<DBSID>/origlogA` 
  +  `/oracle/<DBSID>>/origlogB` 
  +  `/oracle/<DBSID>/mirrlogA` 
  +  `/oracle/<DBSID>/mirrlogB` 

------
#### [ MSSQL ]
  +  `MSSQL data` 
  +  `MSSQL log` 
  +  `MSSQL tempdb` 
  + SQL binaries (including SQL Server system databases)
  + Backup directories

------
+ FSx for ONTAP creates endpoints for accessing your file system in a Amazon VPC route table. FSx for ONTAP uses your Amazon VPC main route table. We recommend configuring your file system to use all of your Amazon VPC route tables that are associated with the subnets in which your clients are located. Alternatively, you can specify one or more route tables for Amazon FSx to use when you create your file system.
+  *Oracle* – SAP with Oracle Database is supported on Amazon EC2 instances with Amazon FSx for NetApp ONTAP only using Oracle Direct NFS (dNFS) with NFSv3, NFSv4 and NFSv4.1. Kernel NFS mounted filesystems are not supported by SAP for any Oracle files, such as database files, redo logs, and control files. For more information, see [SAP Note 2358420 - Oracle Database Support for Amazon Web Services EC2](https://me.sap.com/notes/2358420) (requires SAP portal access).

## Supported instance types


See the following tabs for details.

**Example**  
FSx for ONTAP is supported for SAP applications using IBM Db2 database in a Single or Multi-Availability Zone deployment. You can use FSx for ONTAP as the primary storage solution for IBM Db2 database devices and backup volumes with supported Amazon EC2 instances.
FSx for ONTAP is supported for SAP MaxDB version 7.9.10 or higher (including liveCache) with SAP applications in a Single or Multi-Availability Zone deployment. You can use FSx for ONTAP as the primary storage solution for SAP MaxDB `data`, `log`, `binary`, and `backup` volumes with supported Amazon EC2 instances.
FSx for ONTAP is supported for SAP ASE version 16.0 for Business Suite and higher with SAP NetWeaver based applications in a Single or Multi-Availability Zone deployment. You can use FSx for ONTAP as the primary storage solution for SAP ASE `data`, `log`, `sapdiag`, `saptmp`, and `backup` volumes with supported Amazon EC2 instances.
FSx for ONTAP is supported for Oracle 19c (minimum 19.5.0) for Business Suite and higher with SAP NetWeaver based applications in a Single or Multi-Availability Zone deployment. You can use FSx for ONTAP as the primary storage solution for Oracle `data`, `log`, `binaries`, `archive`, `backup`, and other volumes volumes with supported Amazon EC2 instances.  
You can use the Quick Sizer tool from SAP to calculate the compute requirement in SAPS for a greenfield (new) Oracle deployment. It enables you to choose an instance type that meets your business requirements and is cost-efficient. You can use source system utilisation and workload patterns, such as SAP EarlyWatch alert reports, source system specification: CPU\$1 memory and source system SAPS rating for migrations.
FSx for ONTAP is supported for SAP applications using MSSQL database in a Single or Multi-Availability Zone deployment. You can use FSx for ONTAP as the primary storage solution for MSSQL `data`, `log`, `tempdb`, `SQL binaries`, and `backup` volumes with supported Amazon EC2 instances.

For a complete list of supported Amazon EC2 instances for the databases, see [SAP Note 1656099 - SAP Applications on Amazon EC2: Supported DB/OS and Amazon EC2 products](https://me.sap.com/notes/1656099) (requires SAP portal access).

## Sizing


A single FSx for ONTAP file system can provide a maximum output of 80,000 IOPS. Select multiple FSx for ONTAP file systems if your I/O requirement exceeds 80,000 IOPS.

You can configure the throughput capacity of FSx for ONTAP when you create a new file system by scaling up to 4 GB/s of read throughput and 1000 MB/s of write throughput in a single Availability Zone deployment. In a multi-Availability Zone deployment, you can create a file system by scaling up to 4 GB/s of read throughput and 1800 MB/s of write throughput. For more information, see [Performance details](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/performance.html#performance-details-fsxw).

 ** *Oracle* ** 

You can calculate the IOPS required by your database by querying the system tables over a period of time and selecting the highest value. You can get this information from the GV\$1SYSSTAT dynamic performance view from Oracle. This view is continuously updated while the database is open and in use. IOPS requirements can also be validated through Oracle Enterprise Manager and Automatic Workload Repository reports which use these views to gather data. For more information, see [Estimating IOPS for an existing database](https://docs.aws.amazon.com/whitepapers/latest/determining-iops-needs-oracle-db-on-aws/estimating-iops-for-an-existing-database.html).

 ** *MSSQL* ** 

For migrating your existing SAP applications based on SQL Server to AWS, use Windows Performance Monitor to get information about IOPS and throughput required for FSx for ONTAP file system. To open Windows Performance Monitor, run `perfmon` at command prompt. IOPS and throughput data is provided by the following performance counters:
+ Peak Disk reads/sec \$1 Peak disk writes/sec = IOPS
+ Peak Disk read bytes/sec \$1 Peak disk write bytes/sec = throughput

We also recommend that you get the IOPS and throughput data over a typical workload cycle to get a good estimate for your requirements. Ensure that the FSx for ONTAP file system you provision for SQL server supports these I/O and throughput requirements.

For sizing your SAP on SQL environment, you can use:
+ SAP Quick Sizer (for new implementations)
+ SAP Early Watch Alerts reports

Running MSSQL with FSx for ONTAP file system separates compute and storage. Therefore, SQL server running on smaller EC2 instances connected to FSx for ONTAP can perform the same as SQL server running on a much larger EC2 instance. A smaller instance can also lower the total cost of ownership for your SAP landscape on AWS. For standard database workloads, you can run memory optimized instance classes, such as `r6i`, `r6in`, `r6a`, `r7i`, and `r7a`. For a complete list of supported instances, see [Amazon EC2 instance types for SAP on AWS](https://docs.aws.amazon.com/sap/latest/general/ec2-instance-types-sap.html).

## Create storage virtual machines (SVM)


You get one SVM per FSx for ONTAP file system by default. You can create additional SVMs at any time. We recommend a separate SVM for each volume. You don’t need to join your file system to Active Directory for the database. For more information, see [Managing FSx for ONTAP storage virtual machines](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html).

## Volume configuration and layout


Before you create an FSx for ONTAP file system, determine the total storage space you need for your system. You can increase the storage size later. To decrease the storage size, you must create a new file system.

The storage capacity of your file system should align with the needs of your database’s system volumes. You must also consider the capacity required for snapshots, if applicable.

The following lists the example volume layout for databases.


**IBM Db2**  

|  |  |  | 
| --- |--- |--- |
|   **Volume name**   |   **Junction name**   |   **Linux mount points**   | 
|  <SID>-usrsap  |  /<SID>-usrsap  |  /usr/sap  | 
|  <SID>-sapmnt  |  /<SID>-sapmnt  |  /sapmnt  | 
|  <DBSID>-db2dbsid  |  /<DBSID>-db2dbsid  |  /db2/db2<db2sid>  | 
|  <DBSID>-dbpath  |  /<DBSID>-dbpath  |  /db2/<DBSID>  | 
|  <DBSID>-sapdata1  |  /<DBSID>-sapdata1  |  /db2/<DBSID>/sapdata1  | 
|  <DBSID>-sapdata<x>  |  /<DBSID>-sapdata<x>  |  /db2/<DBSID>/sapdata<x>  | 
|  <DBSID>-saptmp1  |  /<DBSID>-saptmp1  |  /db2/<DBSID>/saptmp1  | 
|  <DBSID>-saptmp<x>  |  /<DBSID>-saptmp<x>  |  /db2/<DBSID>/saptmp<x>  | 
|  <DBSID>-logdir  |  /<DBSID>-logdir  |  /db2/<DBSID>/log\$1dir  | 
|  <DBSID>-logarch  |  /<DBSID>-logarch  |  /db2/<DBSID>/log\$1arch  | 
|  <DBSID>-db2dump  |  /<DBSID>-db2dump  |  /db2/<DBSID>/db2dump  | 
|  <DBSID>-backup  |  /<DBSID>-backup  |  /db2backup  | 


**SAP MaxDB**  

|  |  |  | 
| --- |--- |--- |
|   **Volume name**   |   **Junction name**   |   **Linux mount points**   | 
|  <DBSID>-sapmnt  |  <DBSID>-sapmnt  |  /sapmnt/  | 
|  <DBSID>-usrsap  |  <DBSID>-usrsap  |  /usr/sap  | 
|  <DBSID>-sapdata  |  <DBSID>-sapdata  |  /sapdb/<DBSID>/sapdata  | 
|  <DBSID>-saplog  |  <DBSID>-saplog  |  /sapdb/<DBSID>/saplog  | 
|  <DBSID>-backup  |  <DBSID>-backup  |  /sapdb/<DBSID>/backup  | 
|  <DBSID>-sapdb  |  <DBSID>-sapdb  |  /sapdb  | 


**SAP ASE**  

|  |  |  | 
| --- |--- |--- |
|   **Volume name**   |   **Junction name**   |   **Linux mount points**   | 
|  <SID>-sapmnt  |  <SID>-sapmnt  |  /sapmnt/  | 
|  <SID>-usrsap  |  <SID>-usrsap  |  /usr/sap  | 
|  <SID>-sysbase  |  <SID>-sysbase  |  /sysbase  | 
|  <SID>-sapdata\$11  |  <SID>-sapdata\$11  |  /sysbase/<SID>/sapdata\$11  | 
|  <SID>-saplog\$11  |  <SID>-saplog\$11  |  /sysbase/<SID>/saplog\$11  | 
|  <SID>-sapdiag  |  <SID>-sapdiag  |  /sysbase/<SID>/sapdiag  | 
|  <SID>-saptmp  |  <SID>-saptmp  |  /sysbase/<SID>/saptmp  | 
|  <SID>-backup  |  <SID>-backup  |  /sysbasebackup  | 


**Oracle**  

|  |  |  | 
| --- |--- |--- |
|   **Volume name**   |   **Junction name**   |   **Linux mount points**   | 
|  <DBSID>-oracle  |  /<DBSID>-oracle  |  /oracle  | 
|  <DBSID>-oracle-<DBSID>  |  /<DBSID>-oracle-<DBSID>  |  /oracle/<DBSID>  | 
|  <DBSID>-oraarch  |  /<DBSID>-oraarch  |  /oracle/<DBSID>/oraarch  | 
|  <DBSID>-saparch  |  /<DBSID>-saparch  |  /oracle/<DBSID>/saparch  | 
|  <DBSID>-sapreorg  |  /<DBSID>-sapreorg  |  /oracle/<DBSID>/sapreorg  | 
|  <DBSID>-sapbackup  |  /<DBSID>-sapbackup  |  /oracle/<DBSID>/sapbackup  | 
|  <DBSID>-saptrace  |  /<DBSID>-saptrace  |  /oracle/<DBSID>/saptrace  | 
|  <DBSID>-sapdata1  |  /<DBSID>-sapdata1  |  /oracle/<DBSID>/sapdata1  | 
|  <DBSID>-sapdata<x>  |  /<DBSID>-sapdata<x>  |  /oracle/<DBSID>/sapdata<x>  | 
|  <DBSID>-origlogA  |  /<DBSID>-origlogA  |  /oracle/<DBSID>/origlogA  | 
|  <DBSID>-origlogB  |  /<DBSID>-origlogB  |  /oracle/<DBSID>/origlogB  | 
|  <DBSID>-mirrlogB  |  /<DBSID>-mirrlogB  |  /oracle/<DBSID>/mirrlogB  | 
|  <DBSID>-mirrlogA  |  /<DBSID>-mirrlogA  |  /oracle/<DBSID>/mirrlogA  | 


**MSSQL**  

|  |  |  | 
| --- |--- |--- |
|   **Volume name**   |   **Directory**   |   **Description**   | 
|  <SID>-sapdata  |  <drive>:\$1<SAPSID>DATA0 <drive>:\$1<SAPSID>DATA1 <drive>:\$1<SAPSID>DATA<N>  |  Directory for SAP database data files  | 
|  <SID>-saplog  |  <drive>:\$1<SAPSID>log<N>  |  Directory for SAP database transaction log  | 
|  <SID>-tempdb  |  <drive>:\$1Tempdb  |  Directory for temporary database data files  | 
|  <SID>-sqldbexe  |  <drive>:\$1Program Files\$1Microsoft SQL Server  |  Directory for SQL server program files, and `master`, `msdb`, and `model` data files  | 
|  <SID>-backup  |  <drive>:\$1Backup  |  SQL server data and log backup directory  | 

It is recommended to switch on Storage Efficiency, but to keep inactive data compression disabled.

## File system setup


To create a FSx for ONTAP file system, see [Step 1: Create an Amazon FSx for NetApp ONTAP file system](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/getting-started-step1.html). For more information, see [Managing FSx for ONTAP file systems](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-file-systems.html).

After creating a FSx for ONTAP file system, you must complete additional file system setup.

**Topics**
+ [

### Set administrative password
](#admin-password)
+ [

### Sign in to the management endpoint via SSH
](#ssh)
+ [

### Set TCP max transfer size
](#tcp-transfer)
+ [

### Disable snapshots
](#disable-snapshots)
+ [

### Configuration settings for dynamically allocating storage – MSSQL
](#dynamic-storage)

### Set administrative password


If you did not create an administrative password during FSx for ONTAP file system creation, you must set an ONTAP administrative password for `fsxadmin` user.

The administrative password enables you to access the file system via SSH, the ONTAP CLI, and REST API. To use tools like NetApp SnapCenter, you must have an administrative password.

### Sign in to the management endpoint via SSH


Get the DNS name of the management endpoint from AWS console. Sign in to the management endpoint via SSH, using the `fsxadmin` user and administrative password.

```
ssh fsxadmin@management.<file-system-id>.fsx.<aws-region>.amazonaws.com Password:
```

### Set TCP max transfer size


We recommend a TCP max transfer size of 262,144 for your database systems. Elevate the privilege level to *advanced* and use the following command on each SVM.

```
set advanced
nfs modify -vserver <svm> -tcp-max-xfer-size 262144
set admin
```

### Disable snapshots


FSx for ONTAP automatically enables a snapshot policy for volumes that take hourly snapshots. The default policy offers limited value due to missing application awareness. We recommend disabling the automatic snapshots by setting the policy to none.

```
volume modify -vserver <vserver-name> -volume <volume-name> -snapshot-policy none
```

You can use SnapCenter, a backup management software offered by NetApp to automate backup and restore of your workloads. SnapCenter provides a plug-in for Oracle and MSSQL databases.

### Configuration settings for dynamically allocating storage – MSSQL


This section only applies to MSSQL database.

NetApp recommends that storage space be dynamically allocated to each volume or logical unit number as data is written, instead of allocating space upfront. The following table provides the configuration settings for dynamically allocating storage.


| Setting | Configuration | 
| --- | --- | 
|  Volume guarantee  |  None (set by default)  | 
|  LUN reservation  |  Enabled  | 
|  fractional\$1reserve  |  0% (set by default)  | 
|  snap reserve  |  0%  | 
|  Autodelete  |  volume/oldest\$1first  | 
|  Autosize  |  On  | 
|  try\$1first  |  Autogrow  | 
|  Volume tiering policy  |  Snapshot only  | 
|  Snapshot policy  |  None  | 
|  space allocation  |  Enabled  | 

# Architecture diagrams for databases with Amazon FSx for NetApp ONTAP
Architecture diagrams

See the following tabs for the architecture diagram of each database.

**Example**  
The following diagram presents the setup for IBM Db2 system with FSx for ONTAP.  

![\[SAP System on IBM Db2 database\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/images/ibmdb2fsx.png)

The following diagram presents the setup for SAP MaxDB system with FSx for ONTAP.  

![\[MAP MaxDB running on an EC2 instance in a private subnet.\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/images/maxdb.png)

The following diagram presents the setup for SAP ASE system with FSx for ONTAP.  

![\[SAP ASE on an EC2 instance in a private subnet.\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/images/ase.jpg)

The following diagram presents the setup for Oracle with FSx for ONTAP.  

![\[SAP on Oracle with FSx for ONTAP.\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/images/oracle.png)

The following diagram presents the single Availability Zone setup for MSSQL database with FSx for ONTAP.  

![\[SAP System on MSSQL single AZ\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/images/sqlsingle.png)

The following diagram presents a high availability setup for MSSQL database with FSx for ONTAP.  

![\[SAP System on MSSQL multi-AZ HA\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/images/sqlha.png)

FSx for ONTAP supports both, iSCSI and SMB protocol to be used for SQL server deployments on AWS. The iSCSI protocol works at the block level, and is expected to drive higher performance for SQL server with OLTP-type workloads than the same system configured with SMB. We recommend configuring your MSSQL on FSx for ONTAP using the iSCSI protocol.  
FSx for ONTAP file systems are set up redundant by default. Each file system has a preferred (active) and a standby (passive) file server. FSx for ONTAP file systems provide management and protocol specific endpoints for each file server either within an Availability Zone (single-AZ) or across Availability Zones (Multi-AZ). For more information, see [Availability, durability, and deployment options](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/high-availability-AZ.html).  
The SQL server FCI nodes access your FSx for ONTAP file system through elastic network interfaces (ENI). These network interfaces reside in Amazon VPC that you associate with your file system. Clients access the FSx for ONTAP file system via these ENIs (Preferred and Standby).  
As a good practice, the active SQL server FCI node should be in the same subnet as the FSx for ONTAP file system preferred subnet. This enables best throughput and low latency, avoiding unnecessary inter-Availability Zone network traffic.

# Host setup for databases with Amazon FSx for NetApp ONTAP
Host setup

This section walks you through an example host setup for deploying a database system on AWS using Amazon FSx for NetApp ONTAP as the primary storage solution.

**Topics**
+ [

## Linux kernel parameters
](#linux-parameters)
+ [

## Network File System (NFS)
](#nfs-setup)
+ [

## Create mount points
](#mount-points)
+ [

## Mount file systems
](#mount-filesystem)
+ [

# Host setup for MSSQL
](mssql.md)

## Linux kernel parameters


See the following tabs for details.

**Example**  
Use the following steps to setup the Linux kernel parameters.  

1. Create a file named `91-NetApp-DB2.conf` with the following configurations in the `/etc/sysctl.d` directory.

   ```
   net.core.rmem_max = 16777216
   net.core.wmem_max = 16777216
   net.ipv4.tcp_rmem = 4096 131072 16777216
   net.ipv4.tcp_wmem = 4096 16384 16777216
   net.core.netdev_max_backlog = 300000
   net.ipv4.tcp_slow_start_after_idle=0
   net.ipv4.tcp_no_metrics_save = 1
   net.ipv4.tcp_moderate_rcvbuf = 1
   net.ipv4.tcp_window_scaling = 1
   net.ipv4.tcp_timestamps = 1
   net.ipv4.tcp_sack = 1
   ```

1. Increase the max sessions slots for NFSv4 to 180.

   ```
   echo options nfs max_session_slots=180 > /etc/modprobe.d/nfsclient.conf
   ```

1. Set `sunrpc.tcp_slot_table_entries = 128` in `/etc/sysctl.conf`.

1. Reboot your instance for the kernel parameters and NFS settings to take effect.
Use the following steps to setup the Linux kernel parameters.  

1. Create a file named `91-NetApp-MaxDB.conf` with the following configurations in the `/etc/sysctl.d` directory.

   ```
   net.core.rmem_max = 16777216
   net.core.rmem_max = 16777216
   net.core.wmem_max = 16777216
   net.ipv4.tcp_rmem = 4096 131072 16777216
   net.ipv4.tcp_wmem = 4096 16384  16777216
   net.core.netdev_max_backlog = 300000
   net.ipv4.tcp_slow_start_after_idle=0
   net.ipv4.tcp_no_metrics_save = 1
   net.ipv4.tcp_moderate_rcvbuf = 1
   net.ipv4.tcp_window_scaling = 1
   net.ipv4.tcp_timestamps = 1
   net.ipv4.tcp_sack = 1
   ```

1. Increase the max sessions slots for NFSv4 to 180.

   ```
   echo options nfs max_session_slots=180 > /etc/modprobe.d/nfsclient.conf
   ```

1. Reboot your instance for the kernel parameters and NFS settings to take effect.
Use the following steps to setup the Linux kernel parameters.  

1. Create a file named `91-NetApp-ASE.conf` with the following configurations in the `/etc/sysctl.d` directory.

   ```
   net.core.rmem_max = 16777216
   net.core.rmem_max = 16777216
   net.core.wmem_max = 16777216
   net.ipv4.tcp_rmem = 4096 131072 16777216
   net.ipv4.tcp_wmem = 4096 16384  16777216
   net.core.netdev_max_backlog = 300000
   net.ipv4.tcp_slow_start_after_idle=0
   net.ipv4.tcp_no_metrics_save = 1
   net.ipv4.tcp_moderate_rcvbuf = 1
   net.ipv4.tcp_window_scaling = 1
   net.ipv4.tcp_timestamps = 1
   net.ipv4.tcp_sack = 1
   ```

1. Increase the max sessions slots for NFSv4 to 180.

   ```
   echo options nfs max_session_slots=180 > /etc/modprobe.d/nfsclient.conf
   ```

1. Reboot your instance for the kernel parameters and NFS settings to take effect.
Use the following steps to setup the Linux kernel parameters.  

1. Take a backup of `/etc/sysctl.conf` file by using the following command.

   ```
   sudo cp /etc/sysctl.conf /etc/sysctl.conf.bak
   ```

1. Open the `/etc/sysctl.conf` file in a text editor, add the following entries to it, and save the file.

   ```
   net.core.rmem_max = 16777216
   net.core.wmem_max = 16777216
   net.core.optmem_max = 16777216
   net.core.somaxconn = 4096
   net.core.netdev_max_backlog = 300000
   net.ipv4.tcp_tw_reuse = 1
   net.ipv4.tcp_timestamps = 1
   net.ipv4.tcp_slow_start_after_idle=0
   net.ipv4.tcp_rmem = 4096 131072 16777216
   net.ipv4.tcp_wmem = 4096 16384  16777216
   net.ipv4.tcp_max_syn_backlog = 16348
   net.ipv4.tcp_slow_start_after_idle = 0
   net.ipv4.tcp_dsack = 1
   net.ipv4.tcp_sack = 1
   net.ipv4.tcp_no_metrics_save = 1
   net.ipv4.tcp_moderate_rcvbuf = 1
   net.ipv4.tcp_window_scaling = 1
   net.ipv4.tcp_syn_retries = 8
   ```

1. Increase the max sessions slots for NFSv4 to 180.

   ```
   echo options nfs max_session_slots=180 > /etc/modprobe.d/nfsclient.conf
   ```

1. Reboot your instance for the kernel parameters and NFS settings to take effect.

## Network File System (NFS)


Network File System (NFS) version 4 and higher requires user authentication. You can authenticate with Lightweight Directory Access Protocol (LDAP) server or local user accounts.

If you are using local user accounts, the NFSv4 domain must be set to the same value on all Linux servers and SVMs. Set the following parameters in the `/etc/idmapd.conf` file on the Linux hosts.

```
Domain = <domain name>
Nobody-User = root
Nobody-Group = root
```

**Note**  
You must restart the `nfs-idmapd.service` service after making changes to the domain.

 **Oracle Direct Network File System (dNFS)** 

SAP only supports deployment of Oracle database on Amazon FSx for NetApp ONTAP using Direct NFS with NFSv3, NFSv4 and NFSv4.1.

You must setup the `oranfstab` file before enabling dNFS client control of NFS. For more details, refer [Deploying Oracle Direct NFS](https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/deploying-dnfs.html#GUID-D06079DB-8C71-4F68-A1E3-A75D7D96DCE2). On configuration completion, query the `V$DNFS_SERVERS` view to verify that the server name, NFS mount points, and NFS version shown in the output match the configuration in `oranfstab` file.

## Create mount points


See the following for details.

**Example**  
Create the following mount points on your Amazon EC2 instance.  

```
mkdir -p /sapmnt
mkdir -p /usr/sap
mkdir -p /db2/db2<dbsid>
mkdir -p /db2/<DBSID>
mkdir -p /db2/<DBSID>/sapdata1
mkdir -p /db2/<DBSID>/sapdata<x>
mkdir -p /db2/<DBSID>/saptmp1
mkdir -p /db2/<DBSID>/saptmp<x>
mkdir -p /db2/<DBSID>/db2dump
mkdir -p /db2/<DBSID>/log_dir
mkdir -p /db2/<DBSID>/log_arch
mkdir -p /db2backup
```
Create the following mount points on your Amazon EC2 instance.  

```
mkdir -p /sapmnt
mkdir -p /usr/sap
mkdir -p /sapdb/<DBSID>/sapdata
mkdir -p /sapdb/<DBSID>/saplog
mkdir -p /backup
mkdir -p /sapdb
```
Create the following mount points on your Amazon EC2 instance.  

```
mkdir -p /sapmnt
mkdir -p /usr/sap
mkdir -p /sybase
mkdir -p /sybase/<SID>/sapdata_1
mkdir -p /sybase/<SID>/saplog_1
mkdir -p /sybase/<SID>/sapdiag
mkdir -p /sybase/<SID>/saptmp
mkdir -p /sybasebackup
```
Create the following mount points on your Amazon EC2 instance.  

```
mkdir -p /oracle
mkdir -p /oracle/<DBSID>
mkdir -p /oracle/<DBSID>/sapdata1
mkdir -p /oracle/<DBSID>/sapdata2
mkdir -p /oracle/<DBSID>/sapdata3
mkdir -p /oracle/<DBSID>/sapdata4
mkdir -p /oracle/<DBSID>/origlogA
mkdir -p /oracle/<DBSID>/origlogB
mkdir -p /oracle/<DBSID>/mirrlogA
mkdir -p /oracle/<DBSID>/mirrlogB
mkdir -p /oracle/<DBSID>/sapreorg
mkdir -p /oracle/<DBSID>/saptrace
mkdir -p /oracle/<DBSID>/saparch
mkdir -p /oracle/<DBSID>/sapcheck
mkdir -p /oracle/<DBSID>/oraarch
mkdir -p /oracle/<DBSID>/sapbackup
```

## Mount file systems


The created file systems must be mounted as NFS file systems on Amazon EC2. See the following for details.

The following table is an example recommendation of NFS options for different IBM Db2 file systems.

**Example**  

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/host.html)
 **Example**   
Add the following lines to `/etc/fstab` to preserve mounted file systems during an instance reboot. You can then run `mount -a` to mount the NFS file systems.  

```
<SVM NFSIP>:/<SID>-sapmnt /sapmnt nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<SID>-usrsap /usr/sap nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-db2dbsid /db2/db2<dbsid> nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-dbpath /db2/<DBSID> nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-sapdata1 /db2/<DBSID>/sapdata1 nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=8
<SVM NFSIP>:/<DBSID>-sapdata<x> /db2/<DBSID>/sapdata<x> nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=8
<SVM NFSIP>:/<DBSID>-saptmp1 /db2/<DBSID>/saptmp1 nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-saptmp<x> /db2/<DBSID>/saptmp<x> nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-logdir /db2/<DBSID>/log_dir nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-logarch /db2/<DBSID>/log_arch nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-db2dump /db2/<DBSID>/db2dump nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFSIP>:/<DBSID>-backup /db2backup nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
```
The following table is an example recommendation of NFS options for different SAP MaxDB file systems.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/host.html)
 **Example**   
Add the following lines to `/etc/fstab` to preserve mounted file systems during an instance reboot. You can then run `mount -a` to mount the NFS file systems.  

```
<BackupSVM NFSIP>:/<DBSID>_sapmnt /sapmnt nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<BackupSVM NFSIP>:/<DBSID>_usrsap /usr/sap nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<BackupSVM NFSIP>:/<DBSID>_backup /backup nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SAPLOGSVM NFSIP>:/<DBSID>_sapdb /sapdb nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SAPLOGSVM NFSIP>:/<DBSID>_log /sapdb/<DBSID>/saplog nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SAPLOGSVM NFSIP>:/<DBSID>_sapdata /sapdb/<DBSID>/sapdata nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=8
```
The following table is an example recommendation of NFS options for different SAP ASE file systems.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/host.html)
 **Example**   
Add the following lines to `/etc/fstab` to preserve mounted file systems during an instance reboot. You can then run `mount -a` to mount the NFS file systems.  

```
<SVM-ASEDBData NFSIP>:/<SID>-sapdata_1 /sybase/<SID>/sapdata_1 nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=8
<SVM-ASEDBLog NFSIP>:/<SID>-saplog_1 /sybase/<SID>/saplog_1 nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM-ASEDBShared NFSIP>:/<SID>-sapmnt /sapmnt nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM-ASEDBShared NFSIP>:/<SID>-usrsap /usr/sap nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM-ASEDBShared NFSIP>:/<SID>-sybase /sybase nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM-ASEDBShared NFSIP>:/<SID>-sapdiag /sybase/<SID>/sapdiag nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM-ASEDBShared NFSIP>:/<SID>-saptmp /sybase/<SID>/saptmp nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM-ASEDBBackup NFSIP>:/<SID>-backup /sybasebackup nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
```
You must assign a virtual hostname to each SVM NFS IP address in `/etc/hosts` file. These hostnames are used in the `oranfstab` file for values of the NFS server `(server: )` during Oracle dNFS configuration.  
The following table is an example recommendation of NFS options for different SAP Oracle file systems.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/sap/latest/sap-AnyDB/host.html)
 **Example**   
Add the following lines to `/etc/fstab` to preserve mounted file systems during an instance reboot. You can then run `mount -a` to mount the NFS file systems.  

```
<SVM NFS Host>:/<DBSID>-oracle /oracle nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-oracle<DBSID> /oracle/<DBSID> nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-oraarch /oracle/<DBSID>/oraarch nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-saparch /oracle/<DBSID>/saparch nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-sapreorg /oracle/<DBSID>/sapreorg nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-sapbackup /oracle/<DBSID>/sapbackup nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-saptrace /oracle/<DBSID>/saptrace nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-sapdata1 /oracle/<DBSID>/sapdata1 nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=8
<SVM NFS Host>:/<DBSID>-sapdata2 /oracle/<DBSID>/sapdata<x> nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=8
<SVM NFS Host>:/<DBSID>-origlogA /oracle/<DBSID>/origlogA nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-origlogB /oracle/<DBSID>/origlogB nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-mirrlogB /oracle/<DBSID>/mirrlogB nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
<SVM NFS Host>:/<DBSID>-mirrlogA /oracle/<DBSID>/mirrlogA nfs rw,bg,hard,timeo=600,noatime,vers=4,minorversion=1,lock,rsize=262144,wsize=262144,nconnect=2
```
<SVM NFS Host> are the values that you have assigned in the `/etc/hosts` file for each SVM NFS IP address.  
+ Changes to the `nconnect` parameter take effect only if the NFS file system is unmounted and mounted again.
+ Client systems must have unique host names when accessing FSx for ONTAP. If there are systems with the same name, the second system may not be able to access FSx for ONTAP.
+ For RHEL operating system, the `nconnect` parameter is supported only on RHEL 8.3 or higher.

# Host setup for MSSQL


Use the following procedure to create volumes and LUNs for MSSQL server.

1. Connect to your FSx for ONTAP system using SSH. For more information, see [Managing FSx for ONTAP resources using NetApp applications](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-resources-ontap-apps.html).

1. Use the following SSH command to create the required volumes:

   ```
   vol create -vserver <SvmName> -volume <VolumeName> -aggregate aggr1 -size <VolumeSize> -state online -tiering-policy snapshot-only -percent-snapshot-space 0 -autosize-mode grow -snapshot-policy none -security-style ntfs
   volume modify -vserver <SvmName> -volume <VolumeName> -fractional-reserve 0
   volume modify -vserver <SvmName> -volume <VolumeName> -space-mgmt-try-first vol_grow
   volume snapshot autodelete modify -vserver <SvmName> -volume <VolumeName> -delete-order oldest_first
   ```

1. Start the `iSCSI` service with PowerShell using elevated privileges in Windows servers, and set the startup type to *Automatic*.

   ```
   Start-service -Name msiscsi
   Set-Service -Name msiscsi -StartupType Automatic
   ```

1. Install Multipath-IO with PowerShell using elevated privileges in Windows servers.

   ```
   Install-WindowsFeature -name Multipath-IO -Restart
   ```

1. Find the Windows initiator name with PowerShell using elevated privileges in Windows servers.

   ```
   Get-InitiatorPort | select NodeAddress
   ```

1. Connect to Storage virtual machines (SVM) using putty, and create an `iGroup`.

   ```
   igroup create -igroup <iGroupName> -protocol iscsi -ostype windows -initiator <InitiatorName>
   ```

1. Use the following SSH command to create LUNs inside each volume. To achieve I/O alignment with the operating system partitioning scheme, use `windows_2008` as the recommended LUN type.

   ```
   lun create -path /vol/<VolumeName>/<LUNName> -size <LUNSize> -ostype windows_2008 -space-allocation enabled
   ```

1. Use the following SSH command to map the `igroup` to the LUNs that you just created:

   ```
   lun show
   lun map -path <LUNPath> -igroup <iGroupName>
   ```

1. Get the iSCSI endpoint IP addresses (preferred subnet and standby subnet) from the FSx for ONTAP console. Choose your SVM on the Storage Virtual Machines page.

   The iSCSI endpoint IP addresses are used as iSCSI targets in the next step. For more information, see [Provisioning iSCSI for Windows](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/mount-iscsi-windows.html). .. On the Windows server, go to iSCSI initiator settings, and connect to your iSCSI targets (FSx for ONTAP iSCSI endpoints). Go to **Discovery** > **Discover Portal**. Enter the iSCSI IP address from previous step, and select **Advanced**. From Local Adapter, select **Microsoft iSCSI Initiator**. From Initiator IP, select **IP of the server**. .. From iSCSI Initiator Settings, select **Targets** and choose **Connect** and **Enable muti-path**. .. For best performance, add more sessions. NetApp recommends creating five iSCSI sessions. Select **Properties** > **Add session** > **Advanced**, and repeat the previous step. For further details, see [SQL Server on Amazon EC2 using Amazon FSx for NetApp ONTAP](https://docs.netapp.com/us-en/netapp-solutions/databases/sql-aws-ec2.html#introduction).

1. Initialize disks with the following PowerShell command:

   ```
   $disks = Get-Disk | where PartitionStyle -eq raw
   foreach ($disk in $disks) {Initialize-Disk $disk.Number}
   ```

1. Run the partition and format commands with PowerShell.

   ```
   New-Partition -DiskNumber 1 -DriveLetter F -UseMaximumSize
   Format-Volume -DriveLetter F -FileSystem NTFS -AllocationUnitSize 65536
   ```

LUNs can also be created using SnapCenter.

You can also automate volume and LUN creation using the PowerShell script provided in the Appendix B of [SQL Server on Amazon EC2 using Amazon FSx for NetApp ONTAP](https://docs.netapp.com/us-en/netapp-solutions/databases/sql-aws-ec2.html#introduction).

# Installing the databases


See the following tabs for more information.

**Example**  
You must install the IBM Db2 system as per the instructions provided by SAP. For more information, see [Installation of SAP Systems Based on the Application Server ABAP of SAP NetWeaver 7.3 EHP1 to 7.52 on UNIX: IBM Db2 for Linux, UNIX, and Windows](https://help.sap.com/doc/4f95f7ac741a1014956dd879c2537334/CURRENT_VERSION/en-US/db6_inst_71x_unix_abap.pdf).
You must install the SAP MaxDB as per the instructions provided by SAP. For more information, see [Installation of SAP Systems Based on the Application Server ABAP of SAP NetWeaver 7.3 EHP1 to 7.52 on UNIX: SAP MaxDB](https://help.sap.com/doc/4f96bbba741a101490e5e2c6b8cdf8a6/CURRENT_VERSION/en-US/NW7XX_Inst_Max_UX_ABAP.pdf).  
 **Backup and restore**   
Backup and restore operations are supported by standard SAP MaxDB tools. For more information, see [SAP Note 1928060 - Data backup and recovery with file system backup](https://me.sap.com/notes/1928060)(requires access to the SAP portal).
You must install the SAP ASE as per the instructions provided by SAP. You can select the relevant guide from the [Guide Finder for SAP NetWeaver and ABAP Platform](https://help.sap.com/docs/SAP_NETWEAVER/9e41ead9f54e44c1ae1a1094b0f80712/576f5c1808de4d1abecbd6e503c9ba42.html?language=en-US) on SAP website.  
 **Backup and restore**   
FSx for ONTAP snapshot is a read-only image of an FSx for ONTAP volume at a point-in-time. Snapshots offer protection against accidental deletion or modification of files in your volumes. Your users can easily view and/or restore individual files or folders from an earlier snapshot. For more information, see [Working with snapshots](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/snapshots-ontap.html).  
Backup and restore operations are also supported by standard SAP ASE tools. You can check the following SAP Notes (requires SAP portal access) to learn more.  
+  [SAP Note 1585981 - SYB: Ensuring Recoverability for SAP ASE](https://me.sap.com/notes/1585981) 
+  [SAP Note 1588316 - SYB: Configure automatic database and log backups](https://me.sap.com/notes/1588316) 
+  [SAP Note 1618817 - SYB: How to restore an SAP ASE database server (UNIX)](https://me.sap.com/notes/1618817) 
+  [SAP Note 1887068 - SYB: Using external backup and restore with SAP ASE](https://me.sap.com/notes/1887068) 
You must install the Oracle database as per the instructions provided by SAP. You can select the relevant guide from the [Guide Finder for SAP NetWeaver and ABAP Platform](https://help.sap.com/docs/SAP_NETWEAVER/9e41ead9f54e44c1ae1a1094b0f80712/576f5c1808de4d1abecbd6e503c9ba42.html?language=en-US) on SAP website.  
 **Backup and restore**   
FSx for ONTAP snapshot is a read-only image of an FSx for ONTAP volume at a point-in-time. Snapshots offer protection against accidental deletion or modification of files in your volumes. Your users can easily view and/or restore individual files or folders from an earlier snapshot. For more information, see [Working with snapshots](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/snapshots-ontap.html).  
You can also use the plug-in for Oracle database offered by NetApp SnapCenter. The plug-in takes application-consistent backups using NetApp snapshots and Oracle Recovery Manager.  
Backup and restore operations are also supported by standard Oracle database for SAP tools, such as BRTools. You can check the following resources from SAP and Oracle to learn more.  
+  [SAP Database Guide: Oracle](https://help.sap.com/doc/f63a5adfa5de4d4b8ddf7c5bf7d41c06/129/en-US/0b5daf09b03344ad97338f838e09b9ee.pdf) 
+  [Oracle Database Backup To Cloud: Amazon Simple Storage Service (S3)](https://www.oracle.com/technetwork/database/features/availability/twp-oracledbcloudbackup-130129.pdf) 
+  [SAP Note 2358420 - Oracle Database Support for Amazon Web Services EC2](https://me.sap.com/notes/2358420) (requires SAP portal access)
+  [SAP Note 1656250 - SAP on AWS: Support prerequisites](https://me.sap.com/notes/1656250) (requires SAP portal access)
You must install the MSSQL database as per the instructions provided by SAP. You can select the relevant guide from the [Guide Finder for SAP NetWeaver and ABAP Platform](https://help.sap.com/docs/SAP_NETWEAVER/9e41ead9f54e44c1ae1a1094b0f80712/576f5c1808de4d1abecbd6e503c9ba42.html?language=en-US) on SAP website.  
 **Backup and restore**   
FSx for ONTAP snapshot is a read-only image of an FSx for ONTAP volume at a point-in-time. Snapshots offer protection against accidental deletion or modification of files in your volumes. Your users can easily view and/or restore individual files or folders from an earlier snapshot. For more information, see [Working with snapshots](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/snapshots-ontap.html).  
Backup and restore operations are also supported by standard SQL server tools. For further details, see [Back Up and Restore of SQL Server Databases](https://learn.microsoft.com/en-us/sql/relational-databases/backup-restore/back-up-and-restore-of-sql-server-databases?view=sql-server-ver16).  
For point-in-time resilient restores and immutable backups, we storing 3 days of snapshots on a local disk, and replicating older backups via SnapVault. Replicate older backups to a secondary (different Availability Zone) FSx for ONTAP filesystem with capacity pool enabled. For more information, see [Managing storage capacity](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-storage-capacity.html).