Forge Home

ucarp

Module to configure one or multiple Ucarp interfaces

7,188 downloads

1,864 latest version

5.0 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.

Support the Puppet Community by contributing to this module

You are welcome to contribute to this module by suggesting new features, currency updates, or fixes. Every contribution is valuable to help ensure that the module remains compatible with the latest Puppet versions and continues to meet community needs. Complete the following steps:

  1. Review the module’s contribution guidelines and any licenses. Ensure that your planned contribution aligns with the author’s standards and any legal requirements.
  2. Fork the repository on GitHub, make changes on a branch of your fork, and submit a pull request. The pull request must clearly document your proposed change.

For questions about updating the module, contact the module’s author.

Version information

  • 0.3.0 (latest)
  • 0.2.2
  • 0.2.1
  • 0.2.0
  • 0.1.0
released Nov 26th 2019
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.5.0 < 7.0.0

Start using this module

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

Add this module to your Puppetfile:

mod 'yoshz-ucarp', '0.3.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add yoshz-ucarp
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install yoshz-ucarp --version 0.3.0

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.

Download

Documentation

yoshz/ucarp — version 0.3.0 Nov 26th 2019

ucarp

Table of Contents

  1. Description
  2. Setup - The basics of getting started with nimblestreamer
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module

Description

This module installs and configures ucarp on CentOS 7.

It allows you set up multiple virtual ip addresses with automatic failover by using ucarp.

Setup

puppet module install yoshz-ucarp

Usage

Add the module to node configuration:

node /host*/ {
  class { '::ucarp':
    bind_interface => 'ens160',
    password       => 'ProtectedPassword',
  }
  ucarp::host { '001':
    bind_interface  => 'ens160',
    vip_address     => '192.168.0.101',
    source_address  => '192.168.0.1',
    master_hostname => 'host001',
  }
  ucarp::host { '002':
    bind_interface  => 'ens160',
    vip_address     => '192.168.0.102',
    source_address  => '192.168.0.2',
    master_hostname => 'host002',
  }
}

Or add the following hiera configuration to your host group

ucarp::bind_interface: "ens160"
ucarp::password: ProtectedPassword
ucarp::hosts:
  '001':
    vip_address: 192.168.0.101
    master_hostname: host001
  '002':
    vip_address: 192.168.0.102
    master_hostname: host002
  '003':
    vip_address: 192.168.0.103
    master_hostname: host003
  '004':
    vip_address: 192.168.0.104
    master_hostname: host004

Reference

Parameters

password

Password used by all ucarp servers. Can be set as parameter on ucarp as default for all hosts.

bind_interface

Network interface to bind the virtual ip address. Can be set as parameter on ucarp as default for all hosts.

Host Parameters

Per host you can override the default parameters and configure the following parameters:

vip_address

Virtual ip address that is assigned by ucarp

source_address

The actual ip address of the current server. Defaults to $::ipaddress.

master_hostname

The hostname of the master server that should have the virtual ip address assigned. Defaults to $::hostname.

master_down_script

Override down script on master node.

master_up_script

Override up script on master node.

backup_down_script

Override down script on backup nodes.

backup_up_script

Override up script on backup nodes.

Limitations

Only CentOS 7 is tested currently.

Development

You are free to fork this repository and support to additional OS or configuration options.