<div dir="ltr">Rodolfo,<div><br></div><div>Thanks for the links. This is what is needed for ephemeral node!</div><div>What is about target cluster nodes? We need to manage their network configuration some how (assign IPs, set up bonding etc). MAAS is used as IPAM service in Airship 1.0 but it will be replaced in favor of Metal3. So we may want to have the same mechanism of ip allocation for ephemeral cluster and for target cluster.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Sep 20, 2019 at 7:47 PM PACHECO, RODOLFO J <<a href="mailto:rp2723@att.com">rp2723@att.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div lang="EN-US">
<div class="gmail-m_-8239148246176093550WordSection1">
<p class="MsoNormal">Forgot to add, Jerome’s POC has an example that looks closer to a CR expectations
<a href="https://github.com/keleustes/treasuremap/blob/kustomize/site/seaworthy/networks/common-addresses.yaml" target="_blank">
https://github.com/keleustes/treasuremap/blob/kustomize/site/seaworthy/networks/common-addresses.yaml</a><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Didot;color:rgb(148,17,0)">Regards</span><span style="font-size:10.5pt;color:black"><u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Bradley Hand";color:rgb(4,51,255)">Rodolfo Pacheco</span></b><span style="font-size:10.5pt;color:black"><u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><u></u> <u></u></span></p>
</div>
</div>
<p class="MsoNormal"><b><span style="font-size:10.5pt;color:black">Home/Office</span></b><span style="font-size:10.5pt;color:black"> 732 5337671</span><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(181,196,223);padding:3pt 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12pt;color:black">From: </span></b><span style="font-size:12pt;color:black">"PACHECO, RODOLFO J" <<a href="mailto:rp2723@att.com" target="_blank">rp2723@att.com</a>><br>
<b>Date: </b>Friday, September 20, 2019 at 11:40 AM<br>
<b>To: </b>Dmitry Ukov <<a href="mailto:dukov@mirantis.com" target="_blank">dukov@mirantis.com</a>>, "<a href="mailto:airship-discuss@lists.airshipit.org" target="_blank">airship-discuss@lists.airshipit.org</a>" <<a href="mailto:airship-discuss@lists.airshipit.org" target="_blank">airship-discuss@lists.airshipit.org</a>><br>
<b>Subject: </b>Re: [Airship-discuss] IPAM for Airship<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<p class="MsoNormal">Dmitry<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">In Airship 1.0 we had such a document . I expect for 2.0 we need an equivalent CR for this type of information<u></u><u></u></p>
<p class="MsoNormal">Is what we have been calling Catalog or DB like Document’s<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Here is an example from treasuremap<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal"><a href="https://opendev.org/airship/treasuremap/src/branch/master/site/seaworthy/networks/common-addresses.yaml" target="_blank">https://opendev.org/airship/treasuremap/src/branch/master/site/seaworthy/networks/common-addresses.yaml</a><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">I think that is what you are thinking about.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:Didot;color:rgb(148,17,0)">Regards</span><u></u><u></u></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> </span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-size:13.5pt;font-family:"Bradley Hand";color:rgb(4,51,255)">Rodolfo Pacheco</span></b><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"> </span><u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><b><span style="font-size:10.5pt;color:black">Home/Office</span></b><span style="font-size:10.5pt;color:black"> 732 5337671</span><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(181,196,223);padding:3pt 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12pt;color:black">From: </span></b><span style="font-size:12pt;color:black">Dmitry Ukov <<a href="mailto:dukov@mirantis.com" target="_blank">dukov@mirantis.com</a>><br>
<b>Date: </b>Friday, September 20, 2019 at 11:37 AM<br>
<b>To: </b>"<a href="mailto:airship-discuss@lists.airshipit.org" target="_blank">airship-discuss@lists.airshipit.org</a>" <<a href="mailto:airship-discuss@lists.airshipit.org" target="_blank">airship-discuss@lists.airshipit.org</a>><br>
<b>Subject: </b>[Airship-discuss] IPAM for Airship</span><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Hello, <u></u><u></u></p>
<div>
<p class="MsoNormal">I'm working on cloud-init generator as a part of airshipctl bootstrap isogen command.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">This cloud init will be used to deploy K8s on ephemeral node.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Following information is needed to set up ephemeral node:<u></u><u></u></p>
</div>
<div>
<ul type="disc">
<li class="MsoNormal">
IP address<u></u><u></u></li><li class="MsoNormal">
Net mask <u></u><u></u></li><li class="MsoNormal">
Default Gateway<u></u><u></u></li><li class="MsoNormal">
DNS server address<u></u><u></u></li></ul>
<div>
<p class="MsoNormal">There is no CRD/CR that actually has this information. For example BareMetalHost resource has IP and Netmask as a part of Status field (and determined dynamically by beremetal operator) and there is no info about Default GW and DNS.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">This actually leads us to the situation where we need to have IPAM (ip address management) operator and appropriate CRs/CRDs.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Unfortunately there is not much IPAM services that can act as K8s operator (I've found only one actually <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_inwinstack_ipam&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=Bjzj_RciGLj21LnNXoD5dw&m=c8c5DfwYKVyHfFy7VcpEn5JOI4G1u4qxCaCy9cDsgAI&s=d7costGUiy-0u1vBkTFbV8Gf4-BIyHE3PGYKZ49NK7k&e=" target="_blank">https://github.com/inwinstack/ipam</a> and
 it has limitations I guess). <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">As an alternative we have to implement IPAM as a part of Airship 2.0.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">What do you think?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<p class="MsoNormal">-- <u></u><u></u></p>
<div>
<div>
<div>
<p class="MsoNormal">Kind regards <u></u><u></u></p>
<div>
<p class="MsoNormal">Dmitry Ukov<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Principal Deployment Engineer<u></u><u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">Mirantis, Inc.<u></u><u></u></p>
</div>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>Kind regards<div>Dmitry Ukov</div><div>Principal Deployment Engineer</div><div><div>Mirantis, Inc.</div></div><div><br></div></div></div></div>