Set Up a Cluster of New Vertica Database Servers for Aternity 10

You can deploy Aternity Vertica Database Servers as a cluster in larger deployments. The number of Vertica Database Servers you require depends on the size of your deployment, and the level of high availability that you need.

When you deploy several Vertica Database Servers in a cluster, Aternity is able to retrieve data more quickly, because Vertica distributes the query workload across the nodes of the cluster. A cluster also provides the advantage of redundancy and high availability (learn more).

The Aternity Vertica Database Server stores the performance data from the past 31 days in the Vertica format, which is most efficient for displaying in Aternity dashboards.

To set up a Vertica Database Server cluster, prepare the correct number of computers for your sized deployment, pick one of the computers to run the setup process, configure the parameters file there, and then run two scripts on that computer:

Follow these steps to set up a Vertica Database Server cluster
  • Run the SSH script once. The SSH script establishes secure communications (SSH) between this computer and the other computers in the cluster using an RSA key, giving it access to those computers as the user which you define in the parameters file. As a result, when you run the Vertica Setup Script, you do not need to enter this user's password multiple times.

    If your IT policy requires that you secure an RSA key with a passphrase, do NOT use this SSH script; instead, run the Vertica Setup Script, and manually enter the password as many times as required.

  • Run the Vertica Setup Script just once to automatically set up Vertica on this computer and the other computers in the cluster.

Before you begin

  • Download the latest Aternity on-premise's main setup package from the Riverbed support site by selecting Software (size).

  • Complete setting up the Aternity Oracle Database Server.

  • Remove any MOTD (a "message of the day") from all Vertica Database Servers in a cluster. It can harm the server setup or startup.

  • Prepare all the computers in the cluster to meet the following requirements:

    Attribute Requirement

    Hardware

    Hardware specifications depend on the size of your Aternity on-premise deployment. Choose the sizing and hardware specifications for your deployment size.

    In addition, check the ports which you must open on this server (learn more).

    Operating system for Aternity Vertica Database Server

    • Linux CentOS 7.3 - 7.5. To verify your version of CentOS, enter cat /etc/centos-release

    • (Aternity 10.0.1) Red Hat Enterprise Linux (RHEL) 7.4 or 7.5.

      (Aternity 10.0) Red Hat Enterprise Linux (RHEL) 7.4.

      To verify the RHEL version, enter cat /etc/redhat-release

    Verify that the disk partition uses the EXT4 file system. Enter df -Th to verify.

    If you deploy on virtual machines, you MUST define all resources as dedicated or reserved (Resource Allocation > Reservation).

    In addition, if you want to use a Logical Volume Manager (LVM), you can use it in Aternity 10.0 on any partition other than the one used for the data and catalog folders. Vertica 8.0.1 in Aternity 10.0 does not support LVM for the partition where the data and catalog folders are stored. See Vertica limitations. However, in Aternity 10.0.1 with Vertica 8.1.1 it is possible to use any partition for LVM, including the one where the data and catalog folders are stored.

    Vertica version for Aternity Vertica Database Server

    Aternity 10.0.1 requires that your Vertica Database Server runs HPE Vertica 8.1.1 (for Aternity 10.0 it is Vertica 8.0.1). You can download this with the rest of the Aternity on-premise package.

    Permissions

    Create the exact same user with the same permissions on each computer. Run the setup as a user with root or sudo root privileges on the computer. To verify, enter sudo id.

    If you run the setup as a user with sudo permissions that requires a password, setup will prompt you for the password. If the sudo user does not require a password, the setup does not interrupt the process with those prompts.

    Resource limits for Vertica DBA user

    The Vertica DBA user must have bash as its shell, and have read, write and execute permissions on its home folder. (For several nodes in a cluster) It must also be able to SSH to other nodes in the cluster.

    The Vertica DBA user must have an open file limit of 65536 or more. The setup script automatically assigns this setting to the DBA user.

    You can enter a DBA username, password and group in the parameters file, or keep the name which is predefined (dbadmin), if the username does not exist, the script creates it with these properties.

    Network

    Ensure this server has a static IP v4 address, and that you open the required ports.

    Time zone

    Synchronize all Aternity components to have the same date, time AND time zone.

    Target directory

    Create a directory in the EXT4 partition in which the scripts can set up the Vertica software and database. This is the directory you will use in the vertica_parameters.sh file for VERTICA_DATA_DIR parameter.

    Important

    Create an identical directory (identical full pathname) on each computer in the cluster.

  • If you have a cluster of Vertica databases, Vertica recommends not to deploy firewalls on the individual servers within the cluster (learn more). For a complete list of ports within a cluster, see the ports list (learn more).

  • Configure anti-virus software like McAfee VSEL to exclude all .cat files in the Vertica target directory containing its catalogs. Add an exclusion to the anti-virus application for <Vertica_target_dir>/.*\.cat

