注:
- 此教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure Free Tier 。
- 它使用 Oracle Cloud Infrastructure 身份证明、租户和区间示例值。完成实验室时,请将这些值替换为特定于云环境的那些值。
使用 Oracle Cloud Infrastructure Cloud Native Services 设置数据库自动缩放
简介
设置自动缩放是每个在云中托管应用团队的一部分和要求。
对于 Oracle Autonomous Data Warehouse (ADW) 和 Oracle Autonomous Transaction Processing (ATP) 等数据库实例,我们可以使用 Oracle Cloud Infrastructure (OCI) 云原生服务设置自动缩放。
目标
-
根据 CPU 以外的度量设置自动缩放。
-
在 OCI 上使用云原生托管服务进行配置。
先决条件
-
在 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 中具有所需的访问权限,以创建动态组、IAM 策略、创建函数、更新 ADW/ATP CPU 计数和通知服务。
-
访问所有必需的组件以查看其 OCID 和其他相关信息。
-
访问 OCI Cloud Shell,以便您可以创建、部署和调用函数。
任务 1:设置必需的 IAM 策略和动态组
-
使用此链接登录到 OCI 控制台。
-
登录后,转到 IAM 动态组并按如下方式创建新动态组:

-
按如下所示为规则提供区间 OCID。您的数据库实例应存在于此区间中:

-
转到 IAM 策略并使用以下语句创建 IAM 策略:
allow dynamic-group dynamic_group_name to manage autonomous-database-family in compartment compartment_name
任务 2:创建和部署函数代码
-
转到函数/应用程序并创建一个函数。此功能将使用 IAM 动态组和策略访问 ADW,并在触发功能时执行所需的缩放(上下)。按照屏幕上的步骤创建函数。我们已经使用 Python 对所需的逻辑进行编码,但您可以使用自己的语言并根据需要更改逻辑。要编写代码,请在 OCI Cloud Shell 中打开函数
requirement.txt文件和func.py文件并编写代码。
-
从此准备获取完整的函数代码,它还使用 OCI 资源主用户,因此您不必担心将 OCI 凭据保留在这里。
-
编写完代码后,更新注册表中的函数并在 Cloud Shell 上使用此命令部署最新的代码:
fn -v deploy — app e2e-function-demo -
部署后,即可调用函数。您可以尝试使用函数调用命令进行测试,一旦确定该函数按需要工作,就可以移到下一部分。
DEBUG=1 fn invoke e2e-function-demo e2e-fn-streaming
注意:
OCI 支持资源/实例主体,以避免在执行函数时提供任何与用户相关的信息。因此,需要执行此步骤以确保该函数具有正确的权限集来调用 API,否则该函数将无法正常工作。
可选:您还可以检查调试模式以进行故障排除。例如:从 cloud shell 运行此命令,以调用并测试函数(如果它按预期运行):
DEBUG=1 fn invoke e2e-function-demo e2e-fn-streaming.`
任务 3:设置通知并配置预警
-
让我们创建一个主题,触发创建的函数。转至通知、主题并创建主题。

-
然后在创建的主题中创建订阅,并将其指向创建的函数。

现在我们的主题也进行了配置。
-
我们需要设置预警,提供触发器条件,然后将上面创建的主题添加为触发器目标。为此,请转到所需的数据库实例并向下滚动到要为其创建预警的度量,然后单击这些选项,然后单击对此查询创建预警选项。

-
填写名称和说明等详细信息并选择严重性

-
设置度量说明,提供度量名称空间、名称、间隔和统计信息的值。

-
提供度量维和触发器规则的详细信息。您还可以使用高级查询设置触发器规则,如以下文档所述:构建度量查询。

-
提供创建的主题详细信息,这些详细信息将在条件匹配时触发函数。

-
-
保存预警。这将触发预警并在条件匹配时调用函数。
相关链接
确认
- Lovelesh Saxena(云工程架构师)
更多学习资源
探索 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 频道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Set Up Database autoscaling using Oracle Cloud Infrastructure Cloud Native Services
F84886-01
August 2023
Copyright © 2023, Oracle and/or its affiliates.