FENCE_AGENT(8)

πŸ“¦
version 4.17.0 Β· 3 versions
, in debian trixie, fedora 43, fedora 44, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– FENCE_NETIO β€” okay bestie, let's talk power fencing πŸ’–

So this is a page from the Fence Agent manual (section 8, system manager's manual, iykyk), and the star of the show is fence_netio. Grab a snack, we're doing this. πŸ“


✨ NAME ✨

fence_netio β€” the Power Fencing agent for the Koukaam NETIO-230B. That's it, that's the name. πŸ’…


🌸 DESCRIPTION 🌸

Okay so fence_netio is a Power Fencing agent, and it's the one you pair with a Koukaam NETIO-230B Power Distribution Unit. The way it works: it logs into the device over telnet and reboots whichever outlet you point at. No cap. πŸ”₯

🚨 Real talk though: do not leave lengthy telnet connections hanging around while a GFS cluster is running. Because that connection will block any necessary fencing actions, and blocking fencing is like… the whole opposite of the vibe. πŸ™ˆ

This agent takes options on the command line and from stdin, bestie β€” both. When fenced execs the agent, it sends the parameters through stdin. But you can also just run the agent by itself with command line options, which is lowkey perfect for testing and for flipping outlets on or off from scripts. Main character energy for a shell script. πŸ‘‘

Vendor URL: http://www.koukaam.se/ 🌈


πŸŽ€ PARAMETERS πŸŽ€

One bullet per option, no skipping, we're thorough in this house. πŸ’–

  • -o, --action=[action] β€” the fencing action. (Default Value: reboot)
  • -a, --ip=[ip] β€” IP address or hostname of the fencing device. This parameter is always required. Like, always. πŸ‘€
  • -u, --ipport=[port] β€” TCP/UDP port used for the connection with the device. (Default Value: 1234)
  • -p, --password=[password] β€” the login password or passphrase. 🀫
  • -S, --password-script=[script] β€” a script to run to go retrieve that password for you.
  • -n, --plug=[id] β€” physical plug number on the device, or the UUID, or the identification of the machine. This parameter is always required. fr fr.
  • -l, --username=[name] β€” the login name. This parameter is always required. periodt.
  • -q, --quiet β€” disables logging to stderr. It does not affect --verbose, --debug-file, or logging to syslog. So don't get it twisted. πŸ’…
  • -v, --verbose β€” verbose mode. You can stack multiple -v flags on the command line (like -vvv, go off) to crank the verbosity up. ✨
  • --verbose-level β€” how much debugging detail lands in the output. It defaults to the number of --verbose flags you specified on the command line, or to 1 if verbose=1 in a stonith device configuration (i.e., on stdin).
  • -D, --debug-file=[debugfile] β€” write debug information into the given file. πŸ“
  • -V, --version β€” display version information and exit. Bye! πŸ‘‹
  • -h, --help β€” display help and exit. 🫢
  • --plug-separator=[char] β€” the separator for the plug parameter when you're specifying more than 1 plug. (Default Value: ,)
  • -C, --separator=[char] β€” the separator for the CSV created by the list operation. (Default Value: ,)
  • --delay=[seconds] β€” wait X seconds before fencing is started. (Default Value: 0)
  • --disable-timeout=[true/false] β€” disable timeout (true/false). (default: true when run from Pacemaker 2.0+)
  • --login-timeout=[seconds] β€” wait X seconds for the cmd prompt after login. (Default Value: 5)
  • --power-timeout=[seconds] β€” test X seconds for status change after ON/OFF. (Default Value: 20)
  • --power-wait=[seconds] β€” wait X seconds after issuing ON/OFF. (Default Value: 0)
  • --shell-timeout=[seconds] β€” wait X seconds for the cmd prompt after issuing a command. (Default Value: 3)
  • --stonith-status-sleep=[seconds] β€” sleep X seconds between status calls during a STONITH action. (Default Value: 1)
  • --retry-on=[attempts] β€” how many attempts to retry power on. (Default Value: 1)
  • --telnet-path=[path] β€” path to the telnet binary. (Default Value: /usr/bin/telnet)

πŸ”₯ ACTIONS πŸ”₯

Here's the menu of things it can do, bestie. Pick your fighter. πŸ₯Š

  • on β€” power on the machine. ⚑
  • off β€” power off the machine. πŸ’€
  • reboot β€” reboot the machine. πŸ”„
  • status β€” this returns the status of the plug / virtual machine.
  • list β€” list available plugs with aliases / virtual machines, if there's support for more than one device. Otherwise it returns N/A. Sorry babe. πŸ™ˆ
  • list-status β€” list available plugs with aliases / virtual machines and their power state, if it can be obtained without additional commands.
  • monitor β€” check the health of the fence device. 🩺
  • metadata β€” display the XML metadata describing this resource.
  • manpage β€” the operational behavior of this is not known. (Yeah, that's literally what it says. We're just the messenger. 😭)
  • validate-all β€” validate if all required parameters are entered. βœ…

πŸ¦‹ STDIN PARAMETERS πŸ¦‹

Same energy, but for when fenced is feeding params in through stdin. Note the underscore names, they're the stdin twins of the flags above. πŸ’œ

  • action β€” fencing action. (Default Value: reboot)
  • ip β€” IP address or hostname of fencing device. This parameter is always required. Obsoletes: ipaddr
  • ipport β€” TCP/UDP port to use for connection with device. (Default Value: 1234)
  • password β€” login password or passphrase. Obsoletes: passwd
  • password_script β€” script to run to retrieve password. Obsoletes: passwd_script
  • plug β€” physical plug number on device, UUID or identification of machine. This parameter is always required. Obsoletes: port
  • username β€” login name. This parameter is always required. Obsoletes: login
  • quiet β€” disable logging to stderr. Does not affect --verbose or --debug-file or logging to syslog.
  • verbose β€” verbose mode. Multiple -v flags can be stacked on the command line (e.g., -vvv) to increase verbosity.
  • verbose_level β€” level of debugging detail in output. Defaults to the number of --verbose flags specified on the command line, or to 1 if verbose=1 in a stonith device configuration (i.e., on stdin).
  • debug_file β€” write debug information to given file. Obsoletes: debug
  • version β€” display version information and exit.
  • help β€” display help and exit.
  • plug_separator β€” separator for plug parameter when specifying more than 1 plug. (Default Value: ,)
  • separator β€” separator for CSV created by list operation. (Default Value: ,)
  • delay β€” wait X seconds before fencing is started. (Default Value: 0)
  • disable_timeout β€” disable timeout (true/false). (default: true when run from Pacemaker 2.0+)
  • login_timeout β€” wait X seconds for cmd prompt after login. (Default Value: 5)
  • power_timeout β€” test X seconds for status change after ON/OFF. (Default Value: 20)
  • power_wait β€” wait X seconds after issuing ON/OFF. (Default Value: 0)
  • shell_timeout β€” wait X seconds for cmd prompt after issuing command. (Default Value: 3)
  • stonith_status_sleep β€” sleep X seconds between status calls during a STONITH action. (Default Value: 1)
  • retry_on β€” count of attempts to retry power on. (Default Value: 1)
  • telnet_path β€” path to telnet binary. (Default Value: /usr/bin/telnet)

Okay that's the whole thing, you ate it, I'm so proud of you. 🫢 This lil' beauty is the fence_netio (Fence Agent) page, dated 2009-10-20, and it lives in the Fence Agent manual, section 8. Go fence something responsibly, bestie. πŸ’–βœ¨

πŸ“¦ where this page comes from