Forge Home


Install and configure Veritas products (VCS)


7,926 latest version

4.6 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.0.4 (latest)
  • 0.0.3
  • 0.0.2
released Aug 2nd 2017
This version is compatible with:

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'crayfishx-veritas', '0.0.4'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add crayfishx-veritas
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install crayfishx-veritas --version 0.0.4

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



crayfishx/veritas — version 0.0.4 Aug 2nd 2017


This module manages the installation and initial configuration of Veritas products. Curently only VCS (Veritas Cluster Server) is supported, but the goal is to use the same framework to install other applications from the same application suite.


Pre-installation requirements

VCS is shipped as a tarball containing RPM packages and an installer tool. There is also a supported method of installing the relevant RPM's from YUM and using the provided configuration tool and a resposne file to finish installation and configure the system. This module assumed you have already copied the RPM's from the tarball into their own YUM repository. In order to do this, follow steps 1 through 3 of the guide; Installing Veritas Cluster Server using yum (Adding an RPM group is optional and does not affect this module). You should not install the modules.

Pre-requisiste packages

A number of system packages are required, these should be installed before running this module

Redhat 6.6

  • glibc-2.12-1.149.el6.i686
  • glibc-2.12-1.149.el6.x86_64
  • ksh-20120801-21.el6.x86_64
  • libgcc-4.4.7-11.el6.i686
  • libgcc-4.4.7-11.el6.x86_64
  • libstdc++-4.4.7-11.el6.i686
  • libstdc++-4.4.7-11.el6.x86_64
  • perl-5.10.1-136.el6.x86_64

Note, for package requirements of other distros you can run installvcs -requirements from the tarball.

Single or multiple installation mode

VCS has the ability to perform installations simultaneously on multiple nodes. This feature requires the ability to ssh between the hosts in the cluster using a root SSH key. Alternativly the software can be installed independantly on each cluster node. This module supports both methods of operation. If you have root SSH key communication between the cluster nodes, then you can define the systems in the cluster using the system[] parameter and run puppet on one of the cluster nodes to configure all of them. Alternativly you can run Puppet on each node in the cluster with the heartbeat_links[] and lopri_link parameters defined. See the following examples:

With SSH keys, running Puppet once

class { 'veritas::vcs':
  systems =>  [
    { 'cluster-node-01' => { 
        'heartbeat_links' => [ 'eth3', 'eth7' ],
        'lopri_link'      => 'eth1',
    { 'cluster-node-02' => {
        'heartbeat_links' => ['eth3', 'eth7' ],
        'lopri_link'     => 'eth1',
  clustername => 'vcluster01',
  csgnetmask  => '',
  csgnic      => 'eth1',
  csgvip      => '',
  smtprecp    => '',
  smtpserver  => '',

Without SSH keys, running Puppet on each node

class { 'veritas::vcs':
  heartbeat_links   => [ 'eth3', 'eth7' ],
  lopri_link        => 'eth1'
  clustername       => 'cluster1',
  csgnetmask        => '',
  csgnic            => 'eth1',
  csgvip            => '',
  smtprecp          => '',
  smtpserver        => '',

In this example, the name of the node will be taken from $::hostname, to override this you can pass in the nodename parameter.