LCTL-NODEMAP_ADD_RANGE(8)

πŸ“¦ version 2.17.58, in ubuntu stonking

✨ NAME ✨

lctl-nodemap_add_range β€” bestie, this is the one that defines a whole range of NIDs for a nodemap πŸ’–

It lives in the Lustre Configuration Utilities, manual section 8, so if you ever need the receipts, that's where you look πŸŽ€


🌸 SYNOPSIS 🌸

Two ways to say the same thing, pick your fighter:

lctl nodemap_add_range

or

lctl nodemap add_range --name NODEMAP_NAME --range NID_RANGE

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so here's the tea β˜• nodemap_add_range takes a range of NIDs and drops it into a nodemap that already exists. Not a new one, an existing one, mkay?

Huge caveat, no cap: that NID range cannot overlap with a NID range that's already chillin' in there β€” the only exception is a dynamic overlay range. So don't try to double-book, okay? πŸ™ˆ

And here's the fun part β€” the moment you add that range, every client whose NID falls inside it gets moved into that nodemap 🚚✨ and from then on, every future RPC they send gets judged by whatever properties you configured for that nodemap. It's giving "you live here now, these are the house rules" πŸ’…


πŸŽ€ OPTIONS πŸŽ€

  • --name NODEMAP_NAME β€” the name of the nodemap you're adding this range to. Like, which one? Tell it. πŸ’œ
  • --range NID_RANGE β€” the NID range being added to the nodemap. The syntax is the exact same as the rootsquash syntax, with one extra little rule: the range has to be contiguous. No gaps, no skipping around, it's a straight line bestie ⭐

πŸ’« Formal LNet NID Range Definition πŸ’«

Yep, we're doing grammar. It's giving math class but make it cute 🌈 here's the whole thing, verbatim, don't panic:

NID_RANGE    :== ADDR_RANGE@NET
ADDR_RANGE   :== '*' | NETMASK | IPV6_ADDR | IPADDR_RANGE | NUM_RANGE
IPADDR_RANGE :== NUM_RANGE.NUM_RANGE.NUM_RANGE.NUM_RANGE
NUM_RANGE    :== NUMBER | EXPR_LIST
EXPR_LIST    :== '['RANGE_EXPR[,RANGE_EXPR]']'
RANGE_EXPR   :== NUMBER | MIN-MAX | MIN-MAX/SKIP
NET          :== NET_TYPE[NUMBER]
NET_TYPE     :== "lo" | "tcp" | "o2ib" | "ptlf" | "gni" | "gip" | "kfi"
NUMBER       :== NONNEGATIVE_DECIMAL | HEXADECIMAL

A few translations for the girlies who don't speak BNF 🫢

  • NETMASK is an IPv4 or IPv6 network mask in CIDR notation.
  • IPV6_ADDR is a single IPv6 address.
  • MIN-MAX/SKIP means a sequence of numbers starting at MIN and incrementing by SKIP each time until it's no larger than MAX.
  • MIN-MAX is literally just MIN-MAX/1. Same thing, shorter vibe ✨

πŸ”₯ EXAMPLES πŸ”₯

Look at her go πŸ‘‘

# lctl nodemap_add_range --name remotesite --range 192.168.1.[1-254]@tcp
# lctl nodemap_add_range --name othersite --range 192.168.2.[1-254]@tcp

πŸ‘‘ AVAILABILITY πŸ‘‘

lctl nodemap_add_range has been part of the lustre(7) filesystem package since release 2.6.0. Been here. Iconic. Periodt πŸ’…


🌈 SEE ALSO 🌈

Go read these next, bestie, they're all in the family 🧚


Ok that's the whole page, you ate that πŸ“ This one's stamped Lustre, dated 2024-08-14, so if you're reading it in your terminal and the vibes are immaculate, that's why πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from