<html 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=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Aptos;
        panose-1:2 11 0 4 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:12.0pt;
        font-family:"Aptos",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Aptos",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal" style="margin-left:.5in"><span style="font-size:11.0pt">Here the failover is designed in such a way that the IP address moves (fails over) with OST and becomes active on the other server.<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span style="font-size:11.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">This is probably the source of your problem. I would suggest assigning unique IP addresses to each OSS.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Chris Horn<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p>&nbsp;</o:p></span></p>
<div id="mail-editor-reference-message-container">
<div>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="color:black">From:
</span></b><span style="color:black">lustre-discuss &lt;lustre-discuss-bounces@lists.lustre.org&gt; on behalf of Backer &lt;backer.kolo@gmail.com&gt;<br>
<b>Date: </b>Tuesday, November 5, 2024 at 10:19</span><span style="font-family:&quot;Arial&quot;,sans-serif;color:black">\u202f</span><span style="color:black">PM<br>
<b>To: </b>Backer via lustre-discuss &lt;lustre-discuss@lists.lustre.org&gt;, lustre-devel@lists.lustre.org &lt;lustre-devel@lists.lustre.org&gt;<br>
<b>Subject: </b>Re: [lustre-discuss] Lustre switching to loop back lnet interface when it is not desired<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal">Any ideas on how to avoid using 0@lo as failover_nids? Please see below.&nbsp;<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<div>
<p class="MsoNormal">On Tue, 5 Nov 2024 at 12:34, Backer &lt;<a href="mailto:backer.kolo@gmail.com">backer.kolo@gmail.com</a>&gt; wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">Hi,<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<p class="MsoNormal">Mounting the Lustre file file system on the OSS. Some of the OSTs are locally attached to the OSS.
<br>
<br>
The failover IP on the OST is &quot;10.99.100.152&quot;. It is a local lnet on the OSS. However, when the client mounts it, the import automatically changes to 0@lo. It is undesirable here because when this OST fails over to another server, the client is still trying
 to connect to 0@lo while it is no longer on the same host. This makes the client fs mount hangs for ever. &nbsp;<br>
<br>
Here the failover is designed in such a way that the IP address moves (fails over) with OST and becomes active on the other server.
<br>
<br>
How can I make the import pointing to the real IP and not the loopback? (so that the failover works)<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
<p class="MsoNormal"><span style="font-family:&quot;Courier New&quot;">[oss000 ~]$ lfs df<br>
UUID &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1K-blocks &nbsp; &nbsp; &nbsp; &nbsp;Used &nbsp; Available Use% Mounted on<br>
fs-MDT0000_UUID &nbsp; &nbsp; 29068444 &nbsp; &nbsp; &nbsp; 25692 &nbsp; &nbsp;26422344 &nbsp; 1% /mnt/fs[MDT:0]<br>
fs-OST0000_UUID &nbsp; &nbsp; 50541812 &nbsp; &nbsp;30160292 &nbsp; &nbsp;17743696 &nbsp;63% /mnt/fs[OST:0]<br>
fs-OST0001_UUID &nbsp; &nbsp; 50541812 &nbsp; &nbsp;29301740 &nbsp; &nbsp;18602248 &nbsp;62% /mnt/fs[OST:1]<br>
fs-OST0002_UUID &nbsp; &nbsp; 50541812 &nbsp; &nbsp;29356508 &nbsp; &nbsp;18547480 &nbsp;62% /mnt/fs[OST:2]<br>
fs-OST0003_UUID &nbsp; &nbsp; 50541812 &nbsp; &nbsp; 8822980 &nbsp; &nbsp;39081008 &nbsp;19% /mnt/fs[OST:3]<br>
<br>
filesystem_summary: &nbsp; &nbsp;202167248 &nbsp; &nbsp;97641520 &nbsp; &nbsp;93974432 &nbsp;51% /mnt/fs<br>
<br>
[oss000 ~]$ df -h<br>
Filesystem &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Size &nbsp;Used Avail Use% Mounted on<br>
devtmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 30G &nbsp; &nbsp; 0 &nbsp; 30G &nbsp; 0% /dev<br>
tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;30G &nbsp;8.1M &nbsp; 30G &nbsp; 1% /dev/shm<br>
tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;30G &nbsp; 25M &nbsp; 30G &nbsp; 1% /run<br>
tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;30G &nbsp; &nbsp; 0 &nbsp; 30G &nbsp; 0% /sys/fs/cgroup<br>
/dev/mapper/ocivolume-root &nbsp; 36G &nbsp; 17G &nbsp; 19G &nbsp;48% /<br>
/dev/sdc2 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1014M &nbsp;637M &nbsp;378M &nbsp;63% /boot<br>
/dev/mapper/ocivolume-oled &nbsp; 10G &nbsp;2.5G &nbsp;7.6G &nbsp;25% /var/oled<br>
/dev/sdc1 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 100M &nbsp;5.1M &nbsp; 95M &nbsp; 6% /boot/efi<br>
tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 5.9G &nbsp; &nbsp; 0 &nbsp;5.9G &nbsp; 0% /run/user/987<br>
tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 5.9G &nbsp; &nbsp; 0 &nbsp;5.9G &nbsp; 0% /run/user/0<br>
/dev/sdb &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 49G &nbsp; 28G &nbsp; 18G &nbsp;62% /fs-OST0001<br>
/dev/sda &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 49G &nbsp; 29G &nbsp; 17G &nbsp;63% /fs-OST0000<br>
tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 5.9G &nbsp; &nbsp; 0 &nbsp;5.9G &nbsp; 0% /run/user/1000<br>
10.99.100.221@tcp1:/fs &nbsp;193G &nbsp; 94G &nbsp; 90G &nbsp;51% /mnt/fs<br>
<br>
[oss000 ~]$ sudo tunefs.lustre --dryrun /dev/sda<br>
checking for existing Lustre data: found<br>
<br>
&nbsp; &nbsp;Read previous values:<br>
Target: &nbsp; &nbsp; fs-OST0000<br>
Index: &nbsp; &nbsp; &nbsp;0<br>
Lustre FS: &nbsp;fs<br>
Mount type: ldiskfs<br>
Flags: &nbsp; &nbsp; &nbsp;0x1002<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (OST no_primnode )<br>
Persistent mount opts: ,errors=remount-ro<br>
Parameters: mgsnode=10.99.100.221@tcp1 failover.node=10.99.100.152@tcp1,10.99.100.152@tcp1<br>
<br>
<br>
&nbsp; &nbsp;Permanent disk data:<br>
Target: &nbsp; &nbsp; fs-OST0000<br>
Index: &nbsp; &nbsp; &nbsp;0<br>
Lustre FS: &nbsp;fs<br>
Mount type: ldiskfs<br>
Flags: &nbsp; &nbsp; &nbsp;0x1002<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; (OST no_primnode )<br>
Persistent mount opts: ,errors=remount-ro<br>
Parameters: mgsnode=10.99.100.221@tcp1 failover.node=10.99.100.152@tcp1,10.99.100.152@tcp1<br>
<br>
exiting before disk write.<br>
<br>
<br>
[oss000 proc]# cat /proc/fs/lustre/osc/fs-OST0000-osc-ffff89c57672e000/import<br>
import:<br>
&nbsp; &nbsp; name: fs-OST0000-osc-ffff89c57672e000<br>
&nbsp; &nbsp; target: fs-OST0000_UUID<br>
&nbsp; &nbsp; state: IDLE<br>
&nbsp; &nbsp; connect_flags: [ write_grant, server_lock, version, request_portal, max_byte_per_rpc, early_lock_cancel, adaptive_timeouts, lru_resize, alt_checksum_algorithm, fid_is_enabled, version_recovery, grant_shrink, full20, layout_lock, 64bithash, object_max_bytes,
 jobstats, einprogress, grant_param, lvb_type, short_io, lfsck, bulk_mbits, second_flags, lockaheadv2, increasing_xid, client_encryption, lseek, reply_mbits ]<br>
