配置租户

在使用 Oracle 全局分布式数据库服务创建和管理分布式数据库之前,您必须执行这些准备任务来组织租户、为各种资源创建策略,然后采购和配置网络、安全性和基础设施资源。

任务 1。订阅阿什本地区

作为租户管理员,订阅阿什本 (Ashburn,IAD) 区域以及运行 Globally Distributed Exadata Database on Exascale Infrastructure 实施所需的所有区域。

  1. 订阅阿什本 (IAD) 区域。
    • 要使用该服务,您必须订阅阿什本区域。
    • 您的租户主区域不必是阿什本区域,但您必须订阅阿什本区域才能使用 Oracle 的全球分布式数据库服务。

  2. 订阅将放置数据库的任何其他区域。
    • 订阅您计划为实施放置数据库的任何区域;其中包括目录的数据库、分片和目录的可选 Oracle Data Guard 备用数据库。

      注意:

      Exascale Infrastructure 上的全局分布式 Exadata 数据库仅支持在两个区域中创建分片。此外,为了获得最佳性能,使用 Raft 复制的分布式数据库应该在同一区域中具有分片。

有关更多信息,请参见 Managing Regions

任务 2。创建区段

以租户管理员身份,在租户中为 Oracle Globally Distributed Exadata Database on Exascale Infrastructure 服务所需的所有资源创建区间。

Oracle 建议使用以下结构,并在设置任务中引用这些区间:

  • 整个部署的“父”区间。这是示例中的 gdd
  • 每种资源的“子”区间:
    • gdd_certs_vaults_keys ,表示证书颁发机构、证书、证书包、 Vault 和密钥
    • gdd_databases ,用于数据库、VM 集群、VCN、子网、专用端点以及 Globally Distributed Exadata Database on Exascale Infrastructure 资源。
    • gdd_instances ,表示应用服务器的计算实例(充当堡垒以连接到数据库的边缘节点/跳转主机)

生成的区间结构类似于以下内容:

tenant /
     gdd /       
          gdd_certs_vaults_keys 
          gdd_databases  
          gdd_instances

有关更多信息,请参阅使用区间

任务 3。创建用户访问约束条件

制定访问控制计划,然后通过创建相应的 IAM(身份和访问管理)资源来建立访问控制计划。因此,分布式数据库中的访问控制在各个级别实施,这些级别由此处的组和策略定义。

下表中介绍的用户组、动态组和策略应指导您为分布式数据库实施创建自己的用户访问控制计划。

以租户管理员身份创建以下建议的组、动态组和策略,以向以前定义的角色授予权限。示例和文档链接假定您的租户使用身份域。

了解角色离职

您需要确保您的云用户有权使用和只创建相应类型的云资源来履行其工作职责。最佳做法是定义用于角色分离的角色。

下表中介绍的角色和职责应指导您了解如何为 Distributed ExaDB-XS 实施定义用户组、动态组和策略。此处显示的示例角色将用于整个环境设置、资源创建和管理说明。

角色 责任
方案使用方管理员

订阅地区

创建区间的

创建动态组、用户组和策略

基础结构管理员

创建/更新/删除 virtual-network-family

创建/更新/删除 Exadata 基础结构

创建/更新/删除 Exadata VM 集群

标记 Exadata VM 集群

创建/更新/删除全局分布式数据库专用端点

证书管理员

创建/更新/删除 Vault

创建/更新/删除关键字

User 使用 UI 和 API 创建和管理全局分布式数据库

动态组

创建以下动态组以控制对在 Oracle Globally Distributed Exadata Database on Exascale Infrastructure 区间中创建的资源的访问。

有关说明,请参见 Creating a Dynamic Group

动态组名 说明 规则
gdd-cas-dg 证书颁发机构资源

全部

resource.type='certificateauthority'

resource.compartment.id = ‘区间租户根目录 / gdd / gdd_certs_vaults_keys 的 OCID ’

gdd 集群 -dg Exadata 数据库 VM 集群资源

全部

resource.compartment.id = ‘区间租户根目录 / gdd / gdd_databases 的 OCID ’

