Operating system configuration overview

This topic provides a high-level overview of the OS settings required for Vertica.

This topic provides a high-level overview of the OS settings required for Vertica. Each item provides a link to additional details about the setting and detailed steps on making the configuration change. The installer tests for all of these settings and provides hints, warnings, and failures if the current configuration does not meet Vertica requirements.

Before you install the operating system

The below sections detail system settings that must be configured when you install the operating system. These settings cannot be easily changed after the operating system is installed.

Configuration Description
Supported Platforms

Verify that your servers meet the platform requirements described in Supported Platforms. Unsupported operating systems are detected by the installer.

The installer generates one of the following issue identifiers if it detects an unsupported operating system:

  • [S0320] - Fedora OS is not supported.

  • [S0321] - The version of Red Hat/CentOS is not supported.

  • [S0322] - The version of Ubuntu/Debian is not supported.

  • [S0323] - The operating system could not be determined. The unknown operating system is not supported because it does not match the list of supported operating systems.

  • [S0324] - The version of Red Hat is not supported.

LVM Vertica Analytic Database supports Linux Volume Manager (LVM) on all supported operating systems. For information on LVM requirements and restrictions, see the section, Vertica Support for LVM.
File system

Choose the storage format type based on deployment requirements. Vertica recommends the following storage format types where applicable:

  • ext3

  • ext4

  • NFS for backup

  • XFS

  • Amazon S3 Standard, Azure Blob Storage, or Google Cloud Storage for communal storage and related backup tasks when running in Eon Mode

The storage format type at your backup and temporary directory locations must support fcntl lockf (POSIX) file locking.

Swap Space

A 2GB swap partition is required, regardless of the amount of RAM installed on your system. Larger swap space is acceptable, but unnecessary. Partition the remaining disk space in a single partition under "/". If you do not have the required 2GB swap partition, the installer reports this issue with identifier S0180.

You typically define the swap partition when you install Linux. See your platform’s documentation for details on configuring the swap partition.

Disk Block Size The disk block size for the Vertica data and catalog directories should be 4096 bytes, the default on ext4 and XFS file systems. You set the disk block size when you format your file system. If you change the block size, you will need to reformat the disk.
Memory

Vertica requires that your hosts have a minimum of 1GB of RAM per logical processor. If your hosts do not meet this requirement, the installer reports this issue with the identifier S0190. For performance reasons, you typically require more RAM than the minimum.

In addition to the individual host RAM requirement, the installer also reports a hint if the hosts in your cluster do not have identical amounts of RAM. Ensuring your host have the same amount of RAM helps prevent performance issues if one or more nodes has less RAM than the other nodes in your database.

For more information on sizing your hardware, see the Vertica Knowledge Base Hardware documents.

Automatically configured operating system settings

These general OS settings are automatically made by the installer if they do not meet Vertica requirements. You can prevent the installer from automatically making these configuration changes by using the --no-system-configuration parameter for the install_vertica script.

For more information on each configuration setting, see Automatically configured operating system settings.

Configuration Description
Nice Limits The database administration user must be able to nice processes back to the default level of 0.
min_free_kbytes The vm.min_free_kbytes setting in /etc/sysctl.conf must be configured sufficiently high. The specific value depends on your hardware configuration.
User Open Files Limit The open file limit for the dbadmin user should be at least 1 file open per MB of RAM, 65536, or the amount of RAM in MB; whichever is greater.
System Open File Limits The maximum number of files open on the system must not be less than at least the amount of memory in MB, but not less than 65536.
Pam Limits

/etc/pam.d/su must contain the line:
session required pam_limits.so

This allows for the conveying of limits to commands run with the su - command.

Address Space Limits The address space limits (as setting) defined in /etc/security/limits.conf must be unlimited for the database administrator.
File Size Limits The file sizelimits (fsize setting) defined in /etc/security/limits.conf must be unlimited for the database administrator.
User Process Limits The nproc setting defined in /etc/security/limits.conf must be 1024 or the amount of memory in MB, whichever is greater.
Maximum Memory Maps The vm.max_map_count in /etc/sysctl.conf must be 65536 or the amount of memory in KB / 16, whichever is greater.

Manually configured operating system settings

For more information on each configuration setting, see Manually configured operating system settings.

Configuration Description
Disk Readahead This disk readahead must be at least 2048, with a high of 8192. Set this high limit only with the help of Vertica support. The specific value depends on your hardware configuration.
NTP Services The NTP daemon must be enabled and running, with the exception of Red Hat 7 and CentOS 7 systems.
chrony For Red Hat 7 and CentOS 7 systems, chrony must be enabled and running.
SELinux SElinux must be disabled or run in permissive mode.
CPU Frequency Scaling

Vertica recommends that you disable CPU Frequency Scaling.

Transparent Hugepages

For Red Hat and CentOS, Transparent Hugepages must be set to always.

For all other operating systems, Transparent Hugepages must be disabled or set to madvise.

I/O Scheduler The I/O Scheduler for disks used by Vertica must be set to deadline or noop.
Support Tools Several optional packages can be installed to assist Vertica support when troubleshooting your system.

System user requirements

The following tasks pertain to the configuration of the system user required by Vertica.

For more information on each configuration setting, see System user configuration.

Configuration Required Setting(s)
System User Requirements The installer automatically creates a user with the correct settings. If you specify a user with --dba-user, then the user must conform to the requirements for the Vertica system user.
LANG Environment Settings The LANG environment variable must be set and valid for the database administration user.
TZ Environment Settings The TZ environment variable must be set and valid for the database administration user.