亚马逊AWS官方博客

开始使用适用于 Db2 的全新 Amazon RDS



我很高兴地宣布,IBM 和 AWS 合作推出了适用于 Db2 的 Amazon Relational Database Service(Amazon RDS),这是一个在 AWS 基础设施上运行的完全托管的 Db2 数据库引擎。

IBM Db2 是由 IBM 开发的企业级关系数据库管理系统(RDBMS)。它提供一套全面的功能,包括强大的数据处理能力、稳健的安全机制、可扩展性,而且支持多种数据类型。由于其可靠性和性能,Db2 受到组织的广泛认可,它可以有效地管理各种应用程序中的数据并处理数据密集型工作负载。Db2 源于 IBM 自 20 世纪 70 年代以来在数据存储和结构化查询语言(SQL)方面所做的开创性工作。它自 1983 年开始上市,最初仅用于大型机,后来被移植到 Linux、Unix 和 Windows 平台(LUW)。如今,Db2 为所有垂直领域的数千个关键业务应用程序提供支持。

使用适用于 Db2 的 Amazon RDS,您现在只需在 AWS 管理控制台中单击几下,使用 AWS 命令行界面(AWS CLI)键入一条命令,或者使用 AWS SDK 输入几行代码,即可创建 Db2 数据库。AWS 负责处理基础设施的繁重工作,让您可以腾出时间来执行更高级别的任务,例如应用程序的架构和查询优化。

如果您刚接触 Amazon RDS,或者具有本地 Db2 背景,让我来简要回顾一下 Amazon RDS 的优势。

  • Amazon RDS 提供的 Db2 数据库与您目前在本地使用的数据库相同。您的现有应用程序将在不更改代码的情况下重新连接到 RDS for Db2。
  • 该数据库在完全托管的基础设施上运行。您无需预置服务器、安装软件包、安装补丁或维护基础设施的运行状态。
  • 该数据库也是完全托管的。由我们来负责安装、次要版本升级、每日备份、扩展和保证高可用性。
  • 基础设施可以根据需要进行纵向扩展和缩减。您只需停止然后重新启动数据库,即可更改底层硬件,以满足不断变化的性能要求或享受最新一代的硬件优势。
  • Amazon RDS 提供多种存储类型选择,旨在提供快速、可预测且一致的 I/O 性能。对于新的或不可预测的工作负载,您可以将系统配置为自动扩展存储
  • Amazon RDS 会自动处理您的备份,您只需点击几下即可将其恢复到新数据库。
  • Amazon RDS 有助于部署高度可用的架构。Amazon RDS 将数据同步复制到不同可用区(可用区是一组不同的数据中心)中的备用数据库。当检测到多可用区部署出现故障时,Amazon RDS 会自动故障转移到备用实例并路由请求,而无需更改数据库端点 DNS 名称。这种切换的停机时间最短,且不会丢失任何数据。
  • Amazon RDS 构建在 AWS 的安全基础设施之上。它使用 TLS 加密传输中数据,使用 AWS Key Management Service(AWS KMS)对静态数据进行加密。这有助于您部署符合公司或行业法规(例如 FedRAMPGDPRHIPAAPCISOC)的工作负载。
  • 作为多个 AWS 合规计划的一部分,第三方审计员对 Amazon RDS 的安全性与合规性进行评测,您可以验证 Amazon RDS 合规性验证的完整列表

您可以使用原生 Db2 工具 [例如恢复和导入AWS Database Migration Service(AWS DMS)] 将现有的本地 Db2 数据库迁移到 Amazon RDS。AWS DMS 让您能够单次操作或连续迁移数据库,同时您的应用程序继续更新源数据库上的数据,直到您决定中断。

Amazon RDS 支持多种工具来监控您的数据库实例,包括 Amazon RDS 增强监控Amazon CloudWatch,或者您可以继续使用 IBM 数据管理控制台IBM DSMtop

下面我们来看看它的工作原理
我总是喜欢尝试新服务,以了解其工作原理。让我们创建一个 Db2 数据库并使用 IBM 提供的标准工具与它连接。我想大多数阅读这篇文章的人都具有 IBM Db2 背景,却对 Amazon RDS 知之甚少。

首先,我创建一个 Db2 数据库。为此,我导航到 AWS 管理控制台的 Amazon RDS 页面,然后选择创建数据库。在本演示中,我将接受大多数默认值。但是,我将展示所有部分,并评论您必须考虑的重要配置要点。

我从 Amazon RDS 提供的多个数据库引擎中选择 Db2。

适用于 Db2 的 RDS - 创建数据库 - 步骤 1 我向下滚动页面并选择 IBM Db2 标准版引擎版本 11.5.9。如果您愿意,Amazon RDS 会自动修补数据库实例。您可以在此处了解有关 Amazon RDS 数据库维护的更多信息

我选择生产。Amazon RDS 将部署一个针对高可用性和快速、一致性能进行调整的默认配置。

适用于 Db2 的 RDS - 创建数据库 - 步骤 2

适用于 Db2 的 RDS - 创建数据库 - 多可用区部署

