pacemaker  3.0.0-d8340737c4
Scalable High-Availability cluster resource manager
Functions
cluster.c File Reference
#include <crm_internal.h>
#include <dlfcn.h>
#include <inttypes.h>
#include <stdbool.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <sys/param.h>
#include <sys/types.h>
#include <sys/utsname.h>
#include <glib.h>
#include <crm/crm.h>
#include <crm/common/ipc.h>
#include <crm/common/xml.h>
#include <crm/cluster/internal.h>
#include "crmcluster_private.h"
#include <crm/cluster/compat.h>
Include dependency graph for cluster.c:

Go to the source code of this file.

Functions

 CRM_TRACE_INIT_DATA (cluster)
 
const char * pcmk__cluster_node_uuid (pcmk__node_status_t *node)
 
int pcmk_cluster_connect (pcmk_cluster_t *cluster)
 
int pcmk_cluster_disconnect (pcmk_cluster_t *cluster)
 Disconnect from the cluster layer. More...
 
pcmk_cluster_tpcmk_cluster_new (void)
 Allocate a new pcmk_cluster_t object. More...
 
void pcmk_cluster_free (pcmk_cluster_t *cluster)
 Free a pcmk_cluster_t object and its dynamically allocated members. More...
 
int pcmk_cluster_set_destroy_fn (pcmk_cluster_t *cluster, void(*fn)(gpointer))
 Set the destroy function for a cluster object. More...
 
bool pcmk__cluster_send_message (const pcmk__node_status_t *node, enum pcmk_ipc_server service, const xmlNode *data)
 
char * pcmk__cluster_node_name (uint32_t nodeid)
 
const char * pcmk__cluster_local_node_name (void)
 
const char * pcmk__node_name_from_uuid (const char *uuid)
 
const char * pcmk_cluster_layer_text (enum pcmk_cluster_layer layer)
 Get a log-friendly string equivalent of a cluster layer. More...
 
enum pcmk_cluster_layer pcmk_get_cluster_layer (void)
 Get and validate the local cluster layer. More...
 
gboolean crm_cluster_connect (pcmk_cluster_t *cluster)
 
const char * name_for_cluster_type (enum cluster_type_e type)
 
enum cluster_type_e get_cluster_type (void)
 

Function Documentation

◆ crm_cluster_connect()

gboolean crm_cluster_connect ( pcmk_cluster_t cluster)
Deprecated:
Use pcmk_cluster_connect() instead

Definition at line 435 of file cluster.c.

◆ CRM_TRACE_INIT_DATA()

CRM_TRACE_INIT_DATA ( cluster  )

◆ get_cluster_type()

enum cluster_type_e get_cluster_type ( void  )
Deprecated:
Use pcmk_get_cluster_layer() instead

Definition at line 465 of file cluster.c.

◆ name_for_cluster_type()

const char* name_for_cluster_type ( enum cluster_type_e  type)
Deprecated:
Use pcmk_cluster_layer_text() instead

Definition at line 450 of file cluster.c.

◆ pcmk__cluster_local_node_name()

const char* pcmk__cluster_local_node_name ( void  )

Definition at line 289 of file cluster.c.

◆ pcmk__cluster_node_name()

char* pcmk__cluster_node_name ( uint32_t  nodeid)

Definition at line 233 of file cluster.c.

◆ pcmk__cluster_node_uuid()

const char* pcmk__cluster_node_uuid ( pcmk__node_status_t node)

Definition at line 44 of file cluster.c.

◆ pcmk__cluster_send_message()

bool pcmk__cluster_send_message ( const pcmk__node_status_t node,
enum pcmk_ipc_server  service,
const xmlNode *  data 
)

Definition at line 200 of file cluster.c.

◆ pcmk__node_name_from_uuid()

const char* pcmk__node_name_from_uuid ( const char *  uuid)

Definition at line 311 of file cluster.c.

◆ pcmk_cluster_connect()

int pcmk_cluster_connect ( pcmk_cluster_t cluster)

Definition at line 78 of file cluster.c.

◆ pcmk_cluster_disconnect()

int pcmk_cluster_disconnect ( pcmk_cluster_t cluster)

Disconnect from the cluster layer.

Parameters
[in,out]clusterCluster object to disconnect
Returns
Standard Pacemaker return code

Definition at line 113 of file cluster.c.

◆ pcmk_cluster_free()

void pcmk_cluster_free ( pcmk_cluster_t cluster)

Free a pcmk_cluster_t object and its dynamically allocated members.

Parameters
[in,out]clusterCluster object to free

Definition at line 160 of file cluster.c.

◆ pcmk_cluster_layer_text()

const char* pcmk_cluster_layer_text ( enum pcmk_cluster_layer  layer)

Get a log-friendly string equivalent of a cluster layer.

Parameters
[in]layerCluster layer
Returns
Log-friendly string corresponding to layer

Definition at line 352 of file cluster.c.

◆ pcmk_cluster_new()

pcmk_cluster_t* pcmk_cluster_new ( void  )

Allocate a new pcmk_cluster_t object.

Returns
A newly allocated pcmk_cluster_t object (guaranteed not NULL)
Note
The caller is responsible for freeing the return value using pcmk_cluster_free().

Definition at line 145 of file cluster.c.

◆ pcmk_cluster_set_destroy_fn()

int pcmk_cluster_set_destroy_fn ( pcmk_cluster_t cluster,
void(*)(gpointer)  fn 
)

Set the destroy function for a cluster object.

Parameters
[in,out]clusterCluster object
[in]fnDestroy function to set
Returns
Standard Pacemaker return code

Definition at line 180 of file cluster.c.

◆ pcmk_get_cluster_layer()

enum pcmk_cluster_layer pcmk_get_cluster_layer ( void  )

Get and validate the local cluster layer.

If a cluster layer is not configured via the PCMK__ENV_CLUSTER_TYPE local option, this will try to detect an active cluster from among the supported cluster layers.

Returns
Local cluster layer
Note
This will fatally exit if the configured cluster layer is invalid.

Definition at line 379 of file cluster.c.