This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Install Vertica with the installation script

You can run the installation script after you install the Vertica package.

You can run the installation script after you install the Vertica package. The installation script runs on a single node, using a Bash shell. The script copies the Vertica package to all other hosts (identified by the --hosts argument) in your planned cluster.

The installation script runs several tests on each of the target hosts to verify that the hosts meet system and performance requirements for a Vertica node. The installation script modifies some operating system configuration settings to meet these requirements. Other settings cannot be modified by the installation script and must be manually reconfigured. For details on operating system configuration settings, see Manually configured operating system settings and Automatically configured operating system settings.

1 - Install on a FIPS 140-2 enabled machine

Vertica supports the implementation of the Federal Information Processing Standard 140-2 (FIPS).

Vertica supports the implementation of the Federal Information Processing Standard 140-2 (FIPS). You enable FIPS mode in the operating system.

During installation, the install_vertica script detects whether the host is operating in FIPS mode. The installer searches for the file /proc/sys/crypto/fips_enabled and examines its content. If the file exists and contains a '1' in the filename, the host is operating in FIPS mode and the following message appears:

/proc/sys/crypto/fips_enabled exists and contains '1', this is a FIPS system

To implement FIPS 140-2 on your Vertica Analytic Database, you need to configure both the server and the client you are using. To see the detailed configuration steps, go to Implementing FIPS 140-2.

On some non-FIPS systems, versioning anomalies can occur when you install a new version of OpenSSL. Sometimes, the default OpenSSL build procedure produces libraries with versions named 1.0.0. For Vertica to recognize that a library has a higher version number, the library name with a higher version number must be provided. As part of the Vertica installation, symbolic links are created to the appropriate OpenSSL files. The steps are as follows:

  1. The RPM installer places two OpenSSL library files in /opt/vertica/lib:

    • libssl.so.1.1

    • libcrypto.so.1.1

  2. The install_vertica script creates two symbolic links in /opt/vertica/lib:

    • libssl.so

    • libcrypto.so

  3. The symbolic links point to libssl.so.1.1 and libcrypto.so.1.1, which the RPM installer placed in /opt/vertica/lib.

2 - Specifying disk storage location during installation

You can specify the disk storage location when you:.

You can specify the disk storage location when you:

Specifying disk storage location when you install

When you install Vertica, the --data-dir parameter in the install_vertica script lets you specify a directory to contain database data and catalog files. The script defaults to the database administrator's default home directory /home/dbadmin.

Requirements

  • The data and catalog directory must exist on each node in the cluster.

  • The directory on each node must be owned by the database administrator

  • Catalog and data path names must contain only alphanumeric characters and cannot have leading space characters. Failure to comply with these restrictions will result in database creation failure.

  • Vertica refuses to overwrite a directory if it appears to be in use by another database. Therefore, if you created a database for evaluation purposes, dropped the database, and want to reuse the database name, make sure that the disk storage location previously used has been completely cleaned up. See Managing storage locations for details.

3 - Perform a basic install

For all installation options, see [%=Vertica.INSTALL_SCRIPT%] Options.

For all installation options, see install_vertica options.

  1. As root (or sudo) run the install script. The script must be run by a BASH shell as root or as a user with sudo privileges. You can configure many options when running the install script. See Basic Installation Parameters for the required options.

    If the installer fails due to any requirements not being met, you can correct the issue and then rerun the installer with the same command line options.

    To perform a basic installation:

    • As root:

      # /opt/vertica/sbin/install_vertica --hosts host_list --rpm package_name\
            --dba-user dba_username --parallel-no-prompts
      
    • Using sudo:

      $ sudo /opt/vertica/sbin/install_vertica --hosts host_list --rpm package_name \
            --dba-user dba_username --parallel-no-prompts
      
  2. When prompted for a password to log into the other nodes, provide the requested password. Doing so allows the installation of the package and system configuration on the other cluster nodes.

    • If you are root, this is the root password.

    • If you are using sudo, this is the sudo user password.

    The password does not echo on the command line. For example:

    Vertica Database 24.2.x Installation Tool
    Please enter password for root@host01:password
    
  3. If the dbadmin user, or the user specified in the argument --dba-user, does not exist, then the install script prompts for the password for the user. Provide the password. For example:

    Enter password for new UNIX user dbadmin:password
    Retype new UNIX password for user dbadmin:password
    
  4. Carefully examine any warnings or failures returned by install_vertica and correct the problems.

    For example, insufficient RAM, insufficient network throughput, and too high readahead settings on the file system could cause performance problems later on. Additionally, LANG warnings, if not resolved, can cause database startup to fail and issues with VSQL. The system LANG attributes must be UTF-8 compatible. After you fix the problems, rerun the install script.

  5. When installation is successful, disconnect from the Administration host, as instructed by the script. Then, complete the required post-installation steps.

    At this point, root privileges are no longer needed and the database administrator can perform any remaining steps.

