准备脚本

您必须为 Oracle Cloud Infrastructure Full Stack Disaster Recovery Service 提供自定义脚本,以执行切换和故障转移计划中的某些操作。

关于用于复制 Oracle WebLogic Server for OCI 配置的脚本

如果使用“带有 rsync 的 OCI 文件存储”或“数据库文件系统 (DBFS)”方法和配置复制脚本将 Oracle WebLogic 域复制到备用站点,则可以将它们作为“用户步骤”添加到切换计划。

注意:

这适用于基于配置复制的 " OCI File Storage with rsync" 和 "Database File System (DBFS)" 方法的灾难恢复模型。

此步骤不适用于基于 Oracle Cloud Infrastructure Block Volumes 跨区域副本的灾难恢复模型。

如果使用配置复制脚本将 Oracle WebLogic 域复制到备用站点,则可以将它们作为用户步骤添加到切换计划。

如果备用数据库中的 Oracle WebLogic 配置已与主数据库同步,则运行这些配置不是必需的。否则,您可以在切换之前运行脚本,以便从备用 Oracle WebLogic 域中的主数据库获取最新配置。

对于 Oracle WebLogic Server for OCIOracle SOA Suite on Marketplace 灾难恢复案例,必须先在具有主要角色的站点的管理主机 0 中运行脚本,然后在具有备用角色的站点的管理主机中运行脚本。

有关脚本,请参阅 Oracle WebLogic Server for Oracle Cloud Infrastructure,Disaster Recovery Production and DR in the Oracle Cloud Infrastructure (OCI)SOA Suite on Oracle Cloud Infrastructure Marketplace Disaster Recovery,Production and Disaster Recovery in the Oracle Cloud Infrastructure (OCI)

在管理主机中找到脚本的路径。例如,/u01/scripts/config_replica.sh

关于更新数据库连接字符串的脚本

如果您使用基于 OCI 块存储卷跨区域副本的灾难恢复模型,则必须在切换或故障转移操作后对 Oracle WebLogic 域配置执行替换。
Oracle WebLogic 域配置是来自主数据库的副本。由于 Oracle WebLogic 配置文件中的数据库连接字符串指向主数据库,因此在切换或故障转移后需要将其替换为辅助数据库连接详细信息。相反,当有切换回或故障恢复时。

注意:

此任务仅适用于基于 OCI 块存储卷跨区域复制的灾难恢复模型。此任务不适用于基于配置复制的“带 rsync 的 OCI 文件存储”和“数据库文件系统 (DBFS)”方法的灾难恢复模型。

要自动执行此替换,请使用脚本 replacement_script_BVmodel.sh。此脚本在 Oracle WebLogic Server for Oracle Cloud Infrastructure,Disaster Recovery Production and DR in the Oracle Cloud Infrastructure (OCI)SOA Suite on Oracle Cloud Infrastructure Marketplace Disaster Recovery,Production and Disaster Recovery in the Oracle Cloud Infrastructure (OCI) 中针对块存储卷跨区域 DR 模型提供。您可以将此脚本放置在主节点和备用节点中的所有 WebLogic 节点中,所在的文件夹不在复制的块存储卷中。必须使用每个区域中的相应值定制脚本。

在主机中找到脚本的路径。例如,/u01/scripts/replacement_script_BVmodel.sh

定义切换和故障转移计划时,将此脚本作为用户定义的步骤添加到计划中。

创建脚本以启动和停止 Oracle WebLogic 进程

创建要调用的定制脚本以停止和启动 Oracle WebLogic 进程。如果您已具有用于停止和启动 Oracle WebLogic 进程的定制脚本,则可以在 OCI 全栈灾难恢复服务计划中使用它们。或者,使用下载代码部分中提供的 wls_stop.shwls_start.sh 脚本。这些脚本对 Oracle WebLogic Server for OCIOracle SOA Suite on Marketplace 有效。这些脚本分别启动和停止所有 Oracle WebLogic 进程(管理服务器、托管服务器和节点管理器)或每个进程。