gdd 实例 -dg 计算实例资源

全部

resource.compartment.id = ‘区间租户根目录 / gdd / gdd_instances 的 OCID ’

用户组

创建以下组以授予用户使用 Globally Distributed Database 区间中资源的权限。

有关说明,请参见 Creating a Group

用户组名 说明
gdd- 证书 - 管理员 用于创建和管理密钥和 Vault 的证书管理员。
gdd 基础结构管理员 创建和管理云网络和基础设施资源的基础设施管理员
gdd 用户 使用 API 和 UI 创建和管理全局分布式数据库资源的用户

策略

创建 IAM 策略以向组授予对在区间中为 Oracle Globally Distributed Exadata Database on Exascale Infrastructure 租户创建的资源的访问权限。

请注意,Oracle Cloud 上有多个 Globally Distributed Database 服务。这些策略特定于 Exascale Infrastructure 上的全局分布式 Exadata 数据库服务。

以下示例策略(基于之前创建的区间结构和组)应指导您为实施创建自己的 IAM 策略。

身份域(例如,默认域)应当是您在其中创建组的身份域。

有关说明,请参见 Creating a Policy

gdd- 证书 - 管理员 - 租户级别

  • 说明:组 gdd-certificate-admins 的租户级别权限
  • 区间:租户
  • 声明:
    Allow group 'Default' / 'gdd-certificate-admins' to INSPECT tenancies in tenancy
    Allow group 'Default' / 'gdd-certificate-admins' to INSPECT work-requests in tenancy

gdd-infrastructure-admins-tenant-level

  • 说明:组 gdd-infrastructure-admins 的租户级别权限
  • 区间:租户
  • 声明:
    Allow group 'Default' / 'gdd-infrastructure-admins' to INSPECT tenancies in tenancy
    Allow group 'Default' / 'gdd-infrastructure-admins' to INSPECT work-requests in tenancy
    Allow group 'Default' / 'gdd-infrastructure-admins' to READ limits in tenancy
    Allow group 'Default' / 'gdd-infrastructure-admins' to READ tag-namespaces in tenancy

gdd-users-tenant-level

  • 说明:组 gdd 用户的租户级别权限

  • 区间:租户
  • 声明:
    Allow group 'Default' / 'gdd-users' to INSPECT tenancies in tenancy
    Allow group 'Default' / 'gdd-users' to INSPECT work-requests in tenancy
    Allow group 'Default' / 'gdd-users' to READ limits in tenancy
    Allow group 'Default' / 'gdd-users' to READ Distributed-database in tenancy
    Allow group 'Default' / 'gdd-users' to READ tag-namespaces in tenancy

gdd- 证书 - 管理员

  • 说明:组 gdd-certificate-admins 的区间级别权限
  • 区间:租户/gdd
  • 声明:
    Allow group 'Default' / 'gdd-certificate-admins' to MANAGE keys in compartment gdd
    Allow group 'Default' / 'gdd-certificate-admins' to MANAGE vaults in compartment gdd

gdd 基础结构管理员

  • 说明:组 gdd-infrastructure-admins 的区间级别权限
  • 区间:租户/gdd
  • 声明:
    Allow group 'Default' / 'gdd-infrastructure-admins' to MANAGE exadb-vm-clusters in compartment gdd
    Allow group 'Default' / 'gdd-infrastructure-admins' to MANAGE instance-family in compartment gdd
    Allow group 'Default' / 'gdd-infrastructure-admins' to MANAGE Distributed-database in compartment gdd
    Allow group 'Default' / 'gdd-infrastructure-admins' to MANAGE tags in compartment gdd
    Allow group 'Default' / 'gdd-infrastructure-admins' to MANAGE virtual-network-family in compartment gdd
    Allow group 'Default' / 'gdd-infrastructure-admins' to READ exascale-db-storage-vaults in compartment gdd
    Allow group 'Default' / 'gdd-infrastructure-admins' to READ distributed-database-workrequest in compartment gdd

