<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p
{mso-style-priority:99;
margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
{mso-style-priority:99;
mso-style-link:"Balloon Text Char";
margin:0in;
margin-bottom:.0001pt;
font-size:8.0pt;
font-family:"Tahoma","sans-serif";}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:windowtext;}
span.BalloonTextChar
{mso-style-name:"Balloon Text Char";
mso-style-priority:99;
mso-style-link:"Balloon Text";
font-family:"Tahoma","sans-serif";}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">I’m using that setup as well: Pacemaker with a replicated postgres lease database. It works quite well. There’s only one missing piece: a way to keep the configuration in
sync across nodes. In the database, perhaps? (aside: the configuration is quite fluid in our production environment, changing multiple times per day).<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Kea-users [mailto:kea-users-bounces@lists.isc.org]
<b>On Behalf Of </b>Hugh Connolly<br>
<b>Sent:</b> Wednesday, November 22, 2017 8:34 AM<br>
<b>To:</b> Klaus Steden; SoupNazi izaNpuoS<br>
<b>Cc:</b> KEA-Users (kea-users@lists.isc.org)<br>
<b>Subject:</b> Re: [Kea-users] DHCP redundancy [faked-from]<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div id="divtagdefaultwrapper">
<p><span style="font-family:"Calibri","sans-serif";color:black">I'm working on something similar.<o:p></o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black">It uses 2+ Kea instances with the postgresql lease db in Amazons RDS. <o:p></o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black">To manage the VIP the cluster uses ocf_heartbeat_IPaddr2 (pacemaker)<o:p></o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black">Works quite well thus far. <o:p></o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black">What do you think?<o:p></o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black">One improvement (beyond in-housing the Postgresql cluster) that comes to mind is better fencing in PCS to restart the service or shutdown the node if there is a problem. Something beyond just checking
that the service is running, maybe checking the ports?<o:p></o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black"><o:p> </o:p></span></p>
<p><span style="font-family:"Calibri","sans-serif";color:black">Was fairly straight forward to setup<o:p></o:p></span></p>
</div>
<div class="MsoNormal" align="center" style="text-align:center">
<hr size="2" width="98%" align="center">
</div>
<div id="divRplyFwdMsg">
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:black"> Kea-users <<a href="mailto:kea-users-bounces@lists.isc.org">kea-users-bounces@lists.isc.org</a>>
on behalf of Klaus Steden <<a href="mailto:klausfiend@gmail.com">klausfiend@gmail.com</a>><br>
<b>Sent:</b> Friday, November 17, 2017 4:14:00 PM<br>
<b>To:</b> SoupNazi izaNpuoS<br>
<b>Cc:</b> KEA-Users (<a href="mailto:kea-users@lists.isc.org">kea-users@lists.isc.org</a>)<br>
<b>Subject:</b> Re: [Kea-users] DHCP redundancy</span> <o:p></o:p></p>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Our implementation uses a single database backend (which is itself HA, but the endpoint is a VIP, so it appears to be just a single host) with a different server per environment running a Kea server. It seems they coexist quite happily
as long as they're not trying to both handle the same row/table, which means each environment only uses a single IP helper.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">We use Monit on the servers themselves to keep the Kea daemon running, since as noted it doesn't retry when it encounters an error talking to the database; the whole system is generally fairly resilient, FWIW, even if it's less than industrial
strength.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">cheers,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Klaus<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Fri, Nov 17, 2017 at 6:48 AM, SoupNazi izaNpuoS <<a href="mailto:soupnazi34@gmail.com" target="_blank">soupnazi34@gmail.com</a>> wrote:<o:p></o:p></p>
<div>
<p class="MsoNormal">Not at all. It does split the pools, automatically. You just need to make sure you don't use more than 90% of your addresses as it may have difficulty transferring IPs amongst the devices if you do (say if the secondary runs out, the
primary may not be able to send IPs to it).<o:p></o:p></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Fri, Nov 17, 2017 at 9:44 AM, John Ratliff <<a href="mailto:john@bluemarble.net" target="_blank">john@bluemarble.net</a>> wrote:<o:p></o:p></p>
<p class="MsoNormal">On 11/17/2017 9:37 AM, SoupNazi izaNpuoS wrote:<o:p></o:p></p>
<p class="MsoNormal">Out of curiosity, was there a reason you didn't use the built in failover configuration in ISC DHCP?<o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
It's extremely confusing to me. Perhaps my understanding is flawed, but as I understand it, you need to split your pool and have one side responsible for their individual split. Our pools do not have enough spare IPs to allow that. It just never seemed work
the effort.<br>
<br>
--John<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal"><br>
On Fri, Nov 17, 2017 at 9:25 AM, John Ratliff <<a href="mailto:john@bluemarble.net" target="_blank">john@bluemarble.net</a> <mailto:<a href="mailto:john@bluemarble.net" target="_blank">john@bluemarble.net</a>>> wrote:<br>
<br>
I'm seeking best practice advice on how to setup DHCP server<br>
redundancy with kea.<br>
<br>
With ISC DHCP, I used VRRP with two servers and configured it to<br>
send the dhcp-server-identifier option as the VRRP IP. Then I would<br>
run a script that sync'd the lease database automatically via cron.<br>
<br>
This process is messy and error prone, so I would like to use kea<br>
instead.<br>
<br>
The subnets I am allocating via DHCP is not the same subnet that the<br>
server is in, so we use ip-helper statements to forward DHCP<br>
requests to the server.<br>
<br>
I have kea using mySQL as a lease backend. The mySQL server is not<br>
on the same machine as kea.<br>
<br>
My first thought was to use VRRP and supply the<br>
dhcp-server-identifier option again. I ran into a problem though<br>
that if kea started before VRRP, it wouldn't listen on the VRRP IP.<br>
There is probably a solution to that, but I don't have one yet.<br>
<br>
So then I changed the router configuration to use two ip-helper<br>
statements, sending the request to both primary and secondary kea<br>
servers; I also removed the dhcp-server-identifier option. This<br>
seems to work.<br>
<br>
Is this a reasonable setup for DHCP redundancy with kea? Is there a<br>
better option I might want to consider? Are there any concerns I<br>
should be aware of with both servers being active?<br>
<br>
Thanks.<br>
_______________________________________________<br>
Kea-users mailing list<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"> <a href="mailto:Kea-users@lists.isc.org" target="_blank">
Kea-users@lists.isc.org</a> <mailto:<a href="mailto:Kea-users@lists.isc.org" target="_blank">Kea-users@lists.isc.org</a>><br>
<a href="https://lists.isc.org/mailman/listinfo/kea-users" target="_blank">https://lists.isc.org/mailman/listinfo/kea-users</a><br>
<<a href="https://lists.isc.org/mailman/listinfo/kea-users" target="_blank">https://lists.isc.org/mailman/listinfo/kea-users</a>><br>
<br>
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
_______________________________________________<br>
Kea-users mailing list<br>
<a href="mailto:Kea-users@lists.isc.org">Kea-users@lists.isc.org</a><br>
<a href="https://lists.isc.org/mailman/listinfo/kea-users" target="_blank">https://lists.isc.org/mailman/listinfo/kea-users</a><o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</body>
</html>