4 - install_vertica options

The following tables describe script options.

The following tables describe install_vertica script options. Most options have long and short forms—for example, --hosts and -s.

Required

install_vertica requires the following options:

  • --hosts / -s

  • --rpm / -r | --deb | --no-rpm-copy

  • --dba-user username | -u username

    Required only if installing using root or upgrading versions.

For example:

 # /opt/vertica/sbin/install_vertica --hosts node0001,node0002,node0003 --rpm /tmp/vertica-version.RHEL8.x86_64.rpm
--hosts hostlist -s hostlist
Comma-separated list of host names or IP addresses to include in the cluster. The list must not include embedded spaces. For example:
  • --hosts node01,node02,node03

  • --hosts 192.168.233.101,192.168.233.102,192.168.233.103

  • --hosts fd95:ff5d:5549:bdb0::1,fd95:ff5d:5549:bdb0::2,fd95:ff5d:5549:bdb0::3

The following requirements apply:

  • If upgrading an existing installation of Vertica, use the same host names used previously.

  • IP addresses or hostnames must be for unique hosts. Do not list the same host using multiple IP addresses/hostnames.

--rpm package-name -r package-name -deb package-name
Path and name of the Vertica RPM or Debian package. For example:
--rpm /tmp/vertica-version.RHEL8.x86_64.rpm

For Debian and Ubuntu installs, provide the name of the Debian package:

--deb /tmp/vertica_10.1_amd64.deb

The install package must be provided if you install or upgrade the Vertica server package on multiple nodes where the nodes do not have the latest server package installed, or if you are adding a new node. You do not need to provide the server package if you have a local copy of the RPM on each node and call the install script with the no-rpm-copy option. Unless you provide the --no-rpm-copy option, the install_vertica and update_vertica scripts serially copy the server package to the other nodes and install the package.

--no-rpm-copy
Installer does not copy the RPM to the nodes in the cluster. The RPM must be present on each node specified by --hosts, and you must provide the path to the local RPM files with the --rpm-path option (defaults to /tmp/dbRPM.rpm). If you specify this option, you do not need to provide the --rpm option.
--dba-user username -u username
Name of the database superuser account to create. Only this account can run the Administration Tools. If you omit this parameter, then the default administrator account name is dbadmin.

This parameter is optional for new installations done as root; they must be specified when upgrading or when installing using sudo. If upgrading, use this parameter to specify the same account name that you used previously. If installing using sudo, username must already exist.

If you manually create the user, modify the user's .bashrc file to include the line: PATH=/opt/vertica/bin:$PATH so Vertica tools such as vsql and admintools can be easily started by this user.

For details on a minimal installation procedure, see Perform a basic install.

Optional

The following install_vertica options are not required. Many of them enable greater control over the installation process.

--help
Display help for this script.
--accept-eula -Y
Silently accepts the EULA agreement. On multi-node installations, this option is propagated across the cluster at the end of the installation, at the same time as the Administration Tools metadata.

Combine this option with --license (-L) to activate your license.

--add-hosts hostlist -A hostlist
Comma-separated list of hosts to add to an existing Vertica cluster.