gdd 用户

  • 说明:组 gdd 用户的区间级别权限
  • 区间:租户/gdd
  • 声明:
    Allow group 'Default' / 'gdd-users' to MANAGE database-family in compartment gdd
    Allow service database to manage recovery-service-family in compartment gdd 
    Allow service rcs to manage recovery-service-family in compartment gdd
    Allow group 'Default' / 'gdd-users' to manage objects in compartment gdd
    Allow group 'Default' / 'gdd-users' to read buckets in compartment gdd
    Allow group 'Default' / 'gdd-users' to USE exadb-vm-clusters in compartment gdd
    Allow group 'Default' / 'gdd-users' to MANAGE instance-family in compartment gdd
    Allow group 'Default' / 'gdd-users' to MANAGE distributed-database in compartment gdd
    Allow group 'Default' / 'gdd-users' to MANAGE tags in compartment gdd
    Allow group 'Default' / 'gdd-users' to READ dns-records in compartment gdd
    Allow group 'Default' / 'gdd-users' to READ dns-zone in compartment gdd
    Allow group 'Default' / 'gdd-users' to READ keys in compartment gdd
    Allow group 'Default' / 'gdd-users' to READ distributed-database-workrequest in compartment gdd
    Allow group 'Default' / 'gdd-users' to READ vaults in compartment gdd
    Allow group 'Default' / 'gdd-users' to READ vcns in compartment gdd
    Allow group 'Default' / 'gdd-users' to USE network-security-groups in compartment gdd
    Allow group 'Default' / 'gdd-users' to USE private-ips in compartment gdd
    Allow group 'Default' / 'gdd-users' to USE subnets in compartment gdd
    Allow group 'Default' / 'gdd-users' to USE vnics in compartment gdd
    Allow group 'Default' / 'gdd-users' to USE volumes in compartment gdd

gdd-dg-cas

  • 说明:动态组 gdd-cas-dg 的区间级别权限
  • 区间:租户/gdd
  • 声明:
    Allow dynamic-group 'Default' / 'gdd-cas-dg' to MANAGE objects in compartment gdd
    Allow dynamic-group 'Default' / 'gdd-cas-dg' to USE keys in compartment gdd

gdd-dg 集群

  • 说明:动态组 gdd-clusters-dg 的区间级别权限
  • 区间:租户/gdd
  • 声明:
    Allow dynamic-group 'Default' / 'gdd-clusters-dg' to MANAGE keys in compartment gdd_certs_vaults_keys
    Allow dynamic-group 'Default' / 'gdd-clusters-dg' to READ vaults in compartment gdd_certs_vaults_keys

gdd-kms

  • 说明:密钥管理服务的区间级别权限
  • 区间:租户/gdd
  • 声明:
    Allow service keymanagementservice to MANAGE vaults in compartment gdd_certs_vaults_keys

任务 4。配置网络资源

作为基础结构管理员,创建网络资源并启用分布式数据库所需的连接。

在以下说明中对示例资源进行了命名,以简化跟踪和关系。例如,名称 "gdd_iad" 指的是在阿什本 (IAD) 区域中创建的 VCN。

公用网络资源

所有 Globally Distributed Exadata Database on Exascale Infrastructure ( Distributed ExaDB-XS ) 实施都需要 VCN、子网和阿什本 (IAD) 区域中的专用端点。

以基础结构管理员身份创建资源,如下表所述。

资源 说明
虚拟云技术网络 (VCN)+ 子网

在阿什本 (IAD) 中,创建 VCN gdd_iad 和子网 gdd_subnet。

要启用 Distributed ExaDB-XS 服务与拓扑中的数据库之间的连接,需要此 VCN 和子网。

使用以下值:

  • 区间 = gdd / gdd_databases
  • 区域 = 阿什本 (IAD)
  • 子网名称 = gdd_subnet

  • 子网类型 = 区域

    子网必须是区域性的,必须跨所有可用性域

有关创建它们的步骤,请参阅 VCN 和子网

专用端点

