第 10 章 配置集群资源


一个 集群资源 是一个程序、应用程序或由集群服务管理的数据的一个实例。这些资源由代理进行抽象,提供一个标准接口,来在集群环境中管理资源。

为确保资源健康,您可以在资源的定义中添加监控操作。如果您没有为资源指定监控操作,则会默认添加一个。您可以通过配置该资源的约束来决定集群中资源的行为。您可以配置以下约束类别:

  • location 约束 - 一个决定资源可在哪个节点上运行的位置约束。有关配置位置约束的详情,请参阅 确定资源可在哪些节点上运行
  • order 约束 - 一个决定资源运行顺序的排序约束。有关配置排序约束的详情,请参考 确定集群资源的运行顺序
  • colocation 约束 - 一个相对于其他资源,决定资源将被放置在哪里的托管约束。有关托管约束的详情,请参考 托管集群资源

简而言之,配置一组限制会将一组资源放在一起,并确保资源按顺序启动并按相反顺序停止,Pacemaker 支持资源组的概念。创建资源组后,您可以像为单个资源配置限制一样,对组本身配置限制。有关配置资源组的详情,请参考 配置资源组

创建集群资源的命令格式如下:

pcs resource create resource_id [standard:[provider:]]type [resource_options] [op operation_action operation_options [operation_action operation options]...] [meta meta_options...] [clone [clone_id] [clone_options] | promotable [clone_id] [clone_options] [--wait[=n]]
Copy to Clipboard Toggle word wrap

集群资源创建的关键选项包括:

  • --before--after 选项指定添加的资源相对于资源组中已存在的资源的位置。
  • 指定 --disabled 选项表示资源不会自动启动。

对可在集群中创建的资源数量没有限制。

资源创建示例

以下命令创建一个 standard的 ocf 、名为 VirtualIP 的资源,provider 为 heartbeat,类型为 IPaddr2 。这个资源的浮动地址是 192.168.0.120,系统会每 30 秒检查一次这个资源是否在运行。有关资源标准和提供者的详情,请参考 资源代理标识符

# pcs resource create VirtualIP ocf:heartbeat:IPaddr2 ip=192.168.0.120 cidr_netmask=24 op monitor interval=30s
Copy to Clipboard Toggle word wrap

另外,您可以省略 standardprovider 字段,并使用以下命令:这将默认为 ocf 标准, heartbeat 的provider。

# pcs resource create VirtualIP IPaddr2 ip=192.168.0.120 cidr_netmask=24 op monitor interval=30s
Copy to Clipboard Toggle word wrap

删除配置的资源

使用以下命令删除一个配置的资源。

pcs resource delete resource_id
Copy to Clipboard Toggle word wrap

例如,以下命令删除具有 VirtualIP 资源 ID 的现有资源。

# pcs resource delete VirtualIP
Copy to Clipboard Toggle word wrap

您可以使用单个命令删除多个资源。以下命令删除一个资源 ID 为 resource1 的现有资源,以及资源 ID 为 resource2 的现有资源。

# pcs resource delete resource1 resource2
Copy to Clipboard Toggle word wrap

10.1. 资源代理标识符

您为资源定义的标识符告诉集群用于该资源的代理,在哪里找到代理及其合规标准。

下表描述了资源代理的这些属性。

Expand
表 10.1. 资源代理标识符
描述

standard

代理符合的标准。允许的值及其含义:

* ocf - 指定的 type 是符合 Open Cluster Framework Resource Agent API 的可执行文件名称,位于 /usr/lib/ocf/resource.d/provider

* lsb - 指定的 type 是符合 Linux Standard Base Init Script Actions 的可执行文件名称。如果类型没有指定完整路径,则系统将在 /etc/init.d 目录中查找该路径。

* systemd - 指定的 type 是已安装的 systemd 单元的名称

* service - pacemaker 将搜索指定的 类型,首先作为一个 lsb 代理,然后作为 systemd 代理

* nagios - 指定的 类型 是符合 Nagios Plugin API 的可执行文件名称,位于 /usr/libexec/nagios/plugins 目录中,其中 OCF 风格的元数据单独存储在 /usr/share/nagios/plugins-metadata 目录中(由某些常见插件的 nagios-agents-metadata 软件包提供)。

type

您要使用的资源代理的名称,如 IPaddrFilesystem

provider

OCF spec 允许多个厂商提供相同的资源代理。红帽提供的大多数代理都使用 heartbeat 作为provider。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat