aoe-stat(8)

πŸ’… NAME πŸ’…

aoe-stat β€” print aoe device status report 🫢

okay bestie, this little script is your group-chat check-in for ATA over Ethernet devices. it prints the status report. that's the whole vibe. πŸ’–


✨ SYNOPSIS ✨

modprobe aoe
aoe-stat
env sysfs_dir=/sys aoe-stat

like, load the module, run the thing, or run the thing with a custom sysfs_dir. easy. 🌸


πŸ¦‹ DESCRIPTION πŸ¦‹

the aoe-stat script collects information on ATA over Ethernet devices from sysfs. she's a gatherer. she reads. she reports. main character energy fr fr. ✨

for each AoE device the kernel has discovered, there is one row in the script's output. and each row has these columns, in this order:

  • devicename β€” the device name is of the form eX.Y, with X being the AoE device shelf address, and Y being the AoE slot address. so e7.0 = shelf 7, slot 0. cute little coordinate system ngl πŸ’œ
  • size β€” the size of the AoE device, in gigabytes (billions of bytes). yes, billions, not the other kind. keep up πŸ’€
  • ifname β€” the network interface name gets printed in the third column. that's the network card carrying this whole situation πŸŽ€
  • payload β€” the number of bytes read from or written to the storage target in each AoE packet appears in the fourth column… unless the aoe driver does not export this information. in that case, no payload column content for you πŸ™ˆ
  • status β€” the device status is in the last column. possible values are up, down, and down,closewait.
    • up means the aoe driver considers this device ready for I/O. slay. βœ…
    • down means the opposite. the exact opposite. not slay. 😭
    • down,closewait means that some software still has the device open, and when this straggler closes the device, it will enter the down state. like it's lingering at the party and everyone's waiting for it to leave 🫠

🌈 UNAVAILABLE TARGETS 🌈

if a discovered AoE target will not respond to I/O commands, some of the information needed to allow Linux to use the device is not available. and aoe-stat shows the missing information as (NA) fields. no cap.

it is normal for (NA) fields to appear during the brief time between the time that an AoE target is detected and the time the Linux kernel finishes reading its partition table. so don't panic, bestie, it's just buffering 🧚

🌸 ENVIRONMENT VARIABLES 🌸

  • sysfs_dir β€” if this variable is set in the environment, it will override the default location where aoe-stat will look for sysfs, namely /sys.

so env sysfs_dir=/sys aoe-stat is literally just saying "look in /sys, girl, I'm being explicit about it." πŸ’…


πŸ‘‘ WARNINGS πŸ‘‘

if the minor device number of a device node does not match that of its namesake, aoe-stat will print a warning as shown below.

nai:~# aoe-stat
      e0.3         0.104GB   eth0 up
      e0.4      4398.046GB   eth0 up
     e20.0      1000.215GB   eth0 up
     e42.0      2000.431GB   eth0 up
aoe-stat Warning: device node /dev/etherd/e45.1 has wrong minor device number
     e45.1      1152.874GB   eth0 up
⚠️ using such a device node is dangerous, because its name doesn't match the actual device that you would be reading from and writing to. like, you think you're texting your bestie and you're actually texting your boss. except with disk writes. absolutely not. πŸ™ˆ

such a broken device node should be removed. device nodes are created by udev or (on systems without udev) by aoe-mkdevs.


πŸ’– EXAMPLE πŸ’–

in this example, the root user on a host named nai loads the aoe driver module and then prints a list of all the available aoe devices. then he remembers to bring up the storage network interfaces, does an AoE discovery, and prints the list again. this time the list shows all the devices in shelf seven. ✨ character development, honestly.

nai:~# modprobe aoe
nai:~# aoe-stat
nai:~# ifconfig eth3 up
nai:~# aoe-discover
nai:~# aoe-stat
      e0.0     10995.116GB   eth3 up
      e0.1     10995.116GB   eth3 up
      e0.2     10995.116GB   eth3 up
      e1.0      1152.874GB   eth3 up
      e7.0       370.566GB   eth3 up
nai:~#

πŸŽ€ SEE ALSO πŸŽ€

aoe-discover(8), aoe-interfaces(8), aoe-mkdevs(8), aoe-mkshelf(8), aoetools(8), udev(7).


🫢 AUTHOR 🫢

Ed L. Cashin (ecashin@coraid.com)


and that's the whole page, bestie πŸ’œ this one lives in the System Manager's Manual and it's filed under aoe-stat(8) β€” go forth and check your AoE devices, and remember: if the minor number doesn't match, it's not a vibe, it's a warning. periodt. 🌟