Sun Cluster Geographic Edition 系统管理指南

第 5 章 管理群集伙伴关系

本章介绍了如何管理已启用 Sun Cluster Geographic Edition 软件的两个群集之间的伙伴关系。

本章包含以下几节:

在伙伴群集之间配置信任

在两个群集之间创建伙伴关系之前,必须配置 Sun Cluster Geographic Edition 软件,使其能在这两个群集之间进行安全通信。这种配置必须是彼此照应的。例如,必须将群集 cluster-paris 配置为信任群集 cluster-newyork,同时必须将群集 cluster-newyork 配置为信任群集 cluster-paris

Procedure如何在两个群集之间配置信任

开始之前

确保满足以下条件:

  1. 登录到一个群集节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 将公钥从远程群集导入到本地群集中。

    在本地群集的某个节点上运行下面的命令可将密钥从远程群集导入到本地群集的某个节点。


    # geops add-trust -c remotepartnerclustername
    
    -cremoteclustername

    指定与其组成伙伴关系的群集的逻辑主机名。逻辑主机名由 Sun Cluster Geographic Edition 软件使用,并映射到远程伙伴群集的名称。例如,远程伙伴群集名可能与以下格式类似:

    cluster-paris

    当您在 add-trustremote-trust 子命令中使用此选项时,可指定远程群集上公钥的存储位置的别名。远程群集上的证书的别名具有以下模式:

    remotepartnercluster.certificate[0-9]*

    只有属于远程群集的密钥才应具有这种模式的别名。

    有关 geops 命令的更多信息,请参阅 geops(1M) 手册页。

  3. 在远程伙伴群集的一个节点上重复以上步骤。

  4. 从每个群集的一个节点上检验信任关系。


    # geops verify-trust -c remotepartnerclustername
    
另请参见

有关如何配置和加入伙伴关系的完整示例,请参见示例 5–4

Procedure如何删除两个群集间的信任关系

开始之前

确保满足以下条件:

  1. 登录到一个群集节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 在两个群集的所有节点上,将所有远程群集密钥从本地节点的 truststore 文件中删除。


    # geops remove-trust -c remotepartnerclustername
    

    请在本地群集的所有节点上执行此步骤,然后再在伙伴群集的所有节点上重复此步骤。

    -cremoteclustername

    指定要从中删除密钥的群集的逻辑主机名。远程群集的名称必须与您使用 geops add-trust 命令添加信任关系时所指定的群集名称一致。如果可使用名称的一部分访问远程群集,则无需指定全限定名。

    当您在 add-trustremote-trust 子命令中使用此选项时,可指定远程群集上公钥的存储位置的别名。远程群集上的证书的别名具有以下模式:

    remotepartnercluster.certificate[0-9]*

    只有属于远程群集的密钥才应具有这种模式的别名。

    有关 geops 命令的更多信息,请参阅 geops(1M) 手册页。

  3. 在远程伙伴群集的一个节点上重复以上步骤。

创建和修改伙伴关系

Sun Cluster Geographic Edition 软件可使群集之间形成伙伴关系,从而在发生灾难时相互保护。处于伙伴关系中的群集可通过互相发送心跳消息来监视对方(类似于单个群集中节点与节点之间发送消息)。与本地群集不同的是,处于伙伴关系中的群集使用公共网络发送消息,同时也支持其他插件机制。

请使用 geops(1m) 命令在两个特定群集之间仅建立一个伙伴关系。创建伙伴关系后,您可以使用此命令修改该伙伴关系的属性。

创建伙伴关系时,应确保伙伴关系中所有群集的名称唯一。例如,如果有一个群集完全位于域 .france 中,则可使用诸如 parisgrenoble 这样的主机名。但是,如果群集跨域,您必须对主机名进行足够的限定,以便在网络中对它们进行有效的标识。您可以将 parismunich 与主机名 paris.francemunich.germany 相关联,群集名称仍为 parismunich

