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

Return to the regular view of this page.

System user configuration

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

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

1 - System user requirements

Vertica has specific requirements for the system user that runs and manages Vertica.

Vertica has specific requirements for the system user that runs and manages Vertica. If you specify a user during install, but the user does not exist, then the installer reports this issue with the identifier: S0200.

System user requirement details

Vertica requires a system user to own database files and run database processes and administration scripts. By default, the install script automatically configures and creates this user for you with the username dbadmin. See Linux users created by Vertica for details on the default user created by the install script. If you decide to manually create your own system user, then you must create the user before you run the install script. If you manually create the user:

  • the user must have the same username and password on all nodes

  • the user must use the BASH shell as the user's default shell. If not, then the installer reports this issue with identifier [S0240].

  • the user must be in the verticadba group (for example: usermod -a -G verticadba userNameHere). If not, the installer reports this issue with identifier [S0220].

  • the user's login group must be either verticadba or a group with the same name as the user (for example, the home group for dbadmin is dbadmin). You can check the groups for a user with the id command. For example: id dbadmin. The "gid" group is the user's primary group. If this is not configured correctly then the installer reports this issue with the identifier [S0230]. Vertica recommends that you use verticadba as the user's primary login group. For example: usermod -g verticadba userNameHere. If the user's primary group is not verticadba as suggested, then the installer reports this with HINT [S0231].

  • the user must have a home directory. If not, then the installer reports this issue with identifier [S0260].

  • the user's home directory must be owned by the user. If not, then the installer reports the issue with identifier [S0270].

  • the system must be aware of the user's home directory (you can set it with the usermod command: usermod -m -d /path/to/new/home/dir userNameHere). If this is not configured correctly then the installer reports the issue with [S0250].

  • the user's home directory must be owned by the dbadmin's primary group (use the chown and chgrp commands if necessary). If this is not configured correctly, then the installer reports the issue with identifier [S0280].

  • the user's home directory should have secure permissions. Specifically, it should not be writable by anyone or by the group. Ideally the permissions should be, when viewing with ls, "---" (nothing), or "r-x" (read and execute). If this is not configured as suggested then the installer reports this with HINT [S0290].

2 - TZ environment variable

This topic details how to set or change the TZ environment variable and update your tzdata package.

This topic details how to set or change the TZ environment variable and update your tzdata package. If this variable is not set, then the installer reports this issue with the identifier: S0305.

Before installing Vertica, update the tzdata package for your system and set the default time zone for your database administrator account by specifying the TZ environmental variable. If your database administrator is being created by the install_vertica script, then set the TZ variable after you have installed Vertica.

Update tzdata package

The tzdata package is a public-domain time zone database that is pre-installed on most Linux systems. The tzdata package is updated periodically for time-zone changes across the world. You should update to the latest tzdata package before installing or updating Vertica.

Update your tzdata package with the following command:

  • RedHat based systems: yum update tzdata

  • Debian and Ubuntu systems: apt-get install tzdata

Setting the default time zone

When a client receives the result set of a SQL query, all rows contain data adjusted, if necessary, to the same time zone. That time zone is the default time zone of the initiator node unless the client explicitly overrides it using the SQL SET TIME ZONE command described in the SQL Reference Manual. The default time zone of any node is controlled by the TZ environment variable. If TZ is undefined, the operating system time zone.

If your operating system timezone is not set to the desired timezone of the database then make sure that the Linux environment variable TZ is set to the desired value on all cluster hosts.

The installer returns a warning if the TZ variable is not set. If your operating system timezone is appropriate for your database, then the operating system timezone is used and the warning can be safely ignored.

Setting the time zone on a host

You can set the time zone several different ways, depending on the Linux distribution or the system administrator’s preferences.

  • To set the system time zone on Red Hat and SUSE Linux systems, edit:

    /etc/sysconfig/clock
    
  • To set the TZ variable, edit, /etc/profile, or /home/dbadmin/.bashrc or /home/dbadmin/.bash_profile and add the following line (for example, for the US Eastern Time Zone):

    export TZ="America/New_York"
    

    For details on which timezone names are recognized by Vertica, see the appendix: Using time zones with Vertica.

3 - LANG environment variable settings

This topic details how to set or change the LANG environment variable.

This topic details how to set or change the LANG environment variable. The LANG environment variable controls the locale of the host. If this variable is not set, then the installer reports this issue with the identifier: S0300. If this variable is not set to a valid value, then the installer reports this issue with the identifier: S0301.

Set the host locale

Each host has a system setting for the Linux environment variable LANG. LANG determines the locale category for native language, local customs, and coded character set in the absence of the LC_ALL and other LC_ environment variables. LANG can be used by applications to determine which language to use for error messages and instructions, collating sequences, date formats, and so forth.

To change the LANG setting for the database administrator, edit, /etc/profile, or /dbadmin/.bashrc or /home/dbadmin/.bash_profile on all cluster hosts and set the environment variable; for example:

export LANG=en_US.UTF-8

The LANG setting controls the following in Vertica:

The LANG setting does not control the following:

  • Vertica specific error and warning messages. These are always in English at this time.

  • Collation of results returned by SQL issued to Vertica. This must be done using a database parameter instead. See Implement locales for international data sets section for details.

4 - Package dependencies

For successful Vertica installation, you must first install three packages on all nodes in your cluster before installing the database platform.

For successful Vertica installation, you must first install three packages on all nodes in your cluster before installing the database platform.

The required packages are:

  • openssh—Required for Administration tools connectivity between nodes.

  • which—Required for Vertica operating system integration and for validating installations.

  • dialog—Required for interactivity with Administration Tools.

Installing the required packages

The procedure you follow to install the required packages depends on the operating system on which your node or cluster is running. See your operating system's documentation for detailed information on installing packages.

  • For CentOS/Red Hat Systems—Typically, you manage packages on Red Hat and CentOS systems using the yum utility.

    Run the following yum commands to install each of the package dependencies. The yum utility guides you through the installation:

    # yum install openssh
    # yum install which
    # yum install dialog
    
  • For Debian/Ubuntu Systems—Typically, you use the apt-get utility to manage packages on Debian and Ubuntu systems.

    Run the following apt-get commands to install each of the package dependencies. The apt-get utility guides you through the installation:

    
    # apt-get install openssh
    # apt-get install which
    # apt-get install dialog