Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GDNSD-PLUGIN-SIMPLEFO(8)	     gdnsd	      GDNSD-PLUGIN-SIMPLEFO(8)

NAME
       gdnsd-plugin-simplefo - gdnsd plugin for	simple primary->secondary
       address failover

SYNOPSIS
       Example gdnsd config fragment using this	plugin:

	 plugins => {
	   simplefo => {
	     service_types => [	www ],
	     pubwww => {
	       primary => 192.0.2.1
	       secondary => 192.0.2.100
	     }
	     www6 => {
	       primary => 2001:DB8::1
	       secondary => 2001:DB8::100
	     }
	     mixed => {
	       service_types =>	[ www, xmpp ]
	       addrs_v4	=> {
		 primary => 192.0.2.1
		 secondary => 192.0.2.100
	       }
	       addrs_v6	=> {
		 service_types => up
		 primary => 2001:DB8::1
		 secondary => 2001:DB8::100
	       }
	     }
	   }
	 }

       Example zonefile	RRs:

	 www 180 DYNA simplefo!pubwww
	 www6 180 DYNA simplefo!www6
	 mix 180 DYNA simplefo!mixed

DESCRIPTION
       gdnsd-plugin-simplefo is	designed to do simple active/passive failover
       between one primary address and one secondary address.  The status of
       the addresses are checked with standard gdnsd "service_types"
       monitoring.  If you need	more than a simple two-address failover	list,
       the "metafo" plugin is more appropriate.

TOP-LEVEL PLUGIN CONFIG
       At the top level	of the plugin's	configuration stanza, the special
       parameter "service_types" is supported. These sets the default per-
       resource	"service_types"	for all	resources.  The	default	default
       "service_types" is "[ up	]", which simply sets them all "UP"
       statically.

       The rest	of the hash entries at the top level are the names of the
       resources you define.  Each resource gets a configuration hash of its
       own for containing resource-specific address info.

RESOURCE CONFIG
       Within a	resource, "service_types" is again supported, to set the
       monitored service type(s) for this specific resource.

       If "addrs_v4" is	defined, it must be a hash containing two keys:
       "primary" and "secondary", each of which	has an IPv4 string address
       value.

       Similarly, if "addrs_v6"	is defined, it must be a hash containing two
       keys: "primary" and "secondary",	each of	which has an IPv6 string
       address value.

       If neither of those two sub-stanzas is defined, you must	define a
       single pair of "primary"	and "secondary"	addresses for the whole
       resource.  These	can be of either address family, so long as they are
       both the	same family.

       When "addrs_v4" and/or "addrs_v6" are used, "service_types" can also be
       overridden within each, for different behavior per-address-family (e.g.
       force one protocol always up/down).

OPERATIONAL MECHANICS
       For each	address	family for which you have supplied data, the following
       logic is	applied	independently:

       o   First, the worst monitored state of all "service_types" checks for
	   the primary address is obtained.  If	this state is "UP", the
	   primary address is used.

       o   If the primary address was "DOWN", the secondary address is
	   checked: If the secondary is	"UP", it will be used.	If the
	   secondary is	also "DOWN", then the primary is used.

       o   In any case other than the primary being exactly "UP", the response
	   RR-set TTL from the zonefile	will be	cut in half for	both address
	   families.

       If both "primary" and "secondary" were "DOWN" for either	address
       family, this plugin will	signal total resource failure to any upstream
       module (geoip or	metafo).  The cutting of the TTL only happens once for
       all address RRs,	even if	both families had a non-"UP" primary.

SEE ALSO
       gdnsd.config(5),	gdnsd.zonefile(5), gdnsd(8), gdnsd-plugin-multifo(8)

       The gdnsd manual.

COPYRIGHT AND LICENSE
       Copyright (c) 2012 Brandon L Black <blblack@gmail.com>

       This file is part of gdnsd.

       gdnsd is	free software: you can redistribute it and/or modify it	under
       the terms of the	GNU General Public License as published	by the Free
       Software	Foundation, either version 3 of	the License, or	(at your
       option) any later version.

       gdnsd is	distributed in the hope	that it	will be	useful,	but WITHOUT
       ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       FITNESS FOR A PARTICULAR	PURPOSE.  See the GNU General Public License
       for more	details.

       You should have received	a copy of the GNU General Public License along
       with gdnsd.  If not, see	<http://www.gnu.org/licenses/>.

gdnsd 2.2.4			  2017-05-18	      GDNSD-PLUGIN-SIMPLEFO(8)

NAME | SYNOPSIS | DESCRIPTION | TOP-LEVEL PLUGIN CONFIG | RESOURCE CONFIG | OPERATIONAL MECHANICS | SEE ALSO | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=gdnsd-plugin-simplefo&sektion=8&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help