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

Return to the regular view of this page.

Installing using the command line

Although Vertica supports installation on one node, two nodes, and multiple nodes, this section describes how to install the Vertica software on a cluster of nodes.

Although Vertica supports installation on one node, two nodes, and multiple nodes, this section describes how to install the Vertica software on a cluster of nodes. It assumes that you have already performed the tasks in Before You Install Vertica, and that you have a Vertica license key.

To install Vertica, complete the following tasks:

  1. Download and install the Vertica server package

  2. Installing Vertica with the installation script

Special notes

  • Downgrade installations are not supported.

  • Be sure that you download the RPM for the correct operating system and architecture.

  • Vertica supports two-node clusters with zero fault tolerance (K=0 safety). This means that you can add a node to a single-node cluster, as long as the installation node (the node upon which you build) is not the loopback node (localhost/127.0.0.1).

  • The Version 7.0 installer introduces new platform verification tests that prevent the install from continuing if the platform requirements are not met by your system. Manually verify that your system meets the requirements in Before you install Vertica on your systems. These tests ensure that your platform meets the hardware and software requirements for Vertica. Previous versions documented these requirements, but the installer did not verify all of the settings. If this is a fresh install, then you can simply run the installer and view a list of the failures and warnings to determine which configuration changes you must make.

1 - Download and install the Vertica server package

To download and install the Vertica server package:.

To download and install the Vertica server package:

  1. Use a Web browser to go to the Vertica website.

  2. Click the Support tab and select Customer Downloads.

  3. Log into the portal to download the install package.
    Be sure the package you download matches the operating system and the machine architecture on which you intend to install it.

  4. Transfer the installation package to the Administration host.

  5. If you installed a previous version of Vertica on any of the hosts in the cluster, use the Administration tools to shut down any running database.

    The database must stop normally; you cannot upgrade a database that requires recovery.

  6. If you are using sudo, skip to the next step. If you are root, log in to the Administration Host as root (or log in as another user and switch to root).

    $ su - root
    password: root-password
    #
    

    After Vertica is installed, you no longer need root privileges. To verify sudo, see General hardware and OS requirements and recommendations.

  7. Use one of the following commands to run the RPM package installer:

    • If you are root and installing an RPM:

      # rpm -Uvh pathname
      
    • If you are using sudo and installing an RPM:

      $ sudo rpm -Uvh pathname
      
    • If you are using Debian:

      $ sudo dpkg -i pathname
      

    where pathname is the Vertica package file you downloaded.

2 - Installing Vertica with the installation script

Run the installation script after you install the Vertica package.

Run the installation script after you install the Vertica package. The installation script runs on a single node, using a Bash shell. It 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.

