pacemaker
2.1.4-dc6eb4362
Scalable High-Availability cluster resource manager
|
Go to the source code of this file.
Enumerations | |
enum | pcmk__fence_history { pcmk__fence_history_none, pcmk__fence_history_reduced, pcmk__fence_history_full } |
Control how much of the fencing history is output. More... | |
Functions | |
int | pcmk__request_fencing (stonith_t *st, const char *target, const char *action, const char *name, unsigned int timeout, unsigned int tolerance, int delay, char **reason) |
Ask the cluster to perform fencing. More... | |
int | pcmk__fence_history (pcmk__output_t *out, stonith_t *st, char *target, unsigned int timeout, int verbose, bool broadcast, bool cleanup) |
List the fencing operations that have occurred for a specific node. More... | |
int | pcmk__fence_installed (pcmk__output_t *out, stonith_t *st, unsigned int timeout) |
List all installed STONITH agents. More... | |
int | pcmk__fence_last (pcmk__output_t *out, const char *target, bool as_nodeid) |
When was a device last fenced? More... | |
int | pcmk__fence_list_targets (pcmk__output_t *out, stonith_t *st, const char *device_id, unsigned int timeout) |
List nodes that can be fenced. More... | |
int | pcmk__fence_metadata (pcmk__output_t *out, stonith_t *st, char *agent, unsigned int timeout) |
Get metadata for a resource. More... | |
int | pcmk__fence_registered (pcmk__output_t *out, stonith_t *st, char *target, unsigned int timeout) |
List registered fence devices. More... | |
int | pcmk__fence_register_level (stonith_t *st, char *target, int fence_level, stonith_key_value_t *devices) |
Register a fencing level for a specific node, node regex, or attribute. More... | |
int | pcmk__fence_unregister_level (stonith_t *st, char *target, int fence_level) |
Unregister a fencing level for a specific node, node regex, or attribute. More... | |
int | pcmk__fence_validate (pcmk__output_t *out, stonith_t *st, const char *agent, const char *id, stonith_key_value_t *params, unsigned int timeout) |
Validate a STONITH device configuration. More... | |
int | pcmk__get_fencing_history (stonith_t *st, stonith_history_t **stonith_history, enum pcmk__fence_history fence_history) |
Fetch STONITH history, optionally reducing it. More... | |
enum pcmk__fence_history |
Control how much of the fencing history is output.
Enumerator | |
---|---|
pcmk__fence_history_none | |
pcmk__fence_history_reduced | |
pcmk__fence_history_full |
Definition at line 18 of file pcmki_fence.h.
int pcmk__fence_history | ( | pcmk__output_t * | out, |
stonith_t * | st, | ||
char * | target, | ||
unsigned int | timeout, | ||
int | verbose, | ||
bool | broadcast, | ||
bool | cleanup | ||
) |
List the fencing operations that have occurred for a specific node.
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure. |
[in] | st | A connection to the STONITH API. |
[in] | target | The node to get history for. |
[in] | timeout | How long to wait for the operation to complete (in ms). |
[in] | verbose | Include additional output. |
[in] | broadcast | Gather fencing history from all nodes. |
[in] | cleanup | Clean up fencing history after listing. |
Definition at line 228 of file pcmk_fence.c.
int pcmk__fence_installed | ( | pcmk__output_t * | out, |
stonith_t * | st, | ||
unsigned int | timeout | ||
) |
List all installed STONITH agents.
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure. |
[in] | st | A connection to the STONITH API. |
[in] | timeout | How long to wait for the operation to complete (in ms). |
Definition at line 314 of file pcmk_fence.c.
int pcmk__fence_last | ( | pcmk__output_t * | out, |
const char * | target, | ||
bool | as_nodeid | ||
) |
When was a device last fenced?
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure. |
[in] | target | The node that was fenced. |
[in] | as_nodeid |
Definition at line 354 of file pcmk_fence.c.
int pcmk__fence_list_targets | ( | pcmk__output_t * | out, |
stonith_t * | st, | ||
const char * | device_id, | ||
unsigned int | timeout | ||
) |
List nodes that can be fenced.
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure |
[in] | st | A connection to the STONITH API |
[in] | device_id | Resource ID of fence device to check |
[in] | timeout | How long to wait for the operation to complete (in ms) |
Definition at line 390 of file pcmk_fence.c.
int pcmk__fence_metadata | ( | pcmk__output_t * | out, |
stonith_t * | st, | ||
char * | agent, | ||
unsigned int | timeout | ||
) |
Get metadata for a resource.
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure. |
[in] | st | A connection to the STONITH API. |
[in] | agent | The fence agent to get metadata for. |
[in] | timeout | How long to wait for the operation to complete (in ms). |
Definition at line 435 of file pcmk_fence.c.
int pcmk__fence_register_level | ( | stonith_t * | st, |
char * | target, | ||
int | fence_level, | ||
stonith_key_value_t * | devices | ||
) |
Register a fencing level for a specific node, node regex, or attribute.
target
can take three different forms:
target
is an attribute.target
is a node regex.target
is a node name.[in] | st | A connection to the STONITH API. |
[in] | target | The object to register a fencing level for. |
[in] | fence_level | Index number of level to add. |
[in] | devices | Devices to use in level. |
Definition at line 517 of file pcmk_fence.c.
int pcmk__fence_registered | ( | pcmk__output_t * | out, |
stonith_t * | st, | ||
char * | target, | ||
unsigned int | timeout | ||
) |
List registered fence devices.
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure. |
[in] | st | A connection to the STONITH API. |
[in] | target | If not NULL, only return devices that can fence this node. |
[in] | timeout | How long to wait for the operation to complete (in ms). |
Definition at line 471 of file pcmk_fence.c.
int pcmk__fence_unregister_level | ( | stonith_t * | st, |
char * | target, | ||
int | fence_level | ||
) |
Unregister a fencing level for a specific node, node regex, or attribute.
target
can take three different forms:
target
is an attribute.target
is a node regex.target
is a node name.[in] | st | A connection to the STONITH API. |
[in] | target | The object to unregister a fencing level for. |
[in] | fence_level | Index number of level to remove. |
Definition at line 531 of file pcmk_fence.c.
int pcmk__fence_validate | ( | pcmk__output_t * | out, |
stonith_t * | st, | ||
const char * | agent, | ||
const char * | id, | ||
stonith_key_value_t * | params, | ||
unsigned int | timeout | ||
) |
Validate a STONITH device configuration.
out
should be initialized with pcmk__output_new() before calling this function and destroyed with out->finish and pcmk__output_free() before reusing it with any other functions in this library.[in,out] | out | The output functions structure. |
[in] | st | A connection to the STONITH API. |
[in] | agent | The agent to validate (for example, "fence_xvm"). |
[in] | id | STONITH device ID (may be NULL). |
[in] | params | STONITH device configuration parameters. |
[in] | timeout | How long to wait for the operation to complete (in ms). |
Definition at line 543 of file pcmk_fence.c.
int pcmk__get_fencing_history | ( | stonith_t * | st, |
stonith_history_t ** | stonith_history, | ||
enum pcmk__fence_history | fence_history | ||
) |
Fetch STONITH history, optionally reducing it.
[in] | st | The STONITH API object |
[out] | stonith_history | Destination for storing the history |
[in] | fence_history | How much of the fencing history to display? |
Definition at line 578 of file pcmk_fence.c.
int pcmk__request_fencing | ( | stonith_t * | st, |
const char * | target, | ||
const char * | action, | ||
const char * | name, | ||
unsigned int | timeout, | ||
unsigned int | tolerance, | ||
int | delay, | ||
char ** | reason | ||
) |
Ask the cluster to perform fencing.
[in] | st | A connection to the fencer API |
[in] | target | The node that should be fenced |
[in] | action | The fencing action (on, off, reboot) to perform |
[in] | name | Who requested the fence action? |
[in] | timeout | How long to wait for the operation to complete (in ms) |
[in] | tolerance | If a successful action for target happened within this many milliseconds, return success without performing the action again |
[in] | delay | Apply this delay (in milliseconds) before initiating the fencing action (a value of -1 applies no delay and also disables any fencing delay from pcmk_delay_base and pcmk_delay_max) |
[out] | reason | If not NULL, where to put descriptive failure reason |
reason
is not NULL, the caller is responsible for freeing its returned value. Definition at line 181 of file pcmk_fence.c.