Introduction

In our this guide we are about to learn about “How to set-up a two node VERITAS cluster servers VCS” on top of RedHat Enterprise Linux 7.6 server. Back in days VERITAS is part of Symantec, Now VERITAS de-merged from Symantec and it owned as Veritas Technologies LLC, They are providing robust server setup in the name of InfoScale.

VERITAS supports cluster configurations up to 128 nodes, But flexible Storage Sharing supports cluster configurations only up to 64 nodes. The installation of InfoScale can be performed using ISO installer, YUM, Response file, Kick start installer or from System management Satellite server. In our guide we are going to accomplish the installation using YUM. However, installing using “Installer” method is super easy and advise newbies to stick with it. By following will configure VERITAS manually by creating I/O fencing, disk group, service group and resource group.

Before starting with VERITAS Setup we required two numbers of RHEL servers in same hardware and specifications, Each nodes required three interfaces 1 used as Public interface for Heartbeat, 2 private interfaces are used for High Availability to share the resources across both the nodes. In case if your setup have only 2 NIC’s then I/O fencing is must required using disk based or server based. Moreover, we need to make sure by setting with maximum transmission unit value for all switches and interfaces to higher value 9000 MTU this help to improve LLT interconnects in Flexible Storage Sharing.

VERITAS now supports RHEL 7.6 and we need to assure install only with kernel version “kernel-3.10.0-957.el7.x86_64“. follow below guide to install minimal Red Hat Enterprise Linux 7.6 server.


Read more articles to setup VERITAS.

To install with stable VERITAS environment we required to have minimal configurations as follows for each nodes.

Minimum System Requirement:

OS – Red Hat Enterprise Linux 7.6
V.Package – VERITAS Info Scale Enterprise 7.4 ISO – 1.8 GB
RAM – 1 GB
CPU – 2
NIC’s – 3

Our Server Info, Host Names & IP Address:

storage.linuxsysadmins.local  | 192.168.107.110
vclnode1.linuxsysadmins.local | 192.168.107.120
vclnode2.linuxsysadmins.local | 192.168.107.130

Adding Local Host entry

Even if you have a DNS entry it’s safe to add a local host entry for VCS cluster. Edit /etc/hosts and append with node entries.

 192.168.107.110 storage.linuxsysadmins.local    storage
192.168.107.120 vcs1.linuxsysadmins.local vcs1
192.168.107.130 vcs2.linuxsysadmins.local vcs2

Kernel Parameter changes:

By default the kernel parameter for task timeout will be enabled, we need to disable by running below command and making it persistent. This required to prevent from the node does not panic.

# vi /etc/sysctl.conf

Append with required value “kernel.hung_task_panic = 0” save and exit. Load the parameter from file and verify the same.

# sysctl -p /etc/sysctl.conf
# sysctl -a | grep kernel.hung_task_panic

Create OS and VERITAS Yum Repository

Mount both the OS and VERITAS ISO to create yum repository.

# mount /dev/sr0 /mnt/
# mount /dev/sr1 /media/

Touch a file under /etc/yum.repo.d/ with .repo extension and append the below yum repository configuration.

# vi /etc/yum.repos.d/local.repo

Both OS and VERITAS repo details are under same repository file.

RHEL OS Repository configuration

[RHEL76_repo]
name=rhel_local_repo_7.6
baseurl=file:///media
enabled=1
gpgcheck=1
gpgkey=file:///media/RPM-GPG-KEY-redhat-release

VERITAS Repository configuration

[VERITAS_repo]
name=veritas_local_repo_7.4.1
baseurl=file:///mnt/rhel7_x86_64/rpms
enabled=1
gpgcheck=1
gpgkey=file:///mnt/rhel7_x86_64/rpms/RPM-GPG-KEY-veritas-infoscale7

SSH Password-less Authentication between nodes

Next step we need to set up password-less authentication between the two nodes.

# ssh-keygen
# ssh-copy-id root@192.168.107.110
# ssh-copy-id root@192.168.107.120

Firewall rules for required Ports:

To allow the required ports it’s better to create a set of rules in the name of “veritas” service. Make a copy of existing service and edit according to our requirement.

# cp /usr/lib/firewalld/services/ssh.xml /usr/lib/firewalld/services/veritas.xml

Edit the file to modify the required ports and protocol.

# vi /usr/lib/firewalld/services/veritas.xml
[root@vcs1 ~]# cat /usr/lib/firewalld/services/veritas.xml 
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>VERITAS</short>
  <description>VERITAS required ports.</description>
  <port protocol="tcp" port="5634"/>
  <port protocol="tcp" port="5636"/>
  <port protocol="tcp" port="22"/>
  <port protocol="tcp" port="135"/>
  <port protocol="tcp" port="123"/>
  <port protocol="tcp" port="14161"/>
  <port protocol="tcp" port="21"/>
  <port protocol="tcp" port="80"/>
  <port protocol="tcp" port="443"/>
  <port protocol="udp" port="162"/>
