使用参考体系结构配置 Autonomous Database
Oracle Autonomous Database on Dedicated Exadata Infrastructure 是一个高度自动化的全托管式数据库环境,在 Oracle Cloud Infrastructure (OCI) 中运行,具有承诺的硬件和软件资源。这些隔离资源可帮助企业满足严格的安全性、可用性和性能要求,同时降低成本和复杂性。
先决条件知识
要全面了解和理解此用例,您应该基本了解 Autonomous Database on Dedicated Exadata Infrastructure ,包括其部署选项、关键基础设施组件、用户角色和主要功能。有关详细信息,请参阅关于 Autonomous Database on Dedicated Exadata Infrastructure。
用例
Acme Company 已选择将 Autonomous Database on Dedicated Exadata Infrastructure 用于其内部项目应用。Acme I.T. 部门将承担组管理员角色,负责为公司创建和管理 Exadata 基础结构 (EI) 和自治 Exadata VM 集群 (AVMC) 资源。在每个项目团队或业务部门中,指定用户将承担应用程序 DBA 角色,其任务是为数据库用户(包括应用程序开发人员、测试人员和部署人员)创建自治容器数据库 (Autonomous Container Database,ACD) 和 Autonomous Database 。
注意:
此示例说明应用程序 DBA 创建和管理 ACD 资源。但是,您的组织可能希望车队管理员自己执行此任务。Acme I.T. 将向各个团队分配资源,确保提供符合所需 SLA 的 AVMC。此外,为了公平地控制资源的分配,Acme I.T. 不希望任何项目团队或业务部门对底层专用基础设施进行管理访问。此外,根据监管审计,Acme 管理层不希望 Acme I.T. 能够访问属于不同项目团队或业务部门的数据,即它们存储在应用程序数据库中的数据。
AcmeHR 是由 Acme 开发和使用的内部 HR 应用程序,在两个不同的环境中运行:一个用于开发和测试 ( Dev ),另一个用于生产 ( Prod )。Acme I.T. 致力于在这些环境之间保持严格隔离,以防止开发团队和生产团队之间发生任何未经授权的访问或交互。
所需资源
OCI IAM 组件
- 提供资源隔离的三个区间,如下所述:
- FleetComp 表示 Acme I.T. 创建的资源、网络以及开发和生产数据库使用的专用子网。
- DevComp 表示开发数据库。
- ProdComp 表示产品数据库。
- 可以将用户分配给三个组,每个组对应于 Acme I.T、开发用户和生产用户。这些组将命名为 FAGroup 、DevGroup 和 ProdGroup 。
- 指定用户对区间和租户级别资源访问权限所需的策略。
网络资源