2.1 - 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 below for the complete list of 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
      
    • Using sudo:

      $ sudo /opt/vertica/sbin/install_vertica --hosts host_list --rpm package_name --dba-user dba_username
      

    Basic installation parameters

    Option Description
    --hosts host_list

    A 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 127.0.0.1` 
    
    * `--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` 
    
    --rpm package_name --deb package_name

    The path and name of the Vertica RPM package. For example:

    --rpm /tmp/vertica-10.1.1-0.x86_64.RHEL6.rpm

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

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

    --dba-user dba_username

    The name of the Database Superuser system account to create. Only this account can run the Administration Tools. If you omit the --dba-user parameter, then the default database administrator account name is dbadmin.

    This parameter is optional for new installations done as root but must be specified when upgrading or when installing using sudo. If upgrading, use the -u parameter to specify the same DBA account name that you used previously. If installing using sudo, the user must already exist.

  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 11.1.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.

2.2 - 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

2.3 - Create symbolic links for OpenSSL

As part of the Vertica installation, symbolic links are created to the appropriate OpenSSL files.

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.

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.

2.4 - install_vertica options

The table below describes all script options.

The table below describes all install_vertica script options. Most options have a long and short form—for example, --hosts and -s.

install_vertica minimally requires two options:

  • --hosts / -s

  • --rpm / -r | --deb

For example:

 # /opt/vertica/sbin/install_vertica --hosts node0001,node0002,node0003 \
            --rpm /tmp/vertica-10.1.1-0.x86_64.RHEL6.rpm

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

Option Description
--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 host-list -A host-list

A 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.

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

--broadcast -U

Specifies that Vertica use UDP broadcast traffic by spread between nodes on the subnet. This option is automatically used by default. No more than 80 spread daemons are supported by broadcast traffic. It is possible to have more than 80 nodes by using large cluster mode, which does not install a spread daemon on each node (see Large cluster).

Do not combine this option with --point-to-point (-T).

--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 cannot be combined with update_vertica.

--config-file file -z file Accepts an existing properties file created by --record-config. This properties file contains key/value settings that map to options in the install_vertica script, many with Boolean arguments that default to false.
--control-network { bcast-addess | default } -S { bcast-addess | default }

Set to one of the following arguments:

  • bcast-addess: 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 data-directory -d data-directory

Specifies the directory for database data and catalog files. For more information, see Specifying disk storage location during installation.

Default: /home/dbadmin

--dba-group group -g group

The UNIX group for DBA users.

Default: verticadba.

--dba-user dba-username -u dba-username

The name of the database superuser system account to create. Only this account can run the Administration Tools. If you omit this option, then the default database administrator account name is dbadmin.

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

--dba-user-home dba-home-directory -l dba-home-directory

The home directory for the database administrator.

Default: /home/dbadmin.

--dba-user-password dba-password -p dba-password The password for the database administrator account. If not supplied, the script prompts for a password and does not echo the input.
--dba-user-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 can be 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 may affect the performance of the database. However, for basic testing purposes or Community Edition users, WARN issues can be ignored if extreme performance is not required.

  • 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 may not be able to be started if you choose his option. Not supported in production environments.

  • NONE: Do not stop the installation. The database may not start. Not supported in production environments.

Default: WARN

--hosts host-list -s host-list

A comma-separated list of host names or IP addresses to include in the cluster, where host-list must not include spaces. For example:

--hosts host01,host02,host03
-s 192.168.233.101,192.168.233.102,192.168.233.103

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.

--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. You must specify this option when you pass IPv6 addresses in the --hosts list. If you use host names in the --hosts option, the names must resolve to IPv6 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. For Enterprise Mode, sets the number of control nodes in the entire cluster. In 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).

See Enable Large Cluster When Installing Vertica for more information.

Default: default

--license { licensefile | CE } -L { licensefile | 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 in the --hosts host_list. 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, automatically deploys the Community Edition license key, which is included in your download. You do not need to specify a license file.

For example:

--license CE
--license /tmp/vlicense.dat
--no-system-configuration

Specifies that the installer makes no changes to system properties. By default, the installer makes system configuration changes to 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.

--point-to-point -T

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

The maximum number of spread daemons supported in point-to-point communication in Vertica is 80. It is possible to have more than 80 nodes by using large cluster mode, which does not install a spread daemon on each node.

Do not combine this option with --broadcast (-U).

This option is automatically enabled when you enable the --ipv6 option.

--record-config filename -B filename Accepts a file name, which when used in conjunction with command line options, creates a properties file that can be used with --config-file (-z). This option creates the properties file and exits; it does not affect installation.
--remove-hosts host-list -R host-list

A comma-separated list of hosts to remove from an existing Vertica cluster.

--remove-hosts modifies an existing installation of Vertica by removing a host from the database cluster and then reconfiguring the spread. This is useful for removing an obsolete or over-provisioned system. For example:

--remove-hosts host01

-R 192.168.233.101

Notes:

  • 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 described in Removing nodes calls the install_vertica script to perform the update to the installation. You can use the install_vertica or update_vertica script with this option.

--rpm *package-name* -r *package-name* --deb *package-name*

The name of the RPM or Debian package. For example:

--rpm vertica-12.0.x.x86_64.RHEL6.rpm

The install package must be provided if installing or upgrading multiple nodes and the nodes do not have the latest server package installed, or if you are adding a new node. The install_vertica and update_vertica scripts serially copy the server package to the other nodes and install the package.

--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 has already been configured between the hosts. Verify that normal SSH works without a password before using this option. 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 you also omit specifying --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

The 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

3 - Installing Vertica silently

This section describes how to create a properties file that lets you install and deploy Vertica-based applications quickly and without much manual intervention.

This section describes how to create a properties file that lets you install and deploy Vertica-based applications quickly and without much manual intervention.

Install the properties file:

  1. Download and install the Vertica install package, as described in Installing Vertica.

  2. Create the properties file that enables non-interactive setup by supplying the parameters you want Vertica to use. For example:

    The following command assumes a multi-node setup:

    # /opt/vertica/sbin/install_vertica --record-config file_name --license /tmp/license.txt --accept-eula \
    # --dba-user-password password --ssh-password password --hosts host_list --rpm package_name
    

    The following command assumes a single-node setup:

    # /opt/vertica/sbin/install_vertica --record-config file_name --license /tmp/license.txt --accept-eula \
    # --dba-user-password password
    
    Option Description
    --record-file file_name [Required] Accepts a file name, which when used in conjunction with command line options, creates a properties file that can be used with the --config-file option during setup. This flag creates the properties file and exits; it has no impact on installation.
    --license { license_file | 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 in the --hosts host_list.

    If specified with CE, automatically deploys the Community Edition license key, which is included in your download. You do not need to specify a license file.

    --accept-eula Silently accepts the EULA agreement during setup.
    --dba-user-password password The password for the Database Superuser account; if not supplied, the script prompts for the password and does not echo the input.
    --ssh-password password The root password to use by default for each cluster host; if not supplied, the script prompts for the password if and when necessary and does not echo the input.
    --hosts host_list

    A comma-separated list of hostnames or IP addresses to include in the cluster; do not include space characters in the list.

    Examples:

    --hosts host01,host02,host03
    --hosts 192.168.233.101,192.168.233.102,192.168.233.103
    
    --rpm package_name
    --deb package_name

    The name of the RPM or Debian package that contained this script.

    Example:

    --rpm vertica-12.0.x.x86_64.RHEL6.rpm

    This parameter is required on multi-node installations if the RPM or DEB package is not already installed on the other hosts.

See Installing Vertica with the installation script for the complete set of installation parameters.

  1. Use one of the following commands to run the installation script.
  • If you are root:

    /opt/vertica/sbin/install_vertica --config-file file_name
    
  • If you are using sudo:

    $ sudo /opt/vertica/sbin/install_vertica --config-file file_name
    

    --config-file file_name accepts an existing properties file created by --record-config file_name. This properties file contains key/value parameters that map to values in the install_vertica script, many with boolean arguments that default to false

    The command for a single-node install might look like this:

    # /opt/vertica/sbin/install_vertica --config-file /tmp/vertica-inst.prp
    
  1. If you did not supply a --ssh-password password parameter to the properties file, you are prompted to provide the requested password to allow installation of the RPM/DEB and system configuration of 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.
  1. If you did not supply a --dba-user-password password parameter to the properties file, you are prompted to provide the database administrator account password.

The installation script creates a new Linux user account (dbadmin by default) with the password that you provide.

  1. Carefully examine any warnings produced by install_vertica and correct the problems if possible. For example, insufficient RAM, insufficient Network throughput and too high readahead settings on file system could cause performance problems later on.
  1. Optionally perform the following steps:
  1. Disconnect from the Administration Host as instructed by the script. This is required to:
  • Set certain system parameters correctly.

  • Function as the Vertica database administrator.

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

If you supplied the --license and --accept-eula parameters to the properties file, then proceed to Getting started and then see Configuring the database.

Otherwise:

  1. Log in to the Database Superuser account on the administration host.

  2. Accept the End User License Agreement and install the license key you downloaded previously as described in Install the license key.

  3. Proceed to Getting started and then see Configuring the database.

Notes

  • Downgrade installations are not supported.

  • The following is an example of the contents of the configuration properties file:

accept_eula = True
license_file = /tmp/license.txt
record_to = file_name
root_password = password
vertica_dba_group = verticadba
vertica_dba_user = dbadmin
vertica_dba_user_password = password

4 - Installing Vertica on Amazon Web Services (AWS)

Beginning with Vertica 6.1.x, you can use Vertica on AWS by utilizing a pre-configured Amazon Machine Image (AMI).

Beginning with Vertica 6.1.x, you can use Vertica on AWS by utilizing a pre-configured Amazon Machine Image (AMI). For details on installing and configuring a cluster on AWS, refer to Installing and Running Vertica on AWS.