<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Feb 28, 2019 at 11:09 AM Scott Wood <<a href="mailto:woodystrash@hotmail.com">woodystrash@hotmail.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 dir="ltr">
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Hi folks,</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Big upgrade process in the works and I had some questions.  Our current infrastructure has 5 HA pairs of OSSs and arrays with an HA pair of management and metadata servers who also share an array, all running lustre 2.10.3.  Pretty standard stuff.  Our upgrade
 plan is as follows:</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
1) Deploy a new HA pair of OSSs with arrays populated with OSTs that are twice the size of our originals.</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
2) Follow the process in section 14.9 of the lustre docs to drain all OSTs in one of existing the HA pairs' arrays</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
3) Repopulate the first old pair of deactivated and drained arrays with new larger drives</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
4) Upgrade the offline OSSs from 2.10.3 to 2.10.latest?</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
5) Return them to service</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
6) Repeat steps 2-4 for the other 4 old HA pairs of OSSs and OSTs</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
I'd expect this would be doable without downtime as we'd only be taking arrays offline that have no objects on them, and we've added new arrays and OSSs before with no issues.  I have a few questions before we begin the process:</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br>
</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
1) My interpretation of the docs is that  we OK to install them with 2.10.6 (or 2.10.7, if it's out), as rolling upgrades withing X.Y are supported.  Is that correct?</div></div></blockquote><div><br></div><div>In theory, rolling upgrade should work, but generally recommended upgrade procedure is to stop filesystem and unmount all MDS and OSS, upgrade package and bring them up. This will prevent human errors during repeated per-server upgrade. </div><div>When it is done correctly, It will take not more than 2 hours.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
2) Until the whole process is complete, we'll have imbalanced OSTs.  I know that's not ideal, but is it all that big an issue </div></div></blockquote><div><br></div><div>Rolling upgrade will cause imbalance, but after long run, the files will be assigned will be evenly distributed. No need to worry about it on one-shot upgrade scenario. </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">3) When draining the OSTs of files, section 14.9.3, point 2.a. states that the lfs find |lfs migrate can take multiple OSTs as args, but I thought it would be better to run one instance of that per OST and distribute them across multiple clients .  Is that
 reasonable (and faster)?</div></div></blockquote><div><br></div><div>Parallel redistribute is generally faster than one-by-one. If the MDT can endure scanning load, run multiple migrate processes each for against one OST</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
4) When the drives are replaced with bigger ones, can the original OST configuration files be restored to them as described in Docs section 14.9.5, or due the the size mismatch, will that be bad?</div></div></blockquote><div><br></div><div>Since this process will treat objects as files, the configurations should go as same.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
5) What questions should I be asking that I haven't thought of?</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
 </div></div></blockquote><div><br></div><div>I do not know the size of OSTs to deal with, but I think migrate(empty)-replace-migrate-replace is really painful process as it will take long time. If circumtances allow, I suggest add all new OST arrays to OSS with new OST nums, migrate OST objects, deactivate and remove old OSTs.     </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
If that all goes well, and we did upgrade the OSSs to a newer 2.10.x, we'd follow it up with a migration of the MGT and MDT to one of the management servers, upgrade the other, fail them back, upgrade the second, and rebalance the MDT and MGT services back
 across the two.  We'd expect the usual pause in services as those migrate but other than that, fingers crossed, should all be good.  Are we missing anything?</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br></div></div></blockquote><div><br></div><div>If this plan is forced, rolling migrate and upgrade should be planned carefully. It will be better to set up correct procedure checklist by practicing on a virtual environment with identical versions.   </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Cheers</div>
<div style="font-family:Calibri,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Scott</div>
</div>

_______________________________________________<br>
lustre-discuss mailing list<br>
<a href="mailto:lustre-discuss@lists.lustre.org" target="_blank">lustre-discuss@lists.lustre.org</a><br>
<a href="http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org" rel="noreferrer" target="_blank">http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><font face="'courier new', monospace">Jongwoo Han</font><div><font face="'courier new', monospace">+82-505-227-6108</font></div></div></div>