设置下,我为 RDS 实例命名(这不是 Db2 目录名称!),然后我选择主用户名密码

实例配置下,我选择运行数据库的节点类型。这将定义虚拟服务器的硬件特征:vCPU 的数量、内存量等。根据应用程序的要求,您可以为 IBM Db2 标准实例分配最多提供 32 个 vCPU 和 128 GiB RAM 的实例。选择 IBM Db2 高级实例时,您可以分配提供多达 128 个 vCPU 和 1 TiB RAM 的实例。此参数对价格有直接影响。

适用于 Db2 的 RDS - 创建数据库 - 设置

适用于 Db2 的 RDS - 创建数据库 - 实例配置

存储下,我选择 Amazon Elastic Block Store(Amazon EBS)卷的类型、大小以及 IOPS 和吞吐量。在本演示中,我接受默认建议值。这组参数也会直接影响价格。

适用于 Db2 的 RDS - 创建数据库 - 步骤 4

连接下,我选择要部署数据库的 VPC(在 AWS 术语中,VPC 是私有网络)。在公共访问下,我选择以确保只能从我的私有网络访问数据库实例。我觉得没有任何使用场景需要您为此项选择

此处您还要选择 VPC 安全组。安全组是一种网络过滤,用于定义哪些 IP 地址或网络可以访问您的数据库实例以及使用哪个 TCP 端口进行访问。请务必选择或创建一个 TCP 50000 处于打开状态的安全组,以允许应用程序连接到您的 Db2 数据库。

适用于 Db2 的 RDS - 创建数据库 - 步骤 5

我将所有其他选项保留为默认值。请务必打开页面底部的其他配置部分。您可以在此处指定初始数据库名称。如果您没有在此处命名 Db2 数据库,则唯一的选择是恢复该实例上的现有 Db2 数据库备份。

本部分还包含 Amazon RDS 自动备份的参数。您可以选择一个时间窗口,以及我们将保留备份多长时间。

我接受所有默认值并选择创建数据库

适用于 Db2 的 RDS - 创建数据库 - 步骤 6

几分钟后,您会看到您的数据库可用。

我选择数据库实例端点的 DNS 名称,然后连接到在同一网络中运行的 Linux 机器。安装从 IBM 网站下载的 Db2 客户端包后,我键入以下命令来连接到数据库。此处的内容并不特定于 Amazon RDS。

db2 目录 TCPIP 节点 blognode 远程 awsnewsblog-demo.abcdef.us-east-2.rds-preview.amazonaws.com 服务器 50000
db2 目录数据库 NEWSBLOG 在节点上以 blogdb2 身份验证 server_encrypt
db2 使用 MySuperPassword 连接到 blogdb2 用户管理员

连接后,我将从流行的 Db2Tutorial 网站下载示例数据集和脚本。我针对刚才创建的数据库运行脚本。

wget https://www.db2tutorial.com/wp-content/uploads/2019/06/books.zip
解压缩 books.zip 
db2 -stvf ./create.sql 
db2 -stvf ./data.sql 
db2 "select count(*) author_count from authors"

适用于 Db2 的 RDS - 查询结果

如您所见,在连接和使用数据库方面,没有任何特定于 Amazon RDS 的内容。我使用标准的 Db2 工具和脚本。

还有一件事
适用于 Db2 的 Amazon RDS 要求您自带 Db2 许可证。在启动 Db2 实例之前,必须输入您的 IBM 客户 ID 和站点号。

为此,请创建自定义数据库参数组并在启动时将其附加到您的数据库实例。数据库参数组充当应用于一个或多个数据库实例的引擎配置值的容器。在 Db2 参数组中,有两个特定于 IBM Db2 许可证的参数:您的 IBM 客户编号rds.ibm_customer_id)和您的 IBM 站点号(rds.ibm_site_id)。

适用于 IBM Db2 的 RDS - 参数组

如果您不知道自己的站点编号,请联系您的 IBM 销售组织,索取最近的权利证明(PoE)、发票或销售订单的副本。所有这些文件上都会有您的网站编号。

定价和可用性
适用于 Db2 的 Amazon RDS 可在除中国和 GovCloud 之外的所有 AWS 区域使用。

Amazon RDS 按需定价,没有预付费用或订阅费。您只需对数据库运行按小时付费,再加上每月预置的数据库存储空间和使用的备份存储空间 GB 以及预置的 IOPS 数量。适用于 Db2 的 Amazon RDS 定价页面上有每个区域的定价详细信息。正如我之前提到的,适用于 Db2 的 Amazon RDS 要求您自带 Db2 许可证。

如果您已经熟悉 Amazon RDS,那么您会高兴能为应用程序开发人员提供全新的数据库引擎。如果您具有本地数据库背景,您一定会爱上 Amazon RDS 提供的简单操作和自动化功能。

您可以在适用于 Db2 的 Amazon RDS 文档页面上了解更多详细信息。现在就开始使用适用于 Db2 的 Amazon RDS 部署您的第一个数据库吧!

— seb