在 OCI 上准备中间层

Oracle Cloud Infrastructure (OCI) 上预配并准备用于灾难恢复的中间层主机。

为 SOA 中间层节点预配计算实例

Oracle Cloud Infrastructure (OCI) 中间层子网上为每个内部部署 Oracle SOA Suite 主机创建一个虚拟机 (VM) 计算实例。计算实例必须使用与内部部署主机使用的映像和配置类似的 OS 映像和计算配置。

本示例在区间内的单个可用性域中使用两个计算实例,如下表所示。

名称 区间 可用性域 图像 配置 VCN 子网
hydrsoa1 HyDRCompmt AD1 Oracle Linux 7.9 VM.Standard2.2 hydrvcn midTierSubnet
hydrsoa2 HyDRCompmt AD1 Oracle Linux 7.9 VM.Standard2.2 hydrvcn midTierSubnet
  1. 连接到租户的 OCI 控制台
  2. 选择正确的区域。
  3. 打开导航菜单并单击计算,然后单击创建实例
  4. 选择要在其中创建实例的区间。
  5. 选择环境的 VCN、子网和可用性域。
    如果 OCI 区域具有多个可用性域,则将 Oracle SOA Suite 计算实例放置在不同的可用性域中。
  6. 选择符合您需求的 OS 映像和配置。
  7. 重复这些步骤以创建其他计算实例。

注意:

您可以在下载代码中找到用于创建这些计算实例的 Terraform 代码。

准备操作系统用户和组

创建主内部部署 Oracle 软件使用的相同用户和组。用户和组标识符 (ID) 必须与主环境中的标识符相同。

您可以使用 SSH 以 opc 用户身份访问最近创建的实例。此用户具有 sudo 权限,可用于创建其他用户和组。您需要为 oracle 软件创建由主内部部署使用的相同用户和组,确保用户和组 ID 与主 ID 相同。

本示例使用 EDG 环境中的典型用户和组,如表中所示。

用户或组 名称 说明
用户 nobody 非特权用户
oracle Oracle 软件的所有者(可以使用其他名称)。此账户的主要组必须为 oinstall。该帐户还必须位于 dba 组中。
oinstall oracle 用户的主用户组
dba oracle 用户的辅助组

在辅助计算实例中创建用户和组。为 Oracle 软件创建由主内部部署使用的相同用户和组,确保用户和组 ID 与主 ID 相同。