</service>
[root@vcs1 ~]#

Save and exit using using wq!

Reload the configuration and list to add the new service, By following add it persistently and again reload the firewall.

# firewall-cmd --reload
# firewall-cmd --get-services
# firewall-cmd --zone=public --add-service=veritas --permanent
# firewall-cmd --reload

List and verify the added “veritas” service and dependent ports.

# firewall-cmd --list-all
# iptables -L -n -v --line-numbers


Resolve Dependencies for VERITAS Installation

Before staring with VERITAS cluster setup it’s good to resolve all required dependencies, We can ignore the prerequisites check if we resolve it by now.

# yum install ksh sysstat perl perl-Socket perl-Exporter parted pam.i686 pcre coreutils bc ed xz-libs findutils ncurses-libs nss-softokn-freebl policycoreutils systemd-libs glibc glibc.i686 kmod libacl libgcc libgcc.i686 libstdc++ libstdc++.i686 openssl-libs ksh zlib perl-Exporter chrony net-tools -y

Syncing Time with NTP server:

It’s mandatory to have the same time across all nodes in a cluster to work correctly. We are using Chrony to sync time from NTP server.

# systemctl restart chronyd
# systemctl enable chrony

Enable NTP Syncing and verify the status.

# timedatectl set-ntp true
# timedatectl status
# chronyc sources
# chronyc tracking

Starting VERITAS InfoScale installation

Before starting with installation first we need to know which package group need to be installed. Let us list and grep the version of Veritas version we are about to install.

# yum grouplist | grep 74
Group List Veritas package

To know more about the group of package.

# yum groupinfo ENTERPRISE741

Output of above command:

[root@vcs1 ~]# yum groupinfo ENTERPRISE741
Failed to set locale, defaulting to C
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Group: ENTERPRISE741
Group-Id: ENTERPRISE741
Description: RPMs of Veritas InfoScale Enterprise 7.4.1.0000
Default Packages:
+VRTSamf
+VRTSaslapm
+VRTScavf
+VRTScps
+VRTSdbac
+VRTSdbed
+VRTSfsadv
+VRTSgab
+VRTSglm
+VRTSgms
+VRTSllt
+VRTSodm
+VRTSperl
+VRTSpython
+VRTSsfcpi
+VRTSsfmh
+VRTSspt
+VRTSvbs
+VRTSvcs
+VRTSvcsag
+VRTSvcsea
+VRTSvcswiz
+VRTSveki
+VRTSvlic
+VRTSvxfen
+VRTSvxfs
+VRTSvxvm
[root@vcs1 ~]#

Install the group of package using “groupinstall”. Both the nodes need to be installed with these packages. So, make sure to install vcs1 and vcs2.

Note:> If you are performing installation using “Installer” method it will manage to install the required package across both the nodes.

# yum groupinstall ENTERPRISE741 -y

Installation has been completed now let us verify the version of installed VCS cluster.

# /opt/VRTSvcs/bin/had -version

[root@vcs1 ~]# /opt/VRTSvcs/bin/had -version
Engine Version 7.4
Join Version 7.4.10.000
Build Date Tue 08 Jan 2019 09:47:17 PM +04
PSTAMP 7.4.1.0000-2019-01-08-23.17.17
[root@vcs1 ~]

Or if you need to verify all installed product we can use the “installer” to gather from both the node.

# cd /opt/VRTS/install/
./installer -version

Output of version check using Installer:

