千家信息网

OCF的资源行为怎么实现

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本篇内容介绍了"OCF的资源行为怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!4 资源代理结
千家信息网最后更新 2026年11月03日OCF的资源行为怎么实现

本篇内容介绍了"OCF的资源行为怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

4 资源代理结构

一个典型的(基于shell的)资源代理有一些标准的结构元素。本章将按顺序说明。在说明里将描述资源代理每一个支持的行为的细节内容。本章将以一个假想的foobar函数为例子。

4.1 资源代理解释器

每个资源代理都以标准的"shebang"(#!)抬头

1

#!/bin/sh

如果资源代理使用shell编写,最好是指定通用的shell解释器(#!/bin/sh),但也不强求。使用/bin/sh兼容的资源代理一定不要使用某种特别shell的方言(如bash中的 ${!variable}),建议对资源代理使用检查器检查一下,如checkbashisms。

有人考虑使用一个patch来使得之前的sh兼容的资源代理只用于bash、ksh或者其他的非通用shell。然而,对于新完成的资源代理,最好显式的定义一个指定的shell解释器,比如/bin/bash。

4.2 作者和授权信息

资源代理应该包含一段注释,来说明作者和版权信息,并说明资源代理的授权信息,如:

1

2

3

4

5

6

#

# Resource Agent for managing foobar resources.

#

# License: GNU General Public License (GPL)

# (c) 2008-2010 John Doe, Jane Roe,

# and Linux-HA contributors

如果资源代理的使用的授权有不同版本,缺省可假设是当前版本。

4.3 初始化

任何 shell 资源代理都应该运行.ocf_shellfuncs函数库。按下面的语法,如$OCF_FUNCTION_DIR,这里是为了测试和写文档,这个变量也许重复定义了。

1

2

3

# Initialization:

: ${OCF_FUNCTIONS_DIR=${OCF_ROOT}/lib/heartbeat}

. ${OCF_FUNCTIONS_DIR}/ocf-shellfuncs

4.4 资源行为的函数实现

下面将说明的是资源代理公布的行为的函数实现。每个行为的细节将在第五章描述。

4.5 执行块

下面是一个资源代理实际执行时的部分代码。通常遵循如下的标准结构:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

# Make sure meta-data and usage always succeed

case $__OCF_ACTION in

meta-data) foobar_meta_data

exit $OCF_SUCCESS

;;

usage|help) foobar_usage

exit $OCF_SUCCESS

;;

esac


# Anything other than meta-data and usage must pass validation

foobar_validate_all || exit $?


# Translate each action into the appropriate function call

case $__OCF_ACTION in

start) foobar_start;;

stop) foobar_stop;;

status|monitor) foobar_monitor;;

promote) foobar_promote;;

demote) foobar_demote;;

reload) ocf_log info "Reloading..."

foobar_start

;;

validate-all) ;;

*) foobar_usage

exit $OCF_ERR_UNIMPLEMENTED

;;

esac

rc=$?


# The resource agent may optionally log a debug message

ocf_log debug "${OCF_RESOURCE_INSTANCE} $__OCF_ACTION returned $rc"

exit $rc

"OCF的资源行为怎么实现"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

资源 代理 行为 函数 信息 内容 标准 结构 解释器 解释 作者 实际 更多 最好 版本 知识 细节 检查 不同 实用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州大一互联网络科技有限公司 互联网科技公司起名 蓝思科技飞鸽互联网 上海互联网科技有限公司 碳银互联网科技 科技互联网公司logo 友谊互联网络科技 撒么互联网科技公司 上海电发互联网科技有限公司 宁夏科技产业互联网案例 江阴互联网智能科技产品进口 移动互联网年度科技创新 本届互联网博览会上的黑科技 浙南科技城互联网大厦建设工程 西安小鹰速贷互联网科技有限公司 上海科技产业互联网平台 互联网科技年终奖 广州有谷有贝互联网科技有限公司 世界互联网科技成果奖 长沙易易互联网科技有限公司 上海挚品互联网科技有限公司 万易互联网科技有限公司 互联网科技大会案例 宝灵互联网科技有限公司 语蝶互联网科技有限公司 洛阳昕诺飞互联网科技有限公司 乌苏新华互联网科技做什么的 互联网金融科技公司的优势 领航科技大厦互联网公司 优雇互联网科技有限公司
0