OCI 计算实例中的每个组和用户在每个节点上都必须具有与在主节点上相同的 ID。

  1. 标识主要主机中的 ID。
    1. 使用 oracle 用户登录到内部部署 Oracle SOA Suite 主机,然后使用命令 id 标识用户的组和 ID。
      [oracle@host3.myopnetwork.com ~]$ id
      uid=1001(oracle) gid=1002(oinstall) groups=1002(oinstall),1001(dba)
       [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep nobody
      nobody:x:99:99:Nobody:/:/bin/false
      [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep oracle
      oracle:x:1001:1002::/home/oracle:/bin/bash
    2. 检查 OCI 计算实例中是否存在任何用户和组。
      [opc@hydrsoa1 ~]$ more /etc/passwd | grep 1001
      [opc@hydrsoa1 ~]$ more /etc/group | grep 1001
      [opc@hydrsoa1 ~]$ more /etc/group | grep 1002
    3. 检查 OCI 计算实例中是否存在任何用户和组 ID。
      [oracle@host3.myopnetwork.com ~]$ id
      uid=1001(oracle) gid=1002(oinstall) groups=1002(oinstall),1001(dba)
       [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep nobody
      nobody:x:99:99:Nobody:/:/bin/false
      [oracle@ host3.myopnetwork.com ~]$ more /etc/passwd | grep oracle
      oracle:x:1001:1002::/home/oracle:/bin/bash
      
      预计 OCI SOA 计算实例中未创建任何 Oracle 相关用户或组。通常,只有用户 nobody 已存在。因此,可以使用辅助表中的主要 ID。
  2. 使用与主主机相同的用户 ID 和组 ID 在每个 OCI SOA 计算实例中创建组和用户。
    例如,
    sudo -s
    groupadd oinstall -g 1002
    groupadd dba -g 1001
    useradd -u 1001 oracle -g oinstall -G dba
  3. (可选的推荐)启用对新创建的 oracle 用户的 SSH 访问。
    启用对新创建的 oracle 用户的 SSH 访问是可选的,但强烈建议这样做。此 DR 拓扑非常有用,因为它允许 oracle 用户直接连接到用于复制文件系统对象的命令。
    1. 将用于连接到 SOA 计算实例的公共密钥复制到文本文件。稍后将在此过程中使用它。
    2. 登录到实例,然后登录到 root 用户 sudo
    3. 在新用户的主目录中创建 .ssh 目录。
      mkdir /home/oracle/.ssh
    4. 将用于连接到计算的 SSH 公共密钥复制到文件中。
      /home/oracle/.ssh/authorized_keys
    5. /home/oracle/.ssh 目录的所有者和组更改为 oracle 用户:
      chown -R oracle:oinstall /home/oracle/.ssh
    6. 更改 authorized_keys 文件的权限,以授予 oracle 用户对文件的完全读写访问权限 (600)。
      chmod 600 /home/oracle/.ssh/authorized_keys
    7. 使用 oracle 用户和私钥通过 SSH 连接来验证连接。

准备操作系统要求

辅助中间层主机必须满足操作系统要求才能运行软件。

要使 Oracle SOA SuiteOracle WebLogic Server 二进制文件正常运行,必须为备用系统的操作系统做好准备的方式与安装软件时在主系统的准备方式相同。

SOA 主目录的二进制文件从主 SOA 主机复制到辅助 SOA 主机。因此,无需在辅助 SOA 主机中运行 runinstaller。但是,操作系统要求必须相同。

  1. 确保您的环境满足主要 SOA 主机中安装的产品的最低安装要求。
  2. 验证您的版本和 OS 所需的系统软件包。
  3. 使用 yum 安装缺少的系统软件包。
    此示例使用 Oracle Fusion Middleware 12.21.4 和 Oracle Linux 7,并且大多数必需的程序包已安装在 Oracle Cloud Infrastructure (OCI) 中间层计算实例中。在此示例中,缺少以下项,必须使用 yum 进行安装:
    yum install compat-libcap1.x86_64
    yum install compat-libstdc++-33.x86_64
    yum install compat-libstdc++-33.i686
    yum install gcc-c++.x86_64
    yum install libaio-devel.x86_64
    yum install libstdc++.i686
    yum install libstdc++-devel.x86_64
    yum install dejavu-serif-fonts
    yum install numactl.x86_64
    yum install numactl-devel.x86_64
    yum install motif.x86_64
    yum install motif-devel.x86_64
    yum install redhat-lsb.x86_64
    yum install xorg-x11-utils.x86_64
  4. /etc/security/limits.conf 文件中配置 fileproc 限制。查看内部部署 SOA 主机中的限制,并在 OCI SOA 计算实例中相应地设置值。

准备主机名别名

将主环境中的 Oracle WebLogic Server 组件使用的虚拟主机名配置为辅助 Oracle Cloud Infrastructure (OCI) SOA 计算实例中的别名,但指向辅助主机的 IP 地址。
可以通过以下方式实现此功能:
  • 将主机名作为别名添加到 OCI SOA 计算实例的 /etc/hosts 文件中。
  • 在辅助 OCI VCN 中使用专用 DNS 视图。

使用 /etc/hosts 文件

Oracle WebLogic Server 使用的虚拟主机名将添加到辅助 Oracle WebLogic Server 主机的 /etc/hosts 文件中,指向辅助 Oracle WebLogic Server 主机的 IP 地址。 当 DNS 服务器在主内部部署站点和辅助 Oracle Cloud Infrastructure (OCI) 站点上相同,在主站点和辅助站点中使用分隔的 DNS 服务器时,此模式有效。/etc/hosts 文件中的条目优先于 DNS 解析,因为这是 /etc/nsswitch.conf 文件的指令“主机”中现成定义的优先级。
  1. 编辑每个 SOA 计算实例的 /etc/oci-hostname.conf 文件,并将属性 PRESERVE_HOSTINFO=3 设置为在实例重新引导后保留 /etc/hosts 条目。
  2. 使用命令 hostname --fqdn 标识 OCI SOA 计算实例的完整主机名。
  3. 将以下条目添加到 OCI SOA 计算实例的 /etc/hosts 文件中:
    #################################
    # ALIASES on OCI for DR
    #################################
    virtual_IP_for_admin           virtualIP_fqdn virtualIP_hostname    ALIAS_OF_ADMINVHN
    soahost1_compute_instance_IP  soahost1_fqdn   soahost1_hostname   ALIAS_OF_SOAHOST1 
    soahost2_compute_instance_IP  soahost2_fqdn   soahost2_hostname   ALIAS_OF_SOAHOST2    
    
    以下是辅助 OCI SOA 计算实例中 /etc/hosts 文件的示例:
    #################################
    # ALIASES on OCI for DR
    #################################
    100.70.10.20   hydrsoa-vip.midTiersubnet.hydrvcn.oraclevcn.com    hydrsoa-vip       ADMINVHN.example.com   ADMINVHN
    100.70.10.13   hydrsoa1.midTiersubnet.hydrvcn.oraclevcn.com       hydrsoa1          SOAHOST1.example.com   SOAHOST1
    100.70.10.14   hydrsoa2.midTiersubnet.hydrvcn.oraclevcn.com       hydrsoa2          SOAHOST2.example.com   SOAHOST2

使用域名系统 (DNS)

Oracle WebLogic Server 主机使用的虚拟主机名将添加到辅助中间层服务器的 VCN 使用的 DNS 解析程序中,指向辅助 Oracle WebLogic Server 主机的 IP 地址。 在主内部部署和 Oracle Cloud Infrastructure (OCI) 上的辅助内部部署中使用单独的 DNS 服务器时,此模式有效。否则,可能会导致命名解析冲突。每个站点的服务器应使用自己的 IP 解析这些名称。此方法的优点是可以将所有条目添加到专用 DNS 视图,而不是将其添加到所有 Oracle WebLogic Server 主机的所有 /etc/hosts 中。

以下步骤是在辅助 VCN 中创建专用视图并解析主数据库与辅助 IP 结合使用的虚拟主机名:

  1. 在 OCI 控制台中,转至辅助区域并创建专用视图。
    1. 单击网络DNS 管理专用视图,然后单击创建专用视图
      例如,您可以将专用视图命名为 HYBRID_DR_VIRTUAL_HOSTNAMES
    2. 在专用视图中单击创建区域
      对于区域名称,必须使用虚拟主机的完整域。在此示例中:example.com。
    3. 将虚拟主机名称添加到此区域(简称),但使用辅助 WLS 主机的 IPS 进行解析。
    4. 单击发布更改
  2. 将专用视图添加到辅助 VCN 解析程序。
    1. 单击 VCN 中的 DNS 解析程序资源。
    2. 添加之前创建的 DNS 专用视图。
      辅助 VCN 中的主机将使用专用视图解析主要 Oracle WebLogic Server 主机使用的虚拟主机名。
  3. 通过执行虚拟主机名 pingnslookup 验证解析的 SECONDARY 主机。
    它们必须使用等效的 SECONDARY IP 来解决。

    注意:

    您可以在下载代码中找到 Terraform 代码来创建此 OCI 专用视图和记录。

为 WebLogic 管理服务器创建和配置虚拟 IP

为了实现高可用性,WebLogic 管理服务器必须使用映射到虚拟 IP 的主机名,以允许在节点之间进行故障转移。

注意:

如果未在主系统中使用管理服务器的 VIP 地址,请跳过此任务。

soahost1 计算实例的 VNIC 分配一个附加 IP。附加 IP 由管理服务器在辅助 Oracle Cloud Infrastructure (OCI) 系统中使用。尽管此 IP 通常会附加到 soahost1 计算实例,但可以将其移动到 soahost2 计算实例,以便为管理服务器提供本地故障转移,如 EDG 中所述。

使用 OCI 控制台将新 IP 连接到 VNIC 后,必须在 OS 中以非持久性模式对其进行配置(因为此 IP 可以从 soahost1 移动到 soahost2 以进行管理服务器故障转移)。

  1. 为 OCI 中 soahost1 计算实例的 VNIC 分配新的辅助专用 IP 地址。
    在主机名中提供一个值,以帮助您将该值标识为虚拟 IP。例如,hydrsoa-vip
  2. 将新 IP 连接到 VNIC 后,在 OS 中以非持久性模式配置新 IP 地址。
    这是必需的,因为 IP 可以从 soahosthost1 移动到 soahosthost2 以进行管理服务器故障转移。
    1. 查看 soahosthost1 计算实例的网络接口和附加的 IP 地址。
      在此示例中,以下是 VNIC 的主要 IP:inet 100.70.10.13/20 brd 100.70.10.255 scope global dynamic ens3
      [opc@hydrsoa1 ~]$ ip addr
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host
             valid_lft forever preferred_lft forever
      2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast state UP group default qlen 1000
          link/ether 00:00:17:00:05:87 brd ff:ff:ff:ff:ff:ff
          inet 100.70.10.13/20 brd 100.70.10.255 scope global dynamic ens3
             valid_lft 60218sec preferred_lft 60218sec
          inet6 fe80::200:17ff:fe00:587/64 scope link
             valid_lft forever preferred_lft forever
    2. 以 root 用户身份,通过在标签中设置序列号,将虚拟 IP 作为附加 IP 添加到接口。
      [root@hydrsoa1 ~]# ip addr add 100.70.10.20/20 dev ens3 label ens3:1
    3. 验证接口现在是否具有新 IP。
      在此示例中,以下是 VNIC 的辅助 IP:inet 100.70.10.20/20 scope global secondary ens3:1
      [root@hydrsoa1 ~]# ip addr
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host
             valid_lft forever preferred_lft forever
      2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast state UP group default qlen 1000
          link/ether 00:00:17:00:05:87 brd ff:ff:ff:ff:ff:ff
          inet 100.70.10.13/20 brd 100.70.10.255 scope global dynamic ens3
             valid_lft 59873sec preferred_lft 59873sec
          inet 100.70.10.20/20 scope global secondary ens3:1
             valid_lft forever preferred_lft forever
          inet6 fe80::200:17ff:fe00:587/64 scope link
             valid_lft forever preferred_lft forever

打开 OCI 主机防火墙中的所需端口

每个计算实例都有一个本地防火墙服务。出于安全原因,默认配置是拒绝除最低必需端口 (sshdhcp) 以外的所有端口的连接。必须打开 Oracle WebLogic Server 使用的端口。

  1. 以 root 用户身份,检查每个 Oracle SOA Suite 计算实例中防火墙服务的状态和规则。
    bash-4.2# firewall-cmd --state
    running
    bash-4.2# firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: ens3
      sources:
      services: dhcpv6-client ssh
      ports:
      protocols:
      masquerade: no
      forward-ports:
      source-ports:
      icmp-blocks:
      rich rules:
    此输出表示没有打开除 22 以外的端口。
  2. 以 root 用户身份,使用 firewall-cmd 命令打开每个 SOA 计算实例中系统组件使用的端口。
    例如:
    firewall-cmd --permanent --add-port=7001/tcp
    firewall-cmd --permanent --add-port=5556/tcp
    firewall-cmd --permanent --add-port=7010/tcp
    firewall-cmd --permanent --add-port=8001/tcp
    firewall-cmd --permanent --add-port=8011/tcp
    firewall-cmd --permanent --add-port=8021/tcp
    firewall-cmd --permanent --add-port=9001/tcp
    firewall-cmd --permanent --add-port=7801/tcp
    firewall-cmd --permanent --add-port=7801/udp
    service firewalld reload
  3. If you are using Coherence, then open tcp and udp for the Coherence cluster port (for example, 9991), for the ephemeral ports and tcp for port 7:
    Coherence 要求您为 Coherence 集群通信打开其他端口。
    sudo firewall-cmd --permanent --add-port=9991/udp
    sudo firewall-cmd --permanent --add-port=9991/tcp
    sudo firewall-cmd --permanent --add-port=32768-60999/udp
    sudo firewall-cmd --permanent --add-port=32768-60999/tcp
    sudo firewall-cmd --permanent --add-port=7/tcp
    sudo service firewalld reload
  4. 检查防火墙服务的状态和规则。
    bash-4.2# firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: ens3
      sources:
      services: dhcpv6-client ssh
      ports: 7001/tcp 5556/tcp 8001/tcp 9001/tcp 9991/tcp ...
      protocols:
      masquerade: no
      forward-ports:
      source-ports:
      icmp-blocks:
      rich rules:

挂载 OCI 文件系统

以前在 Oracle Cloud Infrastructure (OCI) 上创建的文件系统必须挂载在 Oracle SOA Suite 计算实例中。

  1. ssh 连接到 opc 用户的 SOA 计算实例,然后安装 NFS 客户端。
    sudo yum install nfs-utils
  2. 在每个 SOA 计算实例中创建挂载点。
    例如,为 productsconfigruntime 创建目录。您的值可能有所不同。
    sudo mkdir -p /u01/oracle/products
    sudo mkdir -p /u01/oracle/config
    sudo mkdir -p /u01/oracle/runtime
  3. 以 root 用户身份,将条目添加到 soahost1 计算实例中的 /etc/fstab 目录。
    在以下示例中,100.70.8.101 是挂载目标的 IP 地址的示例值。如果您的 OCI 区域具有多个可用性域,并且您创建了多个挂载点,则对每次导出使用相应的挂载目标 IP。
    100.70.8.101:/export/soadrconfig	       /u01/oracle/config nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrruntime          /u01/oracle/runtime nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrproducts1        /u01/oracle/products nfs defaults,nofail,nosuid,resvport 0 0
  4. 以 root 用户身份,将条目添加到 soahost2 计算实例中的 /etc/fstab 目录。
    在以下示例中,100.70.8.101 是挂载目标的 IP 地址的示例值。如果您的 OCI 区域具有多个可用性域,并且您创建了多个挂载点,则对每次导出使用相应的挂载目标 IP。
    100.70.8.101:/export/soadrconfig	        /u01/oracle/config nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrruntime           /u01/oracle/runtime nfs defaults,nofail,nosuid,resvport 0 0
    100.70.8.101:/export/soadrproducts2         /u01/oracle/products nfs defaults,nofail,nosuid,resvport 0 0
  5. 以 root 用户身份,在每个 soa 计算实例中挂载文件系统:
    mount -a 
  6. 验证文件系统是否已正确挂载。
    df -h
    hydrsoa1hydrsoa2 的输出应类似于以下示例:
    [root@hydrsoa1 ~]# df -h
    Filesystem                           Size  Used Avail Use% Mounted on
    devtmpfs                              15G     0   15G   0% /dev
    tmpfs                                 15G     0   15G   0% /dev/shm
    tmpfs                                 15G   25M   15G   1% /run
    tmpfs                                 15G     0   15G   0% /sys/fs/cgroup
    /dev/sda3                             39G  4.4G   35G  12% /
    /dev/sda1                            200M  7.4M  193M   4% /boot/efi
    tmpfs                                3.0G     0  3.0G   0% /run/user/0
    tmpfs                                3.0G     0  3.0G   0% /run/user/994
    tmpfs                                3.0G     0  3.0G   0% /run/user/1000
    100.70.8.101:/export/soadrconfig     8.0E     0  8.0E   0% /u01/oracle/config
    100.70.8.101:/export/soadrruntime    8.0E     0  8.0E   0% /u01/oracle/runtime
    100.70.8.101:/export/soadrproducts1  8.0E     0  8.0E   0% /u01/oracle/products
    [root@hydrsoa2 ~]# df -h
    Filesystem                          Size  Used Avail Use% Mounted on
    devtmpfs                             15G     0   15G   0% /dev
    tmpfs                                15G     0   15G   0% /dev/shm
    tmpfs                                15G   25M   15G   1% /run
    tmpfs                                15G     0   15G   0% /sys/fs/cgroup
    /dev/sda3                            39G  4.4G   35G  12% /
    /dev/sda1                           200M  7.4M  193M   4% /boot/efi
    tmpfs                               3.0G     0  3.0G   0% /run/user/0
    tmpfs                               3.0G     0  3.0G   0% /run/user/994
    tmpfs                               3.0G     0  3.0G   0% /run/user/1000
    100.70.8.101:/export/soadrconfig    8.0E     0  8.0E   0% /u01/oracle/config
    100.70.8.101:/export/soadrruntime   8.0E     0  8.0E   0% /u01/oracle/runtime
    100.70.8.101:/export/soadrproducts2  8.0E     0  8.0E   0% /u01/oracle/products
  7. 将文件夹的所有权更改为 oracle 用户和组。
    [root@hydrsoa1 ~]#chown -R oracle:oinstall /u01/oracle/products
    [root@hydrsoa1 ~]#chown -R oracle:oinstall /u01/oracle/config
    [root@hydrsoa1 ~]#chown -R oracle:oinstall /u01/oracle/runtime
    [root@hydrsoa2 ~]#chown -R oracle:oinstall /u01/oracle/products
    [root@hydrsoa2 ~]#chown -R oracle:oinstall /u01/oracle/config
    [root@hydrsoa2 ~]#chown -R oracle:oinstall /u01/oracle/runtime
    
  8. oracle 用户身份登录,并验证是否可以在这些文件系统中创建文件。对于共享的文件系统(/u01/oracle/config/u01/oracle/runtime),请验证在一个主机中创建文件时是否可从另一个主机看到。

挂载 OCI 块存储卷

挂载之前在 Oracle SOA Suite 计算实例中创建的块存储卷。

例如,

块存储卷 计算实例 装载点
soadrBV1 水力 soa1 /u02
soadrBV2 水力 soa2 /u02
  1. 以 root 用户身份连接到所有 SOA 主机,并创建将用作挂载点的文件夹。
    [root@hydrsoa1 ~]# mkdir -p /u02
  2. 连接到租户的 Oracle Cloud Infrastructure (OCI) 控制台
  3. 选择正确的区域。
  4. 打开导航菜单,单击 StorageBlock Storage ,然后单击 Block Volumes
  5. 单击其中一个块存储卷。
  6. 单击附加的实例,然后单击附加到实例
    1. 选择 iSCSI 附加类型。
      与半虚拟化连接相比,使用 iSCSI 连接时,IOPS 性能更佳。
    2. 选择读/写访问类型。
    3. 选择适当的计算实例。
  7. 附加到计算实例。
  8. 附加卷后,单击块存储卷连接中的 iSCSI 命令和信息以运行块存储卷的 iSCSI 命令。
    "iSCSI Commands and Information" 对话框显示所需的 iSCSI 命令。这些命令可以与包括的相应信息一起使用。您可以复制命令并将其粘贴到计算实例会话中。
  9. 列出卷并确定新卷。
    例如:
    bash-4.2# lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sdb      8:16   0   50G  0 disk ------------> this is the new one
    sda      8:0    0 46.6G  0 disk
    ├─sda2   8:2    0    8G  0 part [SWAP]
    ├─sda3   8:3    0 38.4G  0 part /
    └─sda1   8:1    0  200M  0 part /boot/efi
  10. 设置新卷的格式。
    例如:
    bash-4.2# mkfs.xfs -f /dev/sdb
    
    meta-data=/dev/sdb               isize=256    agcount=4, agsize=3276800 blks
             =                       sectsz=4096  attr=2, projid32bit=1
             =                       crc=0        finobt=0, sparse=0, rmapbt=0
             =                       reflink=0
    data     =                       bsize=4096   blocks=13107200, imaxpct=25
             =                       sunit=0      swidth=0 blks
    naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
    log      =internal log           bsize=4096   blocks=6400, version=2
             =                       sectsz=4096  sunit=1 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
  11. 挂载卷。
    1. 使用命令 blkid 标识新块存储卷的 UUID。
      例如:
      bash-4.2# blkid
      /dev/sda3: UUID="1517ce80-df91-45cc-a27e-2aa38b3f6646" TYPE="xfs" PARTUUID="c42a8415-7230-42bb-970a-3b4c3142d279"
      /dev/sda1: SEC_TYPE="msdos" UUID="A1E6-54F8" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="78756fd0-3be7-4fbb-b8a8-3d6f68a84b34"
      /dev/sda2: UUID="5384ac33-8ffe-4ad8-8d40-6307f2756dc5" TYPE="swap" PARTUUID="0adbce70-6c26-44fd-bec5-c191a6f9e02f"
      /dev/sdb: UUID="47955773-743f-4bde-bf2f-68ce0f71dbf9" TYPE="xfs"
    2. 编辑 /etc/fstab 文件并添加用于挂载块存储卷的行。
      例如:
      UUID=47955773-743f-4bde-bf2f-68ce0f71dbf9 /u02 xfs defaults,_netdev,nofail 0 2
    3. 挂载块存储卷。
      bash-4.2# mount -a
    4. 验证它是否已挂载。
      [opc@hydrsoa1 ~]$ df -h
      Filesystem                              Size  Used Avail Use% Mounted on
      devtmpfs                                15G     0   15G   0% /dev
      tmpfs                                   15G     0   15G   0% /dev/shm
      tmpfs                                   15G  8.8M   15G   1% /run
      …
      /dev/sdb                                50G   33M   50G   1% /u02
      …
  12. 挂载块存储卷后,将挂载的所有权更改为相应的 oracle 用户。
    bash-4.2# chown oracle:oinstall /u02
  13. 重新引导主机并验证块存储卷是否在重新引导后自动挂载。
  14. 重复这些步骤以将块存储卷挂载到辅助 SOA 主机的其余部分。
    有关附加卷的详细信息,请参阅 Oracle Cloud Infrastructure 文档

创建 TNS 别名

创建指向 Oracle Cloud Infrastructure (OCI) 数据库系统的 TNS 目录和 tnsnames.ora 文件。由于辅助服务器中的 WebLogic 域配置是主服务器的副本,因此必须创建主数据库中的相同对象,才能在 WebLogic 数据源中使用 TNS 别名方法。

  1. oracle 用户身份,使用主中间层主机中使用的相同路径在每个 SOA 计算实例中创建 tns 文件夹。
    这应该是不会从主文件夹中复制的本地文件夹。
    [oracle@hydrsoa1 ~]$ mkdir -p /home/oracle/tnsnames_dir
    [oracle@hydrsoa2 ~]$ mkdir -p /home/oracle/tnsnames_dir
  2. 在目录中创建一个 tnsnames.ora 文件,该文件具有在主数据库中使用的相同 tns 别名,但指向 OCI 数据库系统的地址。

    服务名在主要和辅助名称中应相同。

    SOAPDB =
    (DESCRIPTION=
      (ADDRESS_LIST=
        (LOAD_BALANCE=ON)
        (ADDRESS=(PROTOCOL=TCP)(HOST=hydrdb-scan.dbTierSubnet.hydrvcn.oraclevcn.com)(PORT=1521))
      )
      (CONNECT_DATA=(SERVICE_NAME=soapdb.example.com))
    )

创建 oracle 用户环境变量

通常在 WebLogic 主机的 oracle 用户配置文件中具有 WebLogic 相关环境变量。例如,ORACLE_HOMEJDK_HOMEPATHASERVER_HOME 等。

  1. 查看主 SOA 主机中 oracle 用户的配置文件。
  2. 在辅助模式下,将相同的 WebLogic 相关环境变量添加到 oracle 用户的配置文件(.bashrc.bash_profile)。

    注:

    辅助 SOA 主机中 oracle 用户的 .bashrc 文件可能已经包含已定义的变量(如 MIDDLEWARE_HOMEWLS_HOME 等),但是它们可能与环境的文件夹不匹配,并且对您无效。请确保根据您的环境文件夹相应地删除或修改它们。