-
Oracle Public Cloud 部署:
- 一个 VCN 可以为所有专用基础设施资源提供网络连接。此 VCN 将使用 IPSec VPN 连接到 Acme Company VPN,并且具有阻止所有传入互联网流量的互联网网关资源。它将命名为 AcmeHRVCN 。
- 三个子网用于提供网络访问隔离,每个子网用于 Dev 和 Prod 环境的 Autonomous Database 资源,一个用于应用程序的客户端和中间层资源。这些子网将分别命名为 DevVMSubnet 、ProdVMSubnet 和 AppSubnet 。
注意:
为了简单起见,我们使用单个 VCN 并利用子网提供网络隔离。但是,您还可以创建多个 VCN 来提供所需的网络访问隔离。在本示例中,我们在 FleetComp 下创建了所有三个子网:DevVMSubnet 、ProdVMSubnet 和 AppSubnet ,以简化操作。您可以根据需要将这些子网放置在不同的区间中,具体取决于您的需求。 -
Exadata Cloud@Customer 部署:
- 按照 Preparing for Exadata Database Service on Cloud@Customer 中的 Network Requirements for Oracle Exadata Database Service on Cloud@Customer 中列出的设置网络规则。
- 此外,打开端口 1522 以允许 Autonomous Data Guard 设置中的主数据库与备用数据库之间的 TCP 流量。
Autonomous Database 资源
- 一个 Exadata 基础设施来托管两个 AVMC。名为 AcmeInfrastructure 。
- AcmeInfrastructure 中的两个 AVMC 用于开发和生产环境。这些 AVMC 分别命名为 DevAVMC 和 ProdAVMC 。
- DevAVMC:
- 托管 Autonomous Container Database 和 Autonomous Database (分别名为 DevACD 和 DevADB ),用于开发和测试 AcmeHR 应用程序。
- 始终修补到最新的 RU(发行版更新)。
- 保留七 (7) 天的备份。
- 对于每个发行版更新 (RU) 或修补程序发行版,DevADB 上部署的 AcmeHR 都使用最新的 RU 进行测试。
- 如果出现任何严重问题,将请求一次性补丁程序。应用一次性修补程序后,将再次验证 AcmeHR,以确保代码稳定且适合促销到生产环境。要了解有关一次性补丁程序的更多信息,请参阅 Autonomous Database Service Maintenance 。
- ProdAVMC:
- 托管为 AcmeHR 应用程序的生产部署预配的自治容器数据库和 Autonomous Database 。它们分别命名为 ProdACD 和 ProdADB 。
- 始终在 N-1 软件版本上运行。
- 将备份保留更长时间。如果需要,还会启用长期备份。
- 已验证软件的打补丁备用季度,即 DevAVMC 中验证的 RU 部署在此数据库中。
大致步骤
在 Acme I.T. 开始在专用 Exadata 基础结构上配置 Autonomous Database 资源之前,它使用 OCI 控制台请求提高服务限制,以将 Exadata 基础结构资源 - 数据库服务器和存储服务器添加到租户。有关详情,请参阅请求提高服务限制。
下面列出了实施此用例的高级步骤:
- Acme Company 的云租户的安全管理员可以为资源隔离创建以下区间、组和区间策略:
- FleetComp 、DevComp 和 ProdComp 区间。
- FAGroup 、DevGroup 和 ProdGroup 组。
- FleetCompPolicy 、DevCompPolicy 和 ProdCompPolicy 策略。
- 对于访问隔离:
- 对于 Oracle Public Cloud 部署,Acme I.T. 或 Acme 的网络管理员在 FleetComp 区间中创建以下网络资源:
- VCN:AcmeHRVCN
- 专用子网:DevVMSubnet 和 ProdVMSubnet
- 公共子网:AppSubnet
- 对于 Exadata Cloud@Customer 部署,Acme I.T. 或 Acme 的网络管理员可确保:
- 按照 Preparing for Exadata Database Service on Cloud@Customer 中的 Network Requirements for Oracle Exadata Database Service on Cloud@Customer 中列出的设置网络规则。
- 打开端口 1522 以允许 Autonomous Data Guard 设置中的主数据库与备用数据库之间的 TCP 流量。
- 对于 Oracle Public Cloud 部署,Acme I.T. 或 Acme 的网络管理员在 FleetComp 区间中创建以下网络资源:
- 创建网络资源后,安全管理员将指定 Acme I.T. 成员的云用户添加到 FAGroup ,从而授权该用户作为组管理员。
- 新授权的组管理员创建以下专用基础结构资源:
- FleetComp 区间中的 Exadata 基础结构资源 AcmeInfrastructure 。
- FleetComp 区间中的两个自治 Exadata VM 集群 (AVMC),指定新创建的 Exadata 基础结构:
- DevAVMC.
对于 Oracle Public Cloud 部署,请指定 AcmeHRVCN 和 DevVMSubnet 作为其 VCN 和子网。
- ProdAVMC.
对于 Oracle Public Cloud 部署,请指定 AcmeHRVCN 和 ProdVMSubnet 作为其 VCN 和子网。
- DevAVMC.
- 然后,安全管理员将指定的云用户添加到 DevGroup 和 ProdGroup ,从而授权他们作为 Dev 和 Prod 环境的应用程序 DBA。
- 新授权的应用程序 DBA 在各自的工作环境中(即 Dev 和 Prod )创建以下资源:
- 两个自治容器数据库 (ACD):
- DevComp 区间中的 DevACD ,指定 DevAVMC 作为其底层资源
- ProdComp 区间中的 ProdACD ,指定 Prod AVMC 作为其底层资源。
- DevComp 区间中名为 DevADB 的 Autonomous Database。
- ProdComp 区间中名为 ProdADB 的 Autonomous Database。
- 两个自治容器数据库 (ACD):
步骤 1:创建分区
在此步骤中,Acme Company 的云租户的安全管理员创建 FleetComp 、DevComp 和 ProdComp 区间。
要执行此步骤,安全管理员应按照 Oracle Cloud Infrastructure 文档中管理区间中的说明使用 Oracle Cloud 控制台创建区间。按照这些说明操作时,安全管理员将租户的根区间指定为三个区间的每个区间的父区间。
步骤 2:创建组
在此步骤中,安全管理员创建 FAGroup 、DevGroup 和 ProdGroup 组。
要执行此步骤,安全管理员应按照 Oracle Cloud Infrastructure 文档中管理组中的说明使用 Oracle Cloud 控制台创建组。
步骤 3。创建策略
在此步骤中,安全管理员创建 FleetCompPolicy 、DevCompPolicy 和 ProdCompPolicy 策略。
要执行此步骤,安全管理员应按照 Oracle Cloud Infrastructure 文档中管理策略中的说明使用 Oracle Cloud 控制台创建策略。
注意:
除了创建所需的策略语句外,在此示例中,安全管理员还创建 "USE tag-namespaces" 策略语句,以允许组成员将现有标记分配给他们创建的资源。要允许组成员创建标记以及使用现有标记,安全管理员将改为创建 "MANAGE tag-namespaces" 策略语句。按照 FleetCompPolicy 策略的以下说明操作时,安全管理员:
-
将侧边菜单中的 Compartment 设置为 FleetComp before(单击 Create Policy )。
-
根据部署平台添加以下策略语句之一:
- Oracle Public Cloud 部署:
- 允许组 FAGroup 到区间 FleetComp 中的 MANAGE cloud-exadata-infrastructures
- 允许组 FAGroup 到区间 FleetComp 中的 MANAGE 云 - 自治 VM 集群
- 允许组 FAGroup 使用区间 FleetComp 中的虚拟网络系列
- 允许组 FAGroup 使用区间 FleetComp 中的标记名称空间
- 允许组 DevGroup 读取区间 FleetComp 中的 Cloud-exadata-infrastructures
- 允许组 DevGroup 读取区间 FleetComp 中的云自治 VM 集群
- 允许组 DevGroup 使用区间 FleetComp 中的虚拟网络系列
- 允许组 ProdGroup 读取区间 FleetComp 中的 Cloud-exadata-infrastructures
- 允许组 ProdGroup 读取区间 FleetComp 中的云自治 VM 集群
- 允许组 ProdGroup 使用区间 FleetComp 中的虚拟网络系列
- Exadata Cloud@Customer 部署:
- 允许组 FAGroup 到区间 FleetComp 中的 MANAGE exadata-infrastructures
- 允许组 FAGroup 到区间 FleetComp 中的 MANAGE 自治 VM 集群
- 允许组 FAGroup 使用区间 FleetComp 中的标记名称空间
- 允许组 DevGroup 读取区间 FleetComp 中的 exadata 基础结构
- 允许组 DevGroup 读取区间 FleetComp 中的自治 VM 集群
- 允许组 ProdGroup 读取区间 FleetComp 中的 exadata 基础结构
- 允许组 ProdGroup 读取区间 FleetComp 中的自治 VM 集群
- Oracle Public Cloud 部署:
按照 DevCompPolicy 策略的以下说明操作时,安全管理员:
-
将侧边菜单中的 Compartment 设置为 DevComp before(单击 Create Policy )。
-
添加以下策略语句:
- 允许组 DevGroup 到区间 DevComp 中的 MANAGE 自治容器数据库
- 允许组 DevGroup 到区间 DevComp 中的 MANAGE 自治数据库
- 允许组 DevGroup 在区间 DevComp 中管理自治备份
- 允许组 DevGroup 到区间 DevComp 中的 MANAGE 实例系列
- 允许组 DevGroup 使用区间 DevComp 中的标记名称空间
- 允许组 DevGroup 到区间 DevComp 中的 MANAGE 度量
- 允许组 DevGroup 在区间 DevComp 中执行 INSPECT 工作请求
按照 ProdCompPolicy 策略的以下说明操作时,安全管理员:
-
将侧边菜单中的 Compartment 设置为 ProdComp before(单击 Create Policy )。
-
添加以下策略语句:
- 允许组 ProdGroup 到区间 ProdComp 中的 MANAGE 自治容器数据库
- 允许组 ProdGroup 到区间 ProdComp 中的 MANAGE 自治数据库
- 允许组 ProdGroup 在区间 ProdComp 中管理自治备份
- 允许组 ProdGroup 到区间 ProdComp 中的 MANAGE 实例系列
- 允许组 ProdGroup 使用区间 ProdComp 中的标记名称空间
- 允许组 ProdGroup 到区间 ProdComp 中的 MANAGE 度量
- 允许组 ProdGroup 在区间 ProdComp 中执行 INSPECT 工作请求
步骤 4。创建 VCN 和子网
适用于: 仅限 Oracle Public Cloud
在此步骤中,Acme I.T. 或 Acme 的网络管理员在 FleetComp 区间中创建 AcmeHRVCN VCN 以及 DevVMSubnet 、ProdVMSubnet 和 AppSubnet 子网。
要执行此步骤,Acme I.T. 首先与 Acme I.T. 部门的网络进行协商,以保留不会与公司的内部部署网络冲突的 CIDR IP 地址范围。(否则,VCN 将与内部部署网络冲突,无法设置 IPSec VPN。)保留范围为 CIDR 10.0.0.0/16。
然后,Acme I.T. 按照 Oracle Cloud Infrastructure 文档中方案 B:Private Subnet with a VPN 中的说明,使用 Oracle Cloud 控制台创建 VCN、子网和其他网络资源。
- 两个专用子网:
- 10.0.10.0/24(适用于 DevVMSubnet)
- 10.0.20.0/24(适用于 ProdVMSubnet)
- 一个公共子网:
- 10.0.100.0/24(适用于 AppSubnet)
- DevSeclist:DevVMSubnet 的基本安全列表。创建 DevVMSubnet 子网时使用它。
- ProdSeclist:ProdVMSubnet 的基本安全列表。创建 ProdVMSubnet 子网时使用它。
- AppSeclist:AppSubnet 的基本安全列表。创建 AppSubnet 子网时使用它。
有关 AVMC 入站和出站要求的更多详细信息,请参见 Requirements to Provision an Autonomous Exadata VM Cluster 。
安全规则位于 DevSeclist
下面是在 DevSeclist 中创建的入站规则:
无状态 | 源 | IP 协议 | 源端口范围 | 目的地端口范围 | 类型和代码 | 允许 |
---|---|---|---|---|---|---|
无 | 10.0.10.0/24 | ICMP | 全部 | 全部 | 全部 | 以下项的 ICMP 流量:全部 |
无 | 10.0.10.0/24 | TCP | 全部 | 全部 | 端口的 TCP 流量:所有 | |
无 | 10.0.100.0/24 | TCP | 全部 | 1521 | 端口的 TCP 流量:1521 Oracle Net | |
无 | 10.0.100.0/24 | TCP | 全部 | 2484 | 端口的 TCPS 流量:2484 Oracle Net | |
无 | 10.0.100.0/24 | TCP | 全部 | 6200 | 用于端口的 ONS/FAN:6200 | |
无 | 10.0.100.0/24 | TCP | 全部 | 443 | 端口的 HTTPS 流量:443 |
下面是在 DevSeclist 中创建的出站规则:
无状态 | 目的地 | IP 协议 | 源端口范围 | 目的地端口范围 | 类型和代码 | 允许 |
---|---|---|---|---|---|---|
无 | 10.0.10.0/24 | ICMP | 全部 | 全部 | 全部 | DevVMSubnet 内的所有 ICMP 流量 |
无 | 10.0.10.0/24 | TCP | 全部 | 全部 | DevVMSubnet 中的所有 TCP 流量 |
安全规则位于 ProdSeclist
注意:
尽管 ProdSeclist 具有与 DevSeclist 相同的安全规则,但网络管理员已创建单独的安全列表,而不是为两个项目团队创建单个安全列表,以适应某个项目团队将来需要的任何其他安全规则。下面是在 ProdSeclist 中创建的入站规则:
无状态 | 源 | IP 协议 | 源端口范围 | 目的地端口范围 | 类型和代码 | 允许 |
---|---|---|---|---|---|---|
无 | 10.0.20.0/24 | ICMP | 全部 | 全部 | 全部 | 以下项的 ICMP 流量:全部 |
无 | 10.0.20.0/24 | TCP | 全部 | 全部 | 端口的 TCP 流量:所有 | |
无 | 10.0.100.0/24 | TCP | 全部 | 1521 | 端口的 TCP 流量:1521 Oracle Net | |
无 | 10.0.100.0/24 | TCP | 全部 | 2484 | 端口的 TCPS 流量:2484 Oracle Net | |
无 | 10.0.100.0/24 | TCP | 全部 | 6200 | 用于端口的 ONS/FAN:6200 | |
无 | 10.0.100.0/24 | TCP | 全部 | 443 | 端口的 HTTPS 流量:443 |
下面是在 ProdSeclist 中创建的出站规则:
无状态 | 目的地 | IP 协议 | 源端口范围 | 目的地端口范围 | 类型和代码 | 允许 |
---|---|---|---|---|---|---|
无 | 10.0.20.0/24 | ICMP | 全部 | 全部 | 全部 | ProdVMSubnet 内的所有 ICMP 流量 |
无 | 10.0.20.0/24 | TCP | 全部 | 全部 | ProdVMSubnet 中的所有 TCP 流量 |
安全规则位于 AppSeclist
下面是在 AppSeclist 中创建的入站规则:
无状态 | 源 | IP 协议 | 源端口范围 | 目的地端口范围 | 类型和代码 | 允许 |
---|---|---|---|---|---|---|
无 | 0.0.0.0/0 | TCP | 全部 | 22 | 全部 | 端口的 SSH 流量:22 |
注意:
建议将安全规则中的 0.0.0.0/0 更改为您批准的 CIDR 范围/IP 地址列表。下面是在 AppSeclist 中创建的出站规则:
无状态 | 目的地 | IP 协议 | 源端口范围 | 目的地端口范围 | 类型和代码 | 允许 |
---|---|---|---|---|---|---|
无 | 10.0.10.0/24 | TCP | 全部 | 1521 | ||
无 | 10.0.10.0/24 | TCP | 全部 | 2484 | ||
无 | 10.0.10.0/24 | TCP | 全部 | 443 | ||
无 | 10.0.10.0/24 | TCP | 全部 | 6200 | ||
无 | 10.0.20.0/24 | TCP | 全部 | 1521 | ||
无 | 10.0.20.0/24 | TCP | 全部 | 2484 | ||
无 | 10.0.20.0/24 | TCP | 全部 | 443 | ||
无 | 10.0.20.0/24 | TCP | 全部 | 6200 |
步骤 5。分配组管理员
在此步骤中,安全管理员将指定 Acme I.T. 成员的云用户添加到 FAGroup 。
要执行此步骤,安全管理员应按照 Oracle Cloud Infrastructure 文档中管理用户中的说明使用 Oracle Cloud 控制台将用户添加到组中。
步骤 6。创建 Exadata 基础结构资源
在此步骤中,组管理员按照 Create an Exadata Infrastructure Resource 中的说明在 FleetComp 区间中创建名为 AcmeInfrastructure 的 Exadata 基础结构资源。
步骤 7。创建自治 Exadata VM 集群资源
In this step, the fleet administrator follows the instructions in Create an Autonomous Exadata VM Cluster to create DevAVMC and ProdAVMC in the FleetComp compartment with the following specifications, leaving all the other attributes at their default settings.
设置 | 开发环境 | 生产环境 |
---|---|---|
AVMC 名称 | DevAVMC | ProdAVMC |
底层 Exadata 基础结构 | AcmeInfrastructure | AcmeInfrastructure |
虚拟云网络 (VCN)
适用于: |
AcmeHRVCN | AcmeHRVCN |
子网
适用于: |
DevVMSubnet | ProdVMSubnet |
步骤 8。分配应用程序 DBA
在此步骤中,安全管理员将指定的云用户添加到 DevGroup ,从而授权他们作为开发资源的应用程序 DBA,然后重复 ProdGroup 的过程。
要执行此步骤,对于每个用户,安全管理员均按照 Oracle Cloud Infrastructure 文档中管理用户中的说明使用 Oracle Cloud 控制台将用户添加到组。
步骤 9。创建自治容器数据库资源
在此步骤中,各个应用程序 DBA 将按照创建自治容器数据库中的说明为 Dev 和 Prod 环境创建自治容器数据库 (Autonomous Container Databases,ACD)。这些 ACD 使用以下规范创建,将所有其他属性保留在其默认设置中。
设置 | 开发环境 | 生产环境 |
---|---|---|
区间 | DevComp | ProdComp |
ACD 名称 | DevACD | ProdACD |
基本 AVMC | DevAVMC | ProdAVMC |
容器数据库软件版本 | 最新软件版本 (N) | 软件版本的直接前身 (N-1) |
维护版本 | 最新 RU(发行版更新) | 下一个 RU(发行版更新) |
备份保留期 | 7 天 | 30 天 |
步骤 10。创建 Autonomous Database 资源
在此步骤中,各个应用程序 DBA 按照 Create an Autonomous Database 中的说明为 Dev 和 Prod 环境创建 Autonomous Database 。这些数据库是使用以下规范创建的,所有其他属性都保留其默认设置。
设置 | 开发环境 | 生产环境 |
---|---|---|
区间 | DevComp | ProdComp |
数据库名称 | DevADB | ProdADB |
基本 ACD | DevACD | ProdACD |
数据库实例 | 可以选择创建 Autonomous Database 或面向开发人员的 Autonomous Database | 自治数据库 |
Autonomous Database on Dedicated Exadata Infrastructure 现在已配置为开发和测试 AcmeHR 应用程序,并在生产环境中进行后续部署。