对于 OCI Full Stack Disaster Recovery Service 执行的切换和故障转移操作,Oracle 建议使用以下脚本。以下示例脚本利用提供的 wls_stop.shwls_start.sh 脚本(它们使用特定选项调用它们),并在以后定义 DR 计划时从定制计划组调用这些脚本:

  1. 创建脚本以在中间层管理主机中启动 Oracle WebLogic 管理服务器。它还将启动节点管理器(如果节点管理器已停止)。
    下面是一个脚本示例:custom_start_aserver.sh。将此自定义脚本放在中间层主机的文件夹中,例如 /opt/scripts。DR 计划中提供了脚本的完整路径。
    # Remove .pid, .lck and .state files (that could have been left behind if a previous crash) before starting
    rm -f ${DOMAIN_HOME}/servers/*/data/nodemanager/*.lck
    rm -f ${DOMAIN_HOME}/servers/*/data/nodemanager/*.state
    rm -f ${DOMAIN_HOME}/servers/*/data/nodemanager/*.pid
    # Call to the script that starts the Node Manager (if not already up) and Admin server in this node
    /opt/scripts/restart/wls_start.sh aserver
  2. 创建脚本以在每个中间层主机中启动 Oracle WebLogic 托管服务器。它还将启动主机中的节点管理器(如果已停止)。
    下面是一个脚本示例:custom_start_mserver.sh。将此自定义脚本放在中间层主机的文件夹中,例如 /opt/scripts。DR 计划中提供了脚本的完整路径。
    # Remove .pid, .lck and .state files (that could have been left behind if a previous crash) before starting
    rm -f ${DOMAIN_HOME}/servers/*server_*/data/nodemanager/*.lck
    rm -f ${DOMAIN_HOME}/servers/*server_*/data/nodemanager/*.state
    rm -f ${DOMAIN_HOME}/servers/*server_*/data/nodemanager/*.pid
    # Call to the script that starts the Node Manager (if not already up) and managed server in this node
    /opt/scripts/restart/wls_start.sh mserver
  3. 创建脚本以停止每个中层主机中的主机(管理服务器(如果是管理主机和托管服务器)中的 Oracle WebLogic 进程。节点管理器将保持打开状态。
    下面是一个脚本示例:custom_stop.sh。将此自定义脚本放在中间层主机的文件夹中,例如 /opt/scripts。DR 计划中提供了脚本的完整路径。
    • 如果使用“带有 rsync 的 OCI 文件存储”或“数据库文件系统 (DBFS)”方法复制配置,则可以保持节点管理器正常运行。
      # Call to the script that stops WLS processes but leave the node manager up
      /opt/scripts/restart/wls_stop.sh servers
    • 如果您使用的是块存储卷跨区域副本模型,则必须停止所有与 WebLogic 服务器相关的进程,以便在切换期间卸载块存储卷。停止 WebLogic 服务器进程后,必须停止节点管理器进程。在 custom_stop.sh 脚本中使用以下内容:
      # Call to the script that stops WLS processes and node manager in this host
      /opt/scripts/restart/wls_stop.sh all

创建脚本以更改 DNS 前端名称

您可以添加定制计划组和步骤来自动更改 DNS,以更改 DNS 提供商中的前端 DNS 记录。

如果您使用的是 Oracle Cloud Infrastructure DNS,则可以在本文档的下载脚本部分中找到此脚本的示例。

  • 切换到区域 2 时,必须运行脚本来更新前端名称 DNS 记录,以指向负载平衡器的区域 2 IP。将此脚本放置在区域 2 中间层主机之一中。
  • 切换到区域 1 时,运行脚本来更新正面名称 DNS 记录,以指向负载平衡器区域 1 的 IP。将该脚本放置在区域 1 中间层主机之一中。
  • 或者,您可以在每个站点中创建 Oracle Cloud Infrastructure 函数,在无服务器模式下运行相应的脚本。

确定其他自定义脚本

确定并查找在执行切换或故障转移操作时需要在系统中运行的任何其他脚本。在定义灾难恢复计划时,将从定制计划组中调用这些脚本。