&nbsp; &nbsp; connect_data:<br>
&nbsp; &nbsp; &nbsp; &nbsp;flags: 0xa0425af2e3440078<br>
&nbsp; &nbsp; &nbsp; &nbsp;instance: 39<br>
&nbsp; &nbsp; &nbsp; &nbsp;target_version: 2.15.3.0<br>
&nbsp; &nbsp; &nbsp; &nbsp;initial_grant: 8437760<br>
&nbsp; &nbsp; &nbsp; &nbsp;max_brw_size: 4194304<br>
&nbsp; &nbsp; &nbsp; &nbsp;grant_block_size: 4096<br>
&nbsp; &nbsp; &nbsp; &nbsp;grant_inode_size: 32<br>
&nbsp; &nbsp; &nbsp; &nbsp;grant_max_extent_size: 67108864<br>
&nbsp; &nbsp; &nbsp; &nbsp;grant_extent_tax: 24576<br>
&nbsp; &nbsp; &nbsp; &nbsp;cksum_types: 0xf7<br>
&nbsp; &nbsp; &nbsp; &nbsp;max_object_bytes: 17592186040320<br>
&nbsp; &nbsp; import_flags: [ replayable, pingable, connect_tried ]<br>
&nbsp; &nbsp; connection:<br>
&nbsp; &nbsp; &nbsp; &nbsp;failover_nids: [ 0@lo, 0@lo ]<br>
&nbsp; &nbsp; &nbsp; &nbsp;current_connection: 0@lo<br>
&nbsp; &nbsp; &nbsp; &nbsp;connection_attempts: 1<br>
&nbsp; &nbsp; &nbsp; &nbsp;generation: 1<br>
&nbsp; &nbsp; &nbsp; &nbsp;in-progress_invalidations: 0<br>
&nbsp; &nbsp; &nbsp; &nbsp;idle: 36 sec<br>
&nbsp; &nbsp; rpcs:<br>
&nbsp; &nbsp; &nbsp; &nbsp;inflight: 0<br>
&nbsp; &nbsp; &nbsp; &nbsp;unregistering: 0<br>
&nbsp; &nbsp; &nbsp; &nbsp;timeouts: 0<br>
&nbsp; &nbsp; &nbsp; &nbsp;avg_waittime: 2627 usec<br>
&nbsp; &nbsp; service_estimates:<br>
&nbsp; &nbsp; &nbsp; &nbsp;services: 1 sec<br>
&nbsp; &nbsp; &nbsp; &nbsp;network: 1 sec<br>
&nbsp; &nbsp; transactions:<br>
&nbsp; &nbsp; &nbsp; &nbsp;last_replay: 0<br>
&nbsp; &nbsp; &nbsp; &nbsp;peer_committed: 0<br>
&nbsp; &nbsp; &nbsp; &nbsp;last_checked: 0</span><o:p></o:p></p>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</body>
</html>