[root@vcs1 ~]# cd /opt/VRTS/install/
[root@vcs1 install]#
[root@vcs1 install]# ./installer -version
Enter the system names separated by spaces for version checking: (vcs1) vcs1 vcs2
Checking communication on vcs1 ................................................... Done Checking communication on vcs2 ................................................... Done Checking installed products on vcs1 ................................................... Done Checking installed products on vcs2 ................................................... Done
Platform of vcs1:
Linux RHEL 7.6 x86_64
Installed product(s) on vcs1:
InfoScale Enterprise - 7.4.1 - Unlicensed
Product:
InfoScale Enterprise - 7.4.1 - Unlicensed
Packages:
Installed Required packages for InfoScale Enterprise 7.4.1:
#PACKAGE #VERSION
VRTSamf 7.4.1.0000
VRTSaslapm 7.4.1.0000
VRTScavf 7.4.1.0000
VRTScps 7.4.1.0000
VRTSdbac 7.4.1.0000
VRTSdbed 7.4.1.0000
VRTSfsadv 7.4.1.0000
VRTSgab 7.4.1.0000
VRTSglm 7.4.1.0000
VRTSgms 7.4.1.0000
VRTSllt 7.4.1.0000
VRTSodm 7.4.1.0000
VRTSperl 5.26.1.1
VRTSsfcpi 7.4.1.0000
VRTSsfmh 7.4.0.200
VRTSspt 7.4.1.000
VRTSvbs 7.4.1.0000
VRTSvcs 7.4.1.0000
VRTSvcsag 7.4.1.0000
VRTSvcsea 7.4.1.0000
VRTSvcswiz 7.4.1.0000
VRTSveki 7.4.1.0000
VRTSvlic 4.01.74.002
VRTSvxfen 7.4.1.0000
VRTSvxfs 7.4.1.0000
VRTSvxvm 7.4.1.0000
Summary:
Packages:
26 of 26 required InfoScale Enterprise 7.4.1 packages installed
Installed Patches for InfoScale Enterprise 7.4.1:
None
Platform of vcs2:
Linux RHEL 7.6 x86_64
Installed product(s) on vcs2:
InfoScale Enterprise - 7.4.1 - Unlicensed
Product:
InfoScale Enterprise - 7.4.1 - Unlicensed
Packages:
Installed Required packages for InfoScale Enterprise 7.4.1:
#PACKAGE #VERSION
VRTSamf 7.4.1.0000
VRTSaslapm 7.4.1.0000
VRTScavf 7.4.1.0000
VRTScps 7.4.1.0000
VRTSdbac 7.4.1.0000
VRTSdbed 7.4.1.0000
VRTSfsadv 7.4.1.0000
VRTSgab 7.4.1.0000
VRTSglm 7.4.1.0000
VRTSgms 7.4.1.0000
VRTSllt 7.4.1.0000
VRTSodm 7.4.1.0000
VRTSperl 5.26.1.1
VRTSsfcpi 7.4.1.0000
VRTSsfmh 7.4.0.200
VRTSspt 7.4.1.000
VRTSvbs 7.4.1.0000
VRTSvcs 7.4.1.0000
VRTSvcsag 7.4.1.0000
VRTSvcsea 7.4.1.0000
VRTSvcswiz 7.4.1.0000
VRTSveki 7.4.1.0000
VRTSvlic 4.01.74.002
VRTSvxfen 7.4.1.0000
VRTSvxfs 7.4.1.0000
VRTSvxvm 7.4.1.0000
Summary:
Packages:
26 of 26 required InfoScale Enterprise 7.4.1 packages installed
Installed Patches for InfoScale Enterprise 7.4.1:
None
Would you like to view Available Upgrade Options? y,n,q n
Do you want to version check additional systems? y,n,q n
Please visit https://sort.veritas.com for more information.
[root@vcs1 install]#


Licensing VERITAS Cluster

Once we completing with installing VERITAS Cluster we need to configure licence. In our testing environment, we are using an evaluation version for 60 days. Run the installer and choose “L” to install licence.

 # cd /opt/VRTS/install
./installer
Running installer
Running installer

It will check automatically for communication, Installed components, pre-checks and etc.

Communication and Pre-checks
Communication and Pre-checks

Choose “L” for configuring licence and press enter.

Choose "L" for installing the licence
Choose “L” for installing the licence

Choose the second option “Enable keyless licensing and complete system licensing later“. Type 2 and press enter.

Enable keyless licensing and complete system licensing later
Enable keyless licensing and complete system licensing later

Choose “n” to not sent logs after installation. If you need to view the installation summary type “y”, I’m ignoring the summary by typing “n”.

Type "n" not to sent logs
Type “n” not to sent logs

Setting the Path variable for commands and Man Pages

But default variables for VERITAS commands will not be set, If you need to run any command we have to navigate to /opt/VRTS/bin/, Instead we can set the variable to run the command from any location.

# vi ~/.bashrc or # vi /etc/bashrc # or in # vi /etc/environment

Append to anyone of file.

PATH=/opt/VRTS/bin:$PATH; export PATH
MANPATH=/opt/VRTS/man:$MPATH; export MANPATH

Run source or re-login the shell to make changes.

# source /etc/bashrc

Now all the VERITAS related commands and man pages will be available across the servers. Make sure to add on both the nodes.

We have successfully completed VCS installation, now let us start to configure the VCS in our next article.

Conclusion:

We have successfully installed VERITAS cluster on RHEL 7.6 server by following let us see how to configure VERITAS in upcoming articles. Subscribe to our newsletter and stay with us, Make sure to provide your feedback and comments.

LEAVE A REPLY

Please enter your comment!
Please enter your name here