FENCE_AGENT(8)

πŸ’– FENCE_AGENT(8) πŸ’–

okay bestie, welcome to the fence_ibm_powervs page β€” that's the agent name, and the whole thing lives in section 8 of the System Manager's Manual (yes, FENCE_AGENT(8), that's the manual name, we're folding it in right here at the top like a lil bow πŸŽ€). This is the page that tells you how to fence IBM Power Virtual Server instances. Let's get into it ✨


🌸 NAME 🌸

fence_ibm_powervs β€” the fence agent for IBM PowerVS, no cap πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

So like, fence_ibm_powervs is a power fencing agent for IBM Power Virtual Server (aka IBM PowerVS) and its whole job is fencing virtual server instances. That's it, that's the gig. She's a specialist πŸ’–

Here's the tea: the fence agent takes options on the command line and from stdin. 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 genuinely so useful for testing and for turning outlets on or off from scripts. Little DIY queen 🫢

Vendor URL: https://www.ibm.com β€” go say hi 🌈


✨ PARAMETERS ✨

Every single flag, bestie, we're not skipping a one πŸ‘‘

  • --api-type=[private|public] β€” the API type, and your choices are literally private or public. Default value? private. πŸ“
  • --crn=[crn] β€” the CRN. And heads up, this parameter is always required. Always. Periodt.
  • --instance=[instance] β€” the PowerVS Instance. Also always required, no exceptions πŸ’€
  • --proxy=[http://<URL>:<PORT>] β€” the network proxy. Default value is empty, so like, nothing.
  • --region=[region] β€” the Region. You guessed it: always required 🌸
  • --token=[token] β€” the API Token. And yep, always required. You're seeing a pattern, right?
  • -o, --action=[action] β€” the fencing action. Default value: reboot. πŸ’…
  • -m, --method=[method] β€” the method to fence, either onoff or cycle. Default value: onoff.
  • -n, --plug=[id] β€” the physical plug number on the device, or a UUID, or some identification of the machine. This parameter is always required. (Also it obsoletes port on the stdin side, keep reading bestie.)
  • -q, --quiet β€” disables logging to stderr. And before you ask: no, it does not affect --verbose, or --debug-file, or logging to syslog. She's specific about her boundaries πŸ’–
  • -v, --verbose β€” verbose mode! And you can stack multiple -v flags on the command line (like -vvv) to crank the verbosity up. Go off πŸ“ˆ
  • --verbose-level β€” the level of debugging detail in the output. Defaults to however many --verbose flags you put 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 the given file πŸ“
  • -V, --version β€” display version information and exit. Bye! πŸ‘‹
  • -h, --help β€” display help and exit. Also bye! πŸ‘‹
  • --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 style. 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 a status change after ON/OFF. Default value: 120 ⚑
  • --power-wait=[seconds] β€” wait X seconds after issuing ON/OFF. Default value: 15 ⏱️
  • --shell-timeout=[seconds] β€” wait X seconds for the cmd prompt after issuing a command. Default value: 500 🐚
  • --stonith-status-sleep=[seconds] β€” sleep X seconds between status calls during a STONITH action. Default value: 10 😴
  • --retry-on=[attempts] β€” how many attempts to retry power on. Default value: 1 πŸ”

πŸ”₯ ACTIONS πŸ”₯

These are the moves she can make, bestie. Vibe check each one πŸ‘‘

  • on β€” power on the machine. ✨
  • off β€” power off the machine. πŸ’€
  • reboot β€” reboot the machine. πŸ”„
  • status β€” 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. 🀷
  • 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 what it says. We're all just living with that πŸ™ˆ)
  • validate-all β€” validate if all required parameters are entered. βœ…

πŸ’œ STDIN PARAMETERS πŸ’œ

Same energy, different door β€” these are the parameter names as they come in over stdin. Note the underscores, bestie, they matter 🌸

  • api_type β€” API-type (private|public). Default value: private. Obsoletes: api-type πŸ“
  • crn β€” the CRN. This parameter is always required.
  • instance β€” PowerVS Instance. This parameter is always required.
  • proxy β€” network proxy. Default value is empty.
  • region β€” Region. This parameter is always required.
  • token β€” API Token. This parameter is always required.
  • action β€” fencing action. Default value: reboot.
  • method β€” method to fence (onoff|cycle). Default value: onoff.
  • plug β€” physical plug number on device, UUID or identification of machine. This parameter is always required. Obsoletes: port πŸ’…
  • 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: 120
  • power_wait β€” wait X seconds after issuing ON/OFF. Default value: 15
  • shell_timeout β€” wait X seconds for cmd prompt after issuing command. Default value: 500
  • stonith_status_sleep β€” sleep X seconds between status calls during a STONITH action. Default value: 10
  • retry_on β€” count of attempts to retry power on. Default value: 1

and that's the whole page, bestie, you ate it πŸ’…βœ¨

This was fence_ibm_powervs (Fence Agent), dated 2009-10-20, from FENCE_AGENT(8). Love her, she's iconic πŸ‘‘πŸ¦‹πŸ’–
πŸ“¦ where this page comes from