--add-hosts modifies an existing installation of Vertica by adding a host to the database cluster and then reconfiguring spread. This is useful for improving system performance, or making the database K-safe.

If spread is configured in your installation to use point-to-point communication within the existing cluster, you must also use it when you add a new host; otherwise, the new host automatically uses UDP broadcast traffic, resulting in cluster communication problems that prevent Vertica from running properly. For example:

--add-hosts host01
--add-hosts 192.168.233.101

You can also use this option with the update_vertica script. For details, see Adding nodes.

--broadcast -U
Configures spread to use UDP broadcast traffic between nodes on the subnet. This is the default setting. Up to 80 spread daemons are supported by broadcast traffic. You can exceed the 80-node limit by using large cluster mode, which does not install a spread daemon on each node.

Do not combine this option with --point-to-point.

--clean
Forcibly cleans previously stored configuration files. Use this option if you need to change the hosts that are included in your cluster. Only use this option when no database is defined.

This option is not supported by the update_vertica script.

--config-file file -z file
Use the properties file created earlier with [‑‑record-config](#record-config). This properties file contains key/value settings that map to install_vertica option.
--control-network { IPaddress | default } -S { IPadress | default }
Set to one of the following arguments:
  • IPaddress: A broadcast network IP address that enables configuration of spread communications on a subnet different from other Vertica data communications.
  • default

You can also use this option to force a cluster-wide spread reconfiguration when changing spread-related options.

--data-dir directory -d directory
Directory for database data and catalog files. For details, see Specifying disk storage location during installation and Managing storage locations.

Default: /home/dbadmin

--dba-group group -g group
UNIX group for DBA users.

Default: verticadba

--dba-user-home directory -l directory
Home directory for the database administrator.

Default: /home/dbadmin

--dba-user-password password -p password
Password for the database administrator account. If omitted, the script prompts for a password and does not echo the input.
--dba-use-password-disabled
Disables the password for --dba-user. This argument stops the installer from prompting for a password for --dba-user. You can assign a password later using standard user management tools such as passwd.
--failure-threshold [threshold-arg]
Stops the installation when the specified failure threshold is encountered, where threshold-arg is one of the following:
  • HINT: Stop the install if a HINT or greater issue is encountered during the installation tests. HINT configurations are settings you should make, but the database runs with no significant negative consequences if you omit the setting.
  • WARN: Stop the installation if a WARN or greater issue is encountered. WARN issues might affect database performance. However, for environments where high-level performance is not a priority—for example, testing—WARN issues can be ignored.
  • FAIL: Stop the installation if a FAIL or greater issue is encountered. FAIL issues can have severely negative performance consequences and possible later processing issues if not addressed. However, Vertica can start even if FAIL issues are ignored.
  • HALT: Stop the installation if a HALT or greater issue is encountered. The database might be unable to start if you choose his option. This option is not supported in production environments.
  • NONE: Do not stop the installation. The database might be unable to start if you choose this option. This option is not supported in production environments.

Default: WARN

--ipv4
Hosts in the cluster are identified by IPv4 network addresses. This is the default behavior.
--ipv6
Hosts in the cluster are identified by IPv6 network addresses, required if the --hosts list specifies Pv6 addresses. This option automatically enables the --point-to-point option.
--large-cluster [ num-control-nodes | default ]
Enables the large cluster feature, where a subset of nodes called control nodes connect to spread to send and receive broadcast messages. Consider using this option for a cluster with more than 50 nodes in Enterprise Mode. Vertica automatically enables this feature if you install onto 120 or more nodes in Enterprise Mode, or 16 or more nodes in Eon Mode.

Supply this option with one of the following arguments:

  • num-control-nodes: Sets the number of control nodes in the new database to the smaller of this value or the value of --hosts. This value is applied differently in Enterprise Mode and Eon Mode:

    • Enterprise Mode: Sets the number of control nodes in the entire cluster.
    • Eon Mode: Sets the number of control nodes in the initial default subcluster. This value must be between 1 to 120, inclusive.
  • default: Vertica sets the number of control nodes to the square root of the total number of cluster nodes listed in --hosts (-s).

For details, see Enable Large Cluster When Installing Vertica.

Default: default

--license { license-file | CE } -L { hostlist | CE }
Silently and automatically deploys the license key to /opt/vertica/config/share. On multi-node installations, the –-license option also applies the license to all nodes declared by --hosts. To activate your license, combined this option with ‑‑accept-eula option. If you do not use the ‑‑accept-eula option, you are asked to accept the EULA when you connect to your database. After you accept the EULA, your license is activated.

If specified with CE, this option automatically deploys the Community Edition license key, which is included in your download.

---no-system-configuration
Installer makes no changes to system properties. By default, the installer makes system configuration changes that meet server requirements.

If you use this option, the installer posts warnings or failures for configuration settings that do not meet requirements that it otherwise configures automatically.

This option has no effect on creating or updating user accounts.

--parallel-no-prompts
Installs the server binary package (.rpm or .deb) on the hosts in parallel without prompting for confirmation. This option reduces the installation time, especially on large clusters. If omitted, the install script installs the package on one host at a time. .

This option requires that the installer use passwordless ssh to connect to the hosts. It has no effect if the installer is not using passwordless ssh.

--point-to-point -T
Configures spread to use direct point-to-point communication between all Vertica nodes. Use this option if nodes are not located on the same subnet. Also use this option for all virtual environment installations, whether or not virtual servers are on the same subnet.

Up to 80 spread daemons are supported by point-to-point communication. You can exceed the 80-node limit by using large cluster mode, which does not install a spread daemon on each node.

Do not combine this option with --broadcast.

This option is automatically enabled by the --ipv6 option.

--record-config filename -B filename
File name used with command line options to create a properties file that can be used with [‑‑config-file](#record-config). This option creates the properties file and exits; it does not affect installation.
--remove-hosts hostlist -R hostlist
Comma-separated list of hosts to remove from an existing Vertica cluster. After removing the specified hosts, spread is reconfigured on the cluster.

This option is useful for removing an obsolete or over-provisioned system.

If you use --point-to-point (-T) to configure spread to use direct point-to-point communication within the existing cluster, you must also use it when you remove a host; otherwise, the hosts automatically use UDP broadcast traffic, resulting in cluster communication problems that prevents Vertica from running properly.

The update_vertica script (see Removing hosts from a cluster) calls install_vertica to update the installation. You can use either script with this option.

--rpm-path rpm-filepath
Only used in conjunction with --no-rpm-copy, identifies the path to the local copy of the RPM on all nodes specified by --hosts.

Default: /tmp/dbRPM.rpm

--spread-logging -w
Configures spread to output logging to /opt/vertica/log/spread_hostname.log. This option does not apply to upgrades.
--ssh-identity file -i file
The root private-key file to use if passwordless ssh was already configured between the hosts. Before using this option, verify that normal SSH works without a password . The file can be private key file—for example, id_rsa—or PEM file. Do not use with the --ssh-password (-P) option.

Vertica accepts the following:

  • By providing an SSH private key which is not password protected. You cannot run the install_vertica script with the sudo command when using this method.

  • By providing a password-protected private key and using an SSH-Agent. Note that sudo typically resets environment variables when it is invoked. Specifically, the SSH_AUTHSOCK variable required by the SSH-Agent may be reset. Therefore, configure your system to maintain SSH_AUTHSOCK or invoke install_vertica using a method similar to the following:

    sudo SSH_AUTHSOCK=$SSH_AUTHSOCK /opt/vertica/sbin/install_vertica ...
    
--ssh-password password -P password
The password to use by default for each cluster host. If you omit this option and also omit ‑‑ssh‑identity (-i), then the script prompts for the password as necessary and does not echo input.

Do not use this option together with --ssh-identity (-i).

--temp-dir directory
Temporary directory used for administrative purposes. If it is a directory within /opt/vertica, then it is created by the installer. Otherwise, the directory should already exist on all nodes in the cluster. The location should allow dbadmin write privileges.

Default: /tmp