Red Hat Training

A Red Hat training course is available for RHEL 8

12.3. 配置位置约束策略

在使用位置限制时,您可以配置常规策略来指定资源可在哪些节点上运行:

  • Opt-in 集群 - 配置一个集群,默认情况下没有资源可在任何位置运行,然后有选择地为特定资源启用允许的节点。
  • opt-out 集群 - 配置一个集群,默认情况下,所有资源都可以在任何位置运行,然后为不允许在特定节点上运行的资源创建位置限制。

根据您的需要以及集群的组成,把集群设置为 opt-in 集群还是 opt-out 集群。如果大多数资源可以在大多数节点上运行,那么如果没有选择的协议则可能会导致配置更简单。另一方面,如果大多数资源只能在一小部分节点中运行,那么选择的配置可能比较简单。

12.3.1. 配置 "Opt-In" 集群

要创建一个 opt-in 集群,请将 symmetric-cluster 集群属性设置为 false,以防止资源默认在任何地方运行。

# pcs property set symmetric-cluster=false

为单个资源启用节点。以下命令配置位置约束,以便资源 Webserver 首选节点 example-1 ,资源 Database 首选节点 example-2,如果它们的首选节点都出现故障,则这两个资源都可以切换到节点 example-3。当为 opt-in 集群配置位置限制时,设置零分数可允许资源在节点上运行,而不表示首选或避免该节点。

# pcs constraint location Webserver prefers example-1=200
# pcs constraint location Webserver prefers example-3=0
# pcs constraint location Database prefers example-2=200
# pcs constraint location Database prefers example-3=0

12.3.2. 配置 "Opt-Out" 集群

要创建一个 opt-out 集群,请将 symmetric-cluster 集群属性设置为 true,以允许资源默认可在任何地方运行。如果没有显式设置 symmetric-cluster,则这是默认配置。

# pcs property set symmetric-cluster=true

以下命令将生成一个与"配置"集群"配置"中的示例相当的配置。如果它们的首选节点出现故障,这两个资源都可以切换到节点 example-3,因为每个节点都有一个隐含的为 0 的 score 。

# pcs constraint location Webserver prefers example-1=200
# pcs constraint location Webserver avoids example-2=INFINITY
# pcs constraint location Database avoids example-1=INFINITY
# pcs constraint location Database prefers example-2=200

请注意,不需要在这些命令中指定 INFINITY 分数,因为这是分数的默认值。