Installation Prerequisites

This section describes how to install the prerequisites necessary to install the Google Cloud database.

  1. Set up and activate /etc/rc.local by running the following command:
  2. #!/bin/sh
    function drive {
    block_device=`realpath $(df $1 | grep '^/' | cut -d' ' -f1)`
    partition=$(echo $block_device | sed -e "s#/dev/##")
    if [[ $partition == dm-* ]]; then
    echo $partition
    else
    echo $partition | cut -c1-3
    fi
    }
    cat > /etc/rc.local << EOF
    #!/bin/sh
    touch /var/lock/subsys/local
    /sbin/blockdev --setra 2048 /dev/$(drive /)
    /sbin/blockdev --setra 2048 /dev/$(drive /opt/vertica)
    echo deadline > /sys/block/$(drive /)/queue/scheduler
    echo deadline > /sys/block/$(drive /opt/vertica)/queue/scheduler
    echo never > /sys/kernel/mm/transparent_hugepage/enabled
    tuned-adm profile throughput-performance
    EOF
    chmod 755 /etc/rc.local
    /etc/rc.local
  3. Run this command to set the limit for open files so that it meets database requirements. This will add the parameters to the /etc/sysctl.conf file.

    cat << EOF | sudo tee -a  /etc/sysctl.conf
    net.core.somaxconn = 1024
    net.core.wmem_max = 16777216  
    net.core.rmem_max = 16777216
    net.core.wmem_default = 262144
    net.core.rmem_default = 262144
    net.core.netdev_max_backlog = 100000
    net.ipv4.tcp_mem = 16777216 16777216 16777216
    net.ipv4.tcp_wmem = 8192 262144 8388608
    net.ipv4.tcp_rmem = 8192 262144 8388608
    net.ipv4.udp_mem = 16777216 16777216 16777216
    net.ipv4.udp_rmem_min = 16384
    net.ipv4.udp_wmem_min = 16384
    vm.swappiness = 0
    EOF		

     

    Where:

    Parameter Description
    net.core.somaxconn = 1024 Increases the number of incoming connections
    net.core.wmem_max = 16777216 Sets the send socket buffer maximum size in bytes
    net.core.rmem_max = 16777216 Sets the receive socket buffer maximum size in bytes
    net.core.wmem_default = 262144 Sets the receive socket buffer default size in bytes
    net.core.rmem_default = 262144 Controls the default size of receive buffers used by sockets
    net.core.netdev_max_backlog = 100000 Increase the length of the network interface input queue
    net.ipv4.tcp_mem = 16777216 16777216 16777216
    net.ipv4.tcp_wmem = 8192 262144 8388608
    net.ipv4.tcp_rmem = 8192 262144 8388608
    net.ipv4.udp_mem = 16777216 16777216 16777216
    net.ipv4.udp_rmem_min = 16384
    net.ipv4.udp_wmem_min = 16384
    vm.swappiness = 0

    Defines the amount and frequency at which the kernel copies RAM contents to a swap space

    For more information, see Check for Swappiness in the ArcSight Database Guide.

  4. Next, run the following command to load the changes to the sysctl parameters:
  5. sysctl -p
  6. Run these commands to disable the firewall WARN (N0010):

    systemctl mask firewalld
    systemctl disable firewalld
    systemctl stop firewalld
    During installation, the database requires that host-based firewalls are disabled on database nodes. After installation, the host-based firewalls can be enabled and the database requires several ports to be open on the local network. We recommend for optimal performance using host-based firewalls between database nodes and a network-based firewall to protect the segment that database cluster is within. However, there is no restriction against using a network-based firewall between database nodes. When using any kind of firewall, ensure that all the database ports are available (see Technical Requirements for ArcSight Platform 23.3). For more information, see Firewall Considerations in the ArcSight Database Guide.
  7. Set SELinux to permissive mode in /etc/selinux/config.
    SELINUX=permissive

    For more information, see SELinux Configuration in ArcSight Database Guide.

  8. In /etc/default/grub, append line GRUB_CMDLINE_LINUX with intel_idle.max_cstate=0 processor.max_cstate=1.

    For example:

    GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet intel_idle.max_cstate=0 processor.max_cstate=1 intel_pstate=disable"

    Execute the following command:

    grub2-mkconfig -o /boot/grub2/grub.cfg

  9. If you have a high concurrency workload and if the database is CPU bound, reboot the virtual machine by running the following command:
  10. sudo sysctl -w net.core.netdev_max_backlog=2000
  11. Reboot for your changes to take effect.
  12. For RHEL, you must run RHEL using the following command:
  13. dnf install libnsl
  14. Install the packages by running the following command:
  15. yum install -y java-1.8.0-openjdk gdb mcelog sysstat dialog chrony tzdata wget
  16. Modify the /etc/bashrc by running the following command:
  17. export VERTICA_FAILURE_THRESHOLD=FAIL
  18. Apply the changes by running the following command:
  19. source ~/.bashrc
  20. Repeat these steps for each expected database node.