您不能在群集 paris.franceparis.texas 之间建立伙伴关系,因为它们的群集名称都是 paris,会发生冲突。

两个伙伴群集上由 Sun Cluster Geographic Edition 软件所管理的应用程序资源组的名称必须相同。您可以手动或使用 scsnapshot 命令配置这些资源组的名称。

scsnapshot 命令可复制未配置资源组、资源类型以及资源的群集上的配置数据。scsnapshot 命令从发出此命令的群集中获取配置数据,然后生成一个名为 scriptfile 的脚本。编辑脚本,使其符合您要在其中复制配置数据的群集的特定特性。例如,您可能需要更改脚本中的 IP 地址和主机名。从您要在其中复制配置数据的群集中的任一节点上启动脚本。有关使用此命令的更多信息,请参见 scsnapshot(1M) 手册页。

两个特定群集之间只能定义一个伙伴关系。单个群集可以和不同的群集形成不同的伙伴关系。

Procedure如何创建伙伴关系

开始之前

确保满足以下条件:

  1. 登录到一个群集节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 创建伙伴关系。


    # geops create -c remotepartnerclustername [-h heartbeatname] \
    [-p propertysetting [-p...]] partnershipname
    
    -c remoteclustername

    指定将会加入伙伴关系的远程群集的名称。

    此名称必须与远程群集上 Sun Cluster Geographic Edition 基础结构所使用的逻辑主机名相匹配。

    -h heartbeatname

    指一个在伙伴关系中使用的自定义心跳,以便监视伙伴群集的可用性。

    如果您省略此选项,则将使用默认的 Sun Cluster Geographic Edition 心跳。

    仅为特定的环境提供自定义的心跳,所以需要仔细配置。如果您的系统需要使用自定义心跳,请咨询 Sun 专家以便获得帮助。有关配置自定义心跳的更多信息,请参见第 6 章,管理心跳

    如果要创建自定义心跳,必须至少添加一个插件,以防止伙伴关系仍处于降级模式。

    在运行 geops 命令之前,必须先配置您在此选项中提供的自定义心跳。


    注 –

    自定义心跳可阻止在创建伙伴关系的过程中使用默认心跳。如果希望对伙伴关系使用默认心跳,必须在运行 geops create 命令之前先删除自定义心跳。


    -p propertysetting

    使用多个 property=value 语句来指定伙伴关系属性的值。

    使用 Description 属性指定伙伴关系的描述信息。

    您可以使用 Notification_emailaddrsNotification_actioncmd 属性配置心跳丢失通知。有关配置心跳丢失通知的更多信息,请参见配置心跳丢失通知

    有关可设置的属性的更多信息,请参见附录 A,标准 Sun Cluster Geographic Edition 属性

    partnershipname

    指定伙伴关系的名称。

    有关 Sun Cluster Geographic Edition 软件支持的名称和值的信息,请参见附录 B,Sun Cluster Geographic Edition 实体合法的名称和值

    有关 geops 命令的更多信息,请参阅 geops(1M) 手册页。

  3. 验证是否已创建伙伴关系以及该伙伴关系的状态。


    # geoadm status

示例 5–1 创建伙伴关系

本示例将在 cluster-paris 群集上创建 paris-newyork-ps 伙伴关系。


# geops create -c cluster-newyork -p Description=Transatlantic \
-p Notification_emailaddrs=sysadmin@companyX.com paris-newyork-ps 
# geoadm status

另请参见

有关如何配置和加入伙伴关系的完整示例,请参见示例 5–4