Procedure

  1. Step 1 Access one of the cluster computers.
  2. Step 2 Download the latest Aternity on-premise's main setup package from the Riverbed support site by selecting Software (size).

    The setup package is for all Aternity servers.

    Download Aternity on-premise from the website

    There are also entries in the Useful Links section which are required for database setup.

  3. Step 3 Locate the Vertica Database Server setup package, vertica-installer-<version>.tar, which you downloaded as part of the Aternity on-premise server setup package.

    Copy it to a temporary location on this computer. Perform all the setup operations only on this computer.

  4. Step 4 Unpack the .tar file by entering tar -xvf vertica-installer-<version>.tar.
    Unpack the Vertica setup folder
    Field Description
    -x

    Use -x to unzip the contents of the package.

    -v

    Use -v to output all messages (verbose).

    -f

    Use -f to specify the filename.

    The downloaded package contains a number of files including:

    File Description

    vertica_parameters.sh

    This file contains the parameters used by the setup script. You must edit this file so that the script will know how and where to set up the Vertica Database Server.

    setup_ssh.sh (for cluster setup only)

    The SSH script establishes secure communications (SSH) between this computer and the other computers in the cluster using an RSA key, giving it access to those computers as the user which you define in the parameters file. As a result, when you run the Vertica Setup Script, you do not need to enter this user's password multiple times.

    Do not edit the script file.

    If your IT policy requires that you secure an RSA key with a passphrase, do NOT use this SSH script; instead, run the Vertica Setup Script, and manually enter the password as many times as required.

    install_cluster.sh (for cluster setup only)

    This script sets up Vertica Database Server on all of the nodes.

    Do not edit this file.

    The package also contains install_vertica.sh, which you do not use in cluster setup, and the internal directory that contains files, scripts and packages that the setup scripts use. Do not edit these files.

  5. Step 5 Configure the setup by opening vertica_parameters in a plain text editor.
    Edit the setup parameters in the vertica_parameters file
    Parameter Description
    RUN_AS_USER

    Enter the username that you already defined on the other servers in the cluster with sudo root or root privileges.

    Before running the script, you must have the exact same user with the same permissions on each computer in the cluster.

    If you run the setup as a user with sudo permissions that requires a password, setup will prompt you for the password. If the sudo user does not require a password, the setup does not interrupt the process with those prompts.

    VERTICA_TZ

    Enter the time zone code for the server. The time zone must be identical to that of all other Aternity components.

    For example, enter VERTICA_TZ=America/New_York or VERTICA_TZ=UTC

    To see the time zone of a computer, enter timedatectl | grep "Time zone"

    VERTICA_DATA_DIR

    Enter the full path to the target directory for the Vertica setup. You must create the identical target directory (identical full path) on each computer in the cluster before running the setup script.

    Verify that the disk partition uses the EXT4 file system. Enter df -Th to verify.

    VERTICA_NODE_1

    Enter the IP v4 address of the computer on which you are performing the setup operations.

    Vertica automatically converts hostnames and FQDNs into IP v4 addresses in its configuration file.

    To ensure successful dashboard publishing, do not use a relative address like localhost or 127.0.0.1. Use the IP address as other computers in the cluster see this one.

    VERTICA_OTHER_NODES

    Enter the IP v4 addresses of all of the other computers in the cluster (not this computer). Each address must be surrounded by quotation marks, and separated by a space, for example:

    VERTICA_OTHER_NODES=("10.0.0.102" "10.0.0.103")

    VERTICA_DB_NAME

    Enter the name of the database (case sensitive). It must begin with an alphabetic character, and can contain letters (upper or lower case), numbers and underscores, and must be up to 30 characters.

    The name already in the properties file is aternity, but you can change if needed.

    VERTICA_DB_ADMIN_USER

    Enter the username required to access the Vertica Database Server. The Vertica DBA user must have bash as its shell, and have read, write and execute permissions on its home folder. (For several nodes in a cluster) It must also be able to SSH to other nodes in the cluster.

    The script creates /opt/vertica/* by default, and assigns read, write and execute to that folder for this user.

    You can enter a DBA username, password and group in the parameters file, or keep the name which is predefined (dbadmin), if the username does not exist, the script creates it with these properties.

    VERTICA_DB_ADMIN_GROUP

    (For Aternity 10.0.1 only) If the user must have a group according to your enterprise policy, enter the user's group name here. If this group does not yet exist, the script creates it.

    If you leave this blank, the script assigns this user to the verticadba group.

    VERTICA_DB_ADMIN_LINUX_PASSWORD

    (For Aternity 10.0.1 only) Enter the password of this user to give access to the Linux operating system. We define a username in the Linux operating system, with its password, and the same username to access the Vertica database, with its separate password.

    Enter the password surrounded by quotation marks, such as "mypassword5%". If your password contains a dollar sign ($), apostrophe (', or double-quotes ("), you must prefix any of them with a backslash (\). For example, to set the password to H$kko`ZPe, enter "H\$kko\'ZPe". Avoid using double-quotes as part of your password. Learn more.

    VERTICA_DB_ADMIN_PASSWORD

    Enter the password of this user to give access to the Vertica database as administrator (like DBADMIN). We define a username in the Linux operating system, with its password, and the same username to access the Vertica database, with its separate password.

    Enter the password surrounded by quotation marks, such as "mypassword5%". If your password contains a dollar sign ($), apostrophe (', or double-quotes ("), you must prefix any of them with a backslash (\). For example, to set the password to H$kko`ZPe, enter "H\$kko\'ZPe". Avoid using double-quotes as part of your password. Learn more.

    There is no default for this field, so if you leave this blank, the script creates the user without a password.

    Tip

    We strongly recommend replacing the default password with a new one, and making a note of it elsewhere.

    VERTICA_FAILURE_THRESHOLD

    (For Aternity 10.0.1 only) Enter the level of the error where the script stops the setup and reports the message, hence ignoring any error lower than this level.

    Use this for specific cases where you need to override the setup's errors, AFTER you confirm that all other errors are resolved. For example, using SELinux in enforcing mode generates a specific FAIL level error which you need to ignore. A local firewall deployed on this computer generates a specific WARN error which you may need to ignore.

    The default value (when empty) is WARN, hence it ignores any error message less important than a warning, which is a HINT.

    Enter:

    • HINT to stop even on the smallest errors like hints.

    • WARN to ignore hints only.

    • FAIL to ignore warnings and hints

    • HALT to ignore fail, warn and hints.

    VERTICA_SIZE

    Enter the size of your Aternity deployment, based on the sizing you chose, to set requirements for the Vertica Database Server:

    • TRIAL for demos only, not for production.

    • XSMALL

    • SMALL

    • MEDIUM

    • LARGE

    • XLARGE

    • XXLARGE

  6. Step 6 To make the Vertica Setup Script run smoothly without entering a password many times, run the setup_ssh.sh script from this computer just once.

    The SSH script establishes secure communications (SSH) between this computer and the other computers in the cluster using an RSA key, giving it access to those computers as the user which you define in the parameters file. As a result, when you run the Vertica Setup Script, you do not need to enter this user's password multiple times.

    Run the setup_ssh.sh on one computer, to set up SSH to the other computers

    If your IT policy requires that you secure an RSA key with a passphrase, do NOT use this SSH script; instead, run the Vertica Setup Script, and manually enter the password as many times as required.

    Run setup_ssh.sh to create an SSH connection between all of the computers
    Field Description

    Enter passphrase (empty for no passphrase)

    Press Enter here to continue without a passphrase.

  7. Step 7 Run ./install_cluster.sh on this same computer.

    You only need to run the ./install_cluster.sh script one time. It sets up the Vertica Database Server on itself and on all of the other nodes automatically in one step.

    If you are running the script as a user with sudo permissions, enter sudo ./install_cluster.sh.

    Run install_cluster.sh to install Vertica on all of the cluster computers

    The script runs the Vertica setup for you, and displays Vertica's setup messages as it proceeds.

    The script saves the setup log, installer.log, in the setup directory.

    The script indicates when it has completed the installation successfully
  8. Step 8 Verify the setup by confirming that Vertica is running.
    1. a Switch to the Vertica database administrator user, like dbadmin, by entering su - dbadmin.
    2. b Run the Vertica administration tool by entering admintools.
      Vertica's database administrator tools
    3. c Select the first option View database cluster state.

      Confirm the State is UP.

      Verify the database is running
      Tip

      If the database is not up, return to the main menu and select 3 to start the database.