cl_getgroup 例程

cl_getgroup 例程将返回有关所指定集群中所指定资源组的信息。

语法

int cl_getgroup (int clusterid, char *groupname,
   struct cl_group *groupbufp);

参数

项目 描述
集群标识 期望集群的集群标识。
GroupName 资源组的名称。
组 (groupbufp) 指向 cl_group 结构的指针,将使用该结构来返回信息。

状态码

项目 描述
清除 (CLE_OK) 成功。
清除 BADARGS 缺少自变量或自变量无效。
清除 SYSERR 系统错误。
清除 NOCLINFO 未获得集群信息。
cle_ivclusterid 集群标识无效。
CLE_IVNODENAME 资源组名称无效。

示例

  int clusterid = 1113325332;
  int status, j;
  char* groupname = "rg01";
  struct cl_group group;

  status = cl_getgroup(clusterid, groupname, &group);
  if (status != CLE_OK){
      cl_perror(status, "can't get resource group information");
  } else {
      printf("resource group %s has %d nodes.\n",
      group.clg_name,
      group.clg_num_nodes);
      for(j=0; j < group.clg_num_nodes; j++){
  printf("node w/ id %d is in state %d [%s]\n",
  group.clg_node_ids[j],
  group.clg_node_states[j],
/* user defined function char* cvrt_rg_state(enum cl_resource_states state)
** to convert state id numbers to text
*/
 cvrt_rg_state(group.clg_node_states[j]));
      }
  }