Procedure如何修改伙伴关系属性

  1. 登录到一个群集节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 修改伙伴关系属性。


    # geops set-prop -p propertysetting [-p...] partnershipname
    
    -p propertysetting

    使用多个 property=value 语句来指定各伙伴关系属性的值。

    使用 Description 属性指定伙伴关系的描述信息。

    您可以使用 Notification_emailaddrsNotification_actioncmd 属性配置心跳丢失通知。有关配置心跳丢失通知的更多信息,请参见配置心跳丢失通知

    有关可设置的属性的更多信息,请参见附录 A,标准 Sun Cluster Geographic Edition 属性

    partnershipname

    指定伙伴关系的名称。

    有关 Sun Cluster Geographic Edition 软件支持的名称和值的信息,请参见附录 B,Sun Cluster Geographic Edition 实体合法的名称和值

    有关 geops 命令的更多信息,请参阅 geops(1M) 手册页。

  3. 验证修改是否正确。


    # geops list

示例 5–2 修改伙伴关系的属性

本示例将修改 cluster-paris 群集的通知电子邮件地址。


# geops set-prop -p Notification_emailaddrs=operations@companyX.com \
paris-newyork-ps
# geops list

加入现有伙伴关系

定义和配置伙伴关系时,伙伴关系会指定另一个要成为该伙伴关系成员的群集。然后,您必须对这第二个群集加以配置,以使其加入伙伴关系。

Procedure如何加入伙伴关系

开始之前

确保满足以下条件:

  1. 登录到要加入伙伴关系的群集中的某一节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 确认是否可通过逻辑主机名访问最初建立该伙伴关系的远程群集 cluster-paris


    # ping lh-paris-1

    有关群集逻辑主机名的信息,请参见如何启用 Sun Cluster Geographic Edition 软件

  3. 加入该伙伴关系。


    # geops join-partnership [-h heartbeatname] remoteclustername partnershipname
    
    -h heartbeatname

    指一个在伙伴关系中使用的自定义心跳,以便监视伙伴群集的可用性。

    如果您省略此选项,则将使用默认的 Sun Cluster Geographic Edition 心跳。

    仅为特定的环境提供自定义的心跳,所以需要仔细配置。如果您的系统需要使用自定义心跳,请咨询 Sun 专家以便获得帮助。有关配置自定义心跳的更多信息,请参见第 6 章,管理心跳

    如果要创建自定义心跳,必须至少添加一个插件,以防止伙伴关系仍处于降级模式。

    在运行 geops 命令之前,必须先配置您在此选项中提供的自定义心跳。

    remoteclustername

    指定正在加入的伙伴关系的当前某一成员群集的名称。该群集用于检索伙伴关系配置信息。

    partnershipname

    指定伙伴关系的名称。

    有关 Sun Cluster Geographic Edition 软件支持的名称和值的信息,请参见附录 B,Sun Cluster Geographic Edition 实体合法的名称和值

    有关 geops 命令的更多信息,请参阅 geops(1M) 手册页。

  4. 验证是否已将群集添加至伙伴关系,以及是否已正确定义了伙伴关系属性。


    # geops list
    # geoadm status

示例 5–3 加入伙伴关系

本示例将群集 cluster-newyork 加入示例 5–1 中在群集 cluster-paris 上创建的伙伴关系。


# geops join-partnership cluster-paris paris-newyork-ps
# geops list
# geoadm status


示例 5–4 创建并加入与其他域中某个远程群集之间的伙伴关系

本示例将在群集 cluster-paris.francecluster-newyork.usa 之间创建并配置 paris-newyork-ps 伙伴关系。

  1. 在群集 cluster-paris.france 的某个节点上,为此伙伴关系配置信任关系。


    phys-paris-1# geops add-trust -c cluster-newyork.usa
    phys-paris-2# geops add-trust -c cluster-newyork.usa
  2. 在群集 cluster-newyork.usa 的某个节点上,为此伙伴关系配置信任关系。


    phys-newyork-1# geops add-trust -c cluster-paris.france
    phys-newyork-2# geops add-trust -c cluster-paris.france
  3. cluster-newyork.usa 上,检验是否正确设置了信任关系。


    cluster-newyork# geops verify-trust -c cluster-newyork.usa
  4. cluster-paris.france 上,建立伙伴关系 paris-newyork-ps


    cluster-paris# geops create -c cluster-newyork.usa -p Description=Transatlantic \
    -p Notification_emailaddrs=sysadmin@companyX.com paris-newyork-ps
  5. cluster-newyork.usa 上,加入伙伴关系 paris-newyork-ps


    cluster-newyork# geops join-partnership cluster-paris.france paris-newyork-ps
  6. 检验是否已成功创建伙伴关系。


    # geops list
    # geoadm status