在阿什本 (Ashburn,IAD) 区域中创建专用端点,以实现分布式 ExaDB-XS 服务与拓扑中的数据库之间的连接。

  1. 打开导航菜单,单击 Oracle Database ,然后单击 Globally Distributed Exadata Database on Exascale Infrastructure
  2. 单击导航窗格中的专用端点
  3. 单击创建专用端点
  4. 输入以下信息。

    • 名称:例如 gdd_pe
    • 区间: gdd/gdd_databases

      这应该是包含您在上面创建的阿什本区域子网的区间。

    • 子网:gdd_subnet

      如果未列出该子网,请验证该子网是否已创建为区域子网。

    • 虚拟云网络:gdd_iad
    • 添加标记(可选):您可以通过单击 "Show Tagging Options"(显示标记选项)为此资源选择标记。

有关此资源的更多信息,请参见 Create and Manage Private Endpoints

基于拓扑的其他网络资源

根据您的 Oracle Globally Distributed Exadata Database on Exascale Infrastructure 拓扑,按如下所述创建其他网络资源。

请注意,拓扑的数据库包括目录、分片和目录的可选 Oracle Data Guard 备用数据库。

应在 gdd/gdd_databases 区间中创建所有网络资源。

用例 网络资源 对等连接和连接

所有数据库都位于阿什本 (IAD) 区域中

在阿什本 (IAD) 区域中为您的云 Exadata 数据库 VM 集群创建子网和服务网关。

  • 在阿什本区域 (IAD) 中,在 VCN gdd_iad 中创建子网 osd-databases-subnet-iad。
  • 在阿什本 (IAD) 区域中,创建服务网关 gdd_sgw_iad

必需的对等连接

必需的连接

与子网 gdd_subnet 的无限制连接

所有数据库都放置在非阿什本 (IAD)* 的单个区域中 R1

在区域中为云 Exadata 数据库 VM 集群创建子网和服务网关。

  • 在区域 R1 中,使用子网 osd-database-subnet-R1 创建 VCN gdd_R1
  • 在区域 R1 中,创建服务网关 gdd_sgw_R1

必需的对等连接

gdd_iad ↔ gdd_R1

必需的连接

在 gdd_iad.gdd_subnet 和 gdd_R1.osd-database-subnet-R1 之间不受限制

数据库位于多个区域:R1、R2、...、RN

在每个区域中为云 Exadata 数据库 VM 集群创建子网和服务网关。

子网:

  • 在区域 R1 中,使用子网 osd-database-subnet-R1 创建 VCN gdd_R1
  • 在区域 R2 中,使用子网 osd-database-subnet-R2 创建 VCN gdd_R2

    ...

  • 在区域 Rn 中,使用子网 osd-database-subnet-Rn 创建 VCN gdd_Rn

服务网关:

  • 在区域 R1 中,创建服务网关 gdd_sgw_R1
  • 在区域 R2 中,创建服务网关 gdd_sgw_R2

    ...

  • 在区域 Rn 中,创建服务网关 gdd_sgw_Rn

必需的对等连接

gdd_iad ↔ gdd_R1

gdd_iad ↔ gdd_R2

gdd_iad ↔ gdd_Rn

gdd_R1 ↔ gdd_R2

gdd_R1 ↔ gdd_Rn

gdd_R2 ↔ gdd_Rn

必需的连接

gdd_iad.gdd_subnet 与 gdd_iad.gdd_subnet 之间无限制且双向

gdd_R1.osd-database-subnet-R1

gdd_R2.osd-database-subnet-R2

gdd_Rn.osd- 数据库 - 子网 -Rn

gdd_R1.osd-database-subnet-R1 和

gdd_R2.osd-database-subnet-R2

gdd_Rn.osd- 数据库 - 子网 -Rn

gdd_R2.osd-database-subnet-R2 和

gdd_Rn.osd- 数据库 - 子网 -Rn

* Oracle Globally Distributed Exadata Database on Exascale Infrastructure 服务控制层仅存在于阿什本 (IAD) 区域中。在阿什本 (Ashburn,IAD) 区域中上一步创建的专用端点用于与其各自区域中的分布式数据库资源通信。

有关创建资源的说明,请访问:

