This paper includes the following sections:
Purpose and Scope
Caché, the post-relational database from InterSystems, has the features professional developers need to quickly create Web and client/server applications. Caché benefits developers by giving them their choice of development tools, programming languages, and methods of data access. Caché benefits transaction processing applications by providing outstanding performance, massive scalability, real-time data analytics, and robust reliability. All these capabilities are tied together in an easy-to-use rapid development environment.
Network Appliance, Inc., (NetApp) manufactures high-performance multiprotocol file servers (or filers) and caching appliances for UNIX (NFS), Windows (CIFS), and Web (HTTP) environments. Since OpenVMS works on DECNET and not IP, there is no OpenVMS support.
The Network Appliance technical report, Multiprotocol Data Access: NFS, CIFS, and HTTP, describes the NetApp multiprotocol filer architecture and explores the implications of multiprotocol filing for system administrators and end users.
This document describes the steps necessary to implement Caché on Windows and UNIX-based operating systems with database data and log files located on a NetApp filer running Data ONTAP(tm) version 5.3.6x and higher.
Assumptions
This paper assumes you are familiar with Caché and the operation of NetApp filers. It also assumes you are familiar with the operation of your specific operating system. These configurations were tested using Caché version 5.0, running on Windows 2000 (SP4) and various UNIX-based platforms listed in the UNIX section. The filer was running Data ONTAP version 5.3.6R2.
Within the context of Caché, everything you do with a database on a filer is the same as what you would do to a database stored on a local disk. To create a new database on the filer, create it in the NetApp mount directory.
Integration on Windows 2000
Integration of a NetApp filer with Caché on Windows 2000 has certain infrastructure requirements and configuration recommendations to provide optimal performance and reliability.
Infrastructure
The following are the infrastructure requirements to integrate Caché with a NetApp filer on Windows 2000.
Caché Machine:
NetApp Filer:
Network:
Make sure there are enough disks (HDs), to allow striping, partitioning, and load balancing algorithms to work properly.
Configuration Recommendations
Recommended configuration settings and integration techniques used to implement a successful Caché/NetApp Filer configuration are described in the following sections:
For better performance and a more reliable system environment there are several recommended options and configurations. Most of these options are set on both the filer and on the Windows platform. They are described in the following Recommended Configuration Options table.
Recommended Configuration Options
Option Description On Filer On Windows
MaxMpxCt The maximum of outstanding requests the NT client can have against the filer. Yes Yes
TCPWindow The maximum transfer size for data across the network. Yes Yes
minra Minimal filer read ahead. Yes No
no_atime_update Setting this option can improve CPU usage if accurate times are not important. Yes No
security The security style is the method the filer uses to determine whether a user has access to a file. CIFS qtree should use ntfs security style. Yes No
Filer Configuration
On the NetApp filer, set the following options.
CIFS options:
General options:
Qtrees:
qtree security qtreename ntfs — The qtree security command changes the security style for files and directories. When using the ntfs security style for CIFS requests, Windows NT permissions determine user access.
This is the recommended setting. See the na_qtree manual page for more information.
Windows Registry Settings
On Windows 2000, InterSystems recommends you make the following modifications:
Set the following registry keys by running REGEDT32.EXE.
Go to the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services key and then make the described entries:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
LanmanServer\parameters\MaxMpxCt
Datatype: DWORD
Value: To match the setting above for cifs.max_mpx
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Tcpip\Parameters\TcpWindowSize
Datatype: DWORD
Value: 64240 (0xFAF0)
    ----> Global setting for all interfaces <---  
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
\Tcpip\Parameters\Interfaces\interface\TcpWindowSize
Datatype: DWORD
Value: 64240 (0xFAF0)
   Adapter Setting:
 ---> setting per interface <---   
Filer CIFS Share
Create a share on the filer with security set to “Everyone Full Control”. For information about how to create a share on a filer, consult the Data ONTAP Software Systems Administration guide that accompanied your system.
Windows and Caché Configuration
The following configuration procedures ensure a proper setup of Caché with a NetApp filer:
Note:
A useful test to check if the connection is configured correctly is to remotely telnet to Caché and open a file on the drive mapped to NetApp. For example, input Open "F:\B.TXT":"NWS", where F: is your mapped drive and B.TXT is an arbitrary file. If you return to the Caché prompt, the connection is configured properly; if the session hangs indefinitely, it is not.
Integration on UNIX-Based Platforms
Integration of a NetApp filer with Caché on UNIX-based platforms has certain infrastructure requirements and configuration recommendations to provide optimal performance and reliability.
Infrastructure
The following are the infrastructure requirements to integrate Caché with a NetApp filer on UNIX-based platforms:
Caché Machine:
NetApp Filer:
Network:
Make sure there are enough disks (HDs), to allow striping, partitioning, and load balancing algorithms to work properly.
Configuration Recommendations
Recommended configuration settings and integration techniques used to implement a successful Caché/NetApp Filer configuration on UNIX-based platforms are described in this section.
Mount options:
TCP protocol:
Where possible, specify TCP protocol, for example:
proto=tcp
Security style:
Use the unix security style for the NFS qtree. The following example sets the security style of the root volume:
qtree security / unix
Security style means the method the filer uses to determine whether a user has access to a file. When the unix security style is used, the user's UID and GID, and the UNIX-style permission bits of the file or directory determine user access. This is the recommended setting. See the na_qtree manual page for more information.
The above options are recommended for high-speed connections.
Contact Network Appliance for a list of recommended kernel patches for your operating system.
NVRAM Reporting
Network Appliance recommends enabling the feature of Data ONTAP (NetApp's operating system software) which supports special error processing when connected to a database server. To do this, enter the following command from the filer's console or a telnet session:
vol options vol0 nvfail on
This causes the filer to issue appropriate error messages in the \\FILER1\C$\etc\messages file in the case of system failure that might affect the Caché database. The administrator learns of these errors either by examining the message logs or by the auto-support email notification feature of the filer.
In particular, this option enables some additional status checking when the filer goes through its initialization sequence at boot time to verify that the NVRAM (non-volatile random access memory) is in a valid state. This is the case for both a clean (normal) shutdown or a dirty (crash, power failure, etc.) outage. Only a failure of the NVRAM card itself should cause it to become invalid. If the contents of NVRAM are found to be invalid, an error message is sent to the system console and to the filer log file. At that point, the Caché system administrator ensures that the state of the database is correct and valid.
Competitive database products may recommend using the optional rename feature. However, to ensure the proper functioning of Caché and the handling of its database, journal, and log files, InterSystems recommends using the Caché built-in “Freeze on Error” feature instead. From the Advanced tab of the Caché Configuration Manager, expand the Miscellaneous branch and set the Freeze System on Journal I/O Error setting to Yes.
Support
InterSystems and Network Appliance support the specific configurations described in this document. If you experience any problems implementing the techniques described in this technical paper, please contact the InterSystems Worldwide Response Center (WRC) or a Network Appliance Technical Marketing Engineer.