脱离或删除伙伴关系

您也可以使用 geops 命令从伙伴关系中删除群集,并释放与该伙伴关系相关联的所有资源。

由于此命令可以破坏本地伙伴关系配置信息,所以当最后一个成员脱离伙伴关系时,伙伴关系将不复存在。

Procedure如何脱离伙伴关系

开始之前

确保满足以下条件:

  1. 登录到一个群集节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 验证伙伴关系是否不包含任何保护组。


    # geopg list

    如果发现伙伴关系中包含保护组,请使用 geopg delete 命令将其删除。有关删除保护组的信息,请参见以下数据复制指南之一:

  3. 在伙伴关系群集成员的某一节点上删除该伙伴关系。


    # geops leave-partnership partnershipname
    
    partnershipname

    指定伙伴关系的名称。


    注 –

    geops leave-partnership 命令可以删除为伙伴关系配置的心跳,包括自定义心跳。


    有关更多信息,请参阅 geops(1M) 手册页。


示例 5–5 脱离伙伴关系

在本示例中,cluster-paris 群集将脱离 paris-newyork-ps 伙伴关系。


phys-paris-1# geops leave-partnership paris-newyork-ps


示例 5–6 删除伙伴关系

当按上例所述使群集 cluster-paris 脱离 paris-newyork-ps 伙伴关系之后,伙伴关系中将仅存在成员 cluster-newyork。您可以通过强制 cluster-newyork 群集脱离 paris-newyork-ps 伙伴关系来删除该伙伴关系。


phys-newyork-1# geops leave-partnership paris-newyork-ps

接下来的操作

对伙伴关系中的另一群集重复执行此过程。

重新同步伙伴关系

发生灾难时,如果伙伴群集断开连接,可能会迫使管理员对伙伴群集所共享的某个保护组执行接管操作。当双方群集都再次进入联机状态时,两个伙伴群集均有可能报告自己是保护组的主群集。您必须使用从伙伴群集处检索到的配置信息来重新同步本地保护组的配置信息。

如果为伙伴关系成员的群集出现故障,在群集重新启动时,群集可以检测到发生故障期间是否修改了伙伴关系参数。需要您决定保留何种伙伴关系配置信息:发生故障的群集上的信息,或者是故障转移群集上的信息。然后,相应地重新同步伙伴关系的配置。

如果原来的辅助群集先关闭,然后又恢复运行,则您无需在此后重新同步配置信息。

使用 geoadm status 命令检查是否需要重新同步伙伴关系。如果 Configuration 状态为 Synchronization Status Error,则需要重新同步伙伴关系。如果 Local statusPartnership Error,则不要重新同步伙伴关系。请等到发生心跳交换后再同步。

Procedure如何重新同步伙伴关系

开始之前

确保满足以下条件:


注意 – 注意 –

重新同步伙伴关系将会覆盖群集上的伙伴关系配置,此处的群集指的是使用来自伙伴群集的信息发出重新同步命令的群集。


  1. 登录到一个需要用从伙伴群集上检索到的信息进行重新同步的群集节点。

    要完成此过程,必须为您指定 Geo Management RBAC 权限配置文件。有关 RBAC 的更多信息,请参见Sun Cluster Geographic Edition 软件和 RBAC

  2. 重新同步伙伴关系。


    # geops update partnershipname
    
    partnershipname

    指定伙伴关系的名称。


示例 5–7 重新同步伙伴关系

本示例将重新同步伙伴关系。


# geops update paris-newyork-ps