任务 5。配置安全资源

所有安全资源均在 gdd/gdd_certs_vaults_keys 区间中创建。

注意:

创建引用密钥的分布式数据库后,如果不重新启动引用已移动的 Vault 或密钥的容器数据库,则无法将 Vault 或密钥移动到新区间。

创建保管库

在 gdd/gdd_certs_vaults_keys 区间中为分片数据库所在区域中的透明数据加密 (Transparent Data Encryption,TDE) 主加密密钥创建 Vault。

例如,在区域 R1 中,创建 Vault gdd_vault_R1

有关创建 Vault 的详细信息,请参见 Creating a Vault

创建 TDE 密钥

创建主加密密钥以访问数据库。

例如,在 Vault gdd_vault_R1 中使用以下属性创建主加密密钥 gdd_TDE_key-oraspace。

  • 保护模式 = 软件

  • 密钥配置:算法 = AES

  • 长度 = 256

有关创建主加密密钥的详细信息,请参见 Create a Master Encryption Key

任务 6。创建 Exadata 资源

作为基础结构管理员,请在以下步骤中配置 Oracle Globally Distributed Exadata Database on Exascale Infrastructure 拓扑。

导入 Oracle-ApplicationName 标记名称空间

导入租户根区间中的 Oracle-ApplicationName 标记名称空间。

  1. 从云控制台导航菜单中,依次选择管理和管理标记名称空间(在“租户管理”类别下)。

  2. 在 "Tag Namespaces"(标记名称空间)面板中,检查租户的根区间中是否存在 Oracle-ApplicationName 名称空间。

    确保在列表范围下选择了租户的根区间。

  3. 如果列表中没有 Oracle-ApplicationName,请执行以下操作:

    1. 单击导入标准标记(位于列表上方)。

    2. 选中 Oracle-ApplicationName 名称空间旁边的复选框,然后单击导入

在 E 级 (Exascale) 基础结构上创建 Exadata VM 集群

使用 Exadata Database Service on Exascale Infrastructure 服务为目录数据库、可选 Data Guard 备用目录数据库数据库和每个分片数据库创建 VM 集群,您计划在 Distributed ExaDB-XS 拓扑中部署。

创建 VM 集群时,请使用以下要求和建议:

  • 建议您使用每个数据库一个 VM 集群(分片、目录和目录备用)。

    一个分片数据库和一个目录数据库可以在给定 VM 集群上共存。但是,对目录和分片使用通用 VM 集群可能会造成处理瓶颈。

  • 创建单个节点群集。仅支持单个节点群集。

  • 区间:在租户的 gdd/gdd_clusters 区间中创建 VM 集群。

  • 每个 VM 启用的 ECPU:为要分片的 VM 集群启用 8 个 ECPU。

  • 数据库存储:您可以为所有 VM 集群(目录和分片)使用相同的 Vault,只要为拓扑中的每个数据库配置至少 500GB 的存储容量。

    例如,如果您有 3 个分片和 1 个目录,则所需的最小总存储空间为 500GB x 4 = 2000GB。在这种情况下,您可以创建至少具有 2000GB 存储容量的单个 Vault。

  • 时区:将拓扑中的所有 VM 集群设置为同一时区。此设置位于“高级”选项下。

  • 标记:添加定义的标记 Oracle-ApplicationName.Other_Oracle_Application: Sharding。此设置位于“高级”选项下。

    必须按导入 Oracle-ApplicationName 标记名称空间中所述导入标记的名称空间,然后才能添加标记。

    注意:

    标记 VM 集群以用于分布式数据库后,它将继续对该 SKU 计费,直到删除 VM 集群。

有关创建集群的步骤,请参见 Manage VM Clusters

(可选)创建 API 密钥和用户约束条件

如果您打算直接使用 Globally Distributed Database REST API、OCI Software Development Kits 和 Command Line Interface,则创建 OCI API 密钥对。

按照 Required Keys and OCIDs 中的说明进行操作。

如果要对 API 设置用户控制,请参见 Permissions for Globally Distributed Database APIs