FENCE_AGENT(8)

πŸ“¦
version 4.17.0 Β· 4 versions
, in debian trixie, fedora 43, fedora 44, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– NAME πŸ’–

fence_drac β€” the Power Fencing agent for Dell DRAC IV, bestie. It's giving "I control your server's power from far away" and honestly? Iconic.


✨ DESCRIPTION ✨

Okay so fence_drac is a Power Fencing agent that works with the Dell Remote Access Card (DRAC). This card is the whole vibe β€” it gives you remote access to controlling power to a server. 🌈

The way it works: it logs into the DRAC through the telnet interface of the card. And here's the thing β€” by default, that telnet interface is not enabled. Not even a little. So if you wanna use it, you're gonna need the racadm command, which lives in the racser-devel rpm available from Dell. πŸŽ€

To enable telnet on the DRAC:

[root]# racadm config -g cfgSerial -o cfgSerialTelnetEnable 1
[root]# racadm racreset

No cap, that's the whole ritual. πŸ’…

The fence agent accepts options on the command line as well as from stdin. fenced sends parameters through stdin when it execs the agent. But you can also run the agent by itself with command line options β€” which is lowkey so useful for testing and for turning outlets on or off from scripts. πŸ¦‹

Vendor URL: http://www.dell.com


πŸŽ€ PARAMETERS πŸŽ€

One bullet per option, every single one, no skipping, periodt. 🫢

  • -o, --action=[action] β€” Fencing action. (Default Value: reboot)
  • -c, --command-prompt=[prompt] β€” Force Python regex for command prompt. (Default Value: ['\\[username\\]# '])
  • -a, --ip=[ip] β€” IP address or hostname of fencing device
  • -u, --ipport=[port] β€” TCP/UDP port to use for connection with device. (Default Value: 23)
  • -p, --password=[password] β€” Login password or passphrase
  • -S, --password-script=[script] β€” Script to run to retrieve password
  • -n, --plug=[ip] β€” IP address or hostname of fencing device (together with --port-as-ip)
  • -l, --username=[name] β€” Login name. This parameter is always required. Like, always always. πŸ”₯
  • -q, --quiet β€” Disable logging to stderr. Does not affect --verbose or --debug-file or logging to syslog.
  • -v, --verbose β€” Verbose mode. Multiple -v flags can be stacked on the command line (e.g., -vvv) to increase verbosity. Stack them like accessories bestie. ✨
  • --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).
  • -D, --debug-file=[debugfile] β€” Write debug information to given file
  • -V, --version β€” Display version information and exit
  • -h, --help β€” Display help and exit
  • --plug-separator=[char] β€” Separator for plug parameter when specifying more than 1 plug. (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 cmd prompt after login. (Default Value: 5)
  • --port-as-ip β€” Make "port/plug" to be an alias to IP address
  • --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 cmd prompt after issuing command. (Default Value: 3)
  • --stonith-status-sleep=[seconds] β€” Sleep X seconds between status calls during a STONITH action. (Default Value: 1)
  • --retry-on=[attempts] β€” Count of attempts to retry power on. (Default Value: 1)
  • --telnet-path=[path] β€” Path to telnet binary. (Default Value: /usr/bin/telnet)

πŸ‘‘ ACTIONS πŸ‘‘

  • on β€” Power on machine. ⚑
  • off β€” Power off machine.
  • reboot β€” Reboot machine. πŸ”„
  • status β€” This returns the status of the plug/virtual machine.
  • monitor β€” Check the health of fence device 🩺
  • metadata β€” Display the XML metadata describing this resource.
  • manpage β€” The operational behavior of this is not known. (Yeah, we said what we said. πŸ™ˆ)
  • validate-all β€” Validate if all required parameters are entered.

🌸 STDIN PARAMETERS 🌸

Same energy, snake_case edition. 🐍

  • action β€” Fencing action (Default Value: reboot)
  • command_prompt β€” Force Python regex for command prompt (Default Value: ['\\[username\\]# ']) Obsoletes: cmd_prompt
  • ip β€” IP address or hostname of fencing device Obsoletes: ipaddr
  • ipport β€” TCP/UDP port to use for connection with device (Default Value: 23)
  • password β€” Login password or passphrase Obsoletes: passwd
  • password_script β€” Script to run to retrieve password Obsoletes: passwd_script
  • plug β€” IP address or hostname of fencing device (together with --port-as-ip) 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: ,)
  • 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)
  • port_as_ip β€” Make "port/plug" to be an alias to IP address
  • 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)

πŸ’œ Quick vibe check before you dip: --username / username is always required. Don't forget it or the whole thing's just gonna sit there looking at you. 😭

And that's the page bestie! πŸŽ€ This one's fence_drac from the Fence Agent crew, dated 2009-10-20, and it lives in section FENCE_AGENT(8) of the manual. Slay, go fence something. πŸ’…βœ¨

πŸ“¦ where this page comes from