这是本节的多页打印视图。 点击此处打印.

返回本页常规视图.

GCP 上的 Eon 模式数据库

您可以使用 Google Cloud Platform Launcher 将 Eon 模式数据库部署到 GCP,以部署管理控制台 (MC) 实例。然后,使用 MC 实例配置和部署 Eon 模式数据库。

1 - GCP Eon 模式实例建议

当使用 MC 将 Eon 模式数据库部署到 Google Cloud Platform (GCP) 时,您可以选择要部署为数据库节点的实例类型。MC 中的默认实例设置是更保守的选项(当前为 n1-standard-16)。它们足以满足大多数工作负载的需求。但是,如果您的查询执行可能会溢出到磁盘的复杂联接,则可以选择具有更多内存的实例(例如 n1-highmem-16)。如果您执行高度复杂的计算密集型分析,则还可以选择具有更多核心的实例(例如 n1-standard-32)。以下链接提供了有关 GCP 计算机类型实例和 Vertica 的其他信息:

您选择的实例越强大,每小时的成本就越高。您需要权衡是要使用更少、功能更强但成本更高的实例,还是要依赖成本更低、功能更弱的实例。由于 Eon 模式的弹性,如果您选择使用功能较弱的实例,则始终可以添加更多节点来满足高峰需求。当您在非高峰时段将实例数量减少到最小值时,您花费的开销将比拥有类似数量的功能更强的实例时要少。

存储选项

MC 的部署向导还要求您为实例选择本地存储类型。您可以为 Vertica 使用的每种本地存储类型选择不同的选项:编录、存储库和临时空间。对于所有这些存储位置,您可以选择要使用的磁盘类型(标准与 SSD)。您会看到使用 SSD 磁盘时性能最佳。但是,SSD 磁盘的成本更高。

对于存储库,您还可以选择是使用本地磁盘还是永久性磁盘。本地选项更快,因为它直接驻留在虚拟机主机上。但是,每当您关闭节点时,此存储都会被清除干净。永久性存储比本地选项慢,因为它不直接存储在托管实例的计算机上。但是,每当您关闭实例时,它都不会被清除。有关详细信息,请参阅 Google Cloud 文档的存储选项页面。

您选择哪些选项取决于节点在启动时必须执行多长时间 存储库预热。如果节点的存储库内容随时间变化不大(或者您倾向于频繁启动和停止实例),则使用永久性存储是有意义的。在这种情况下,存储库预热期会更短,因为当节点启动时,节点参与查询所需的大部分数据可能仍在其存储库中。当节点参与查询时,节点将从公共存储中执行更少的数据提取。

如果您的工作数据集快速变化,或者您倾向于让节点长时间停止,那么最佳选择通常是使用本地存储。在这种情况下,当节点重新启动时,节点存储库中的数据通常是陈旧的。要参与查询,节点必须从公共存储中提取所需的大部分数据,从而导致性能降低,直到它预热了其存储库。在这里使用本地临时存储是有意义的,因为您将获得因存储库的存储速度提高所带来的好处。由于您的节点无论如何都必须预热它们的存储库,因此将存储库放在临时存储上的缺点较少。

有关为 Eon 模式数据库扩展群集的常规指导原则,请参阅为 Eon 模式配置 Vertica 群集

2 - GCP 上 Eon 模式的先决条件

在 GCP 上部署 Eon 模式数据库之前,您必须执行以下几个步骤:

  • 查看 GCP 项目的默认服务帐户的权限。

  • 创建要在创建群集时使用的 HMAC 密钥。

  • 创建公共存储位置。

服务帐户权限

服务帐户允许自动化流程通过 GCP 进行身份验证。Eon 模式数据库部署过程使用 GCP 项目的项目服务帐户来部署实例。当您创建新项目时,GCP 会自动为该项目创建一个默认服务帐户(由 project_number-compute@developer.gserviceaccount.com 标识),并授予其 IAM 角色编辑者。有关此角色和其他 IAM 角色的详细信息,请参阅 Google Cloud 文档的了解角色

编辑者角色允许服务帐户从市场创建资源。当您创建管理控制台 (MC) 的实例时,MC 使用该帐户部署更多资源,例如为数据库配置实例。

有关详细信息,请参阅 Google Cloud 文档的了解服务帐户页面。

权限和角色

要在 GCP 上部署 Vertica,您的用户帐户必须具有:

  • 编辑者 (Editor) 角色。

  • runtimeconfig.waiters.getIamPolicy 权限。

创建 HMAC 密钥

Vertica 使用基于哈希的消息身份验证代码 (HMAC) 密钥对访问公共存储位置的请求进行身份验证。此密钥有两部分:访问 ID 和密钥。当您在 GCP 中创建 Eon 模式数据库时,您需要提供 HMAC 密钥的两个部分供节点用于访问公共存储。

要创建 HMAC 密钥:

  1. 登录到您的 Google Cloud 帐户。

  2. 如果您将用于创建数据库的项目的名称未显示在顶部横幅中,请单击下拉列表并选择正确的项目。

  3. 在左上角的导航菜单中的“存储 (Storage)”标题下,单击存储 (Storage) 并选择设置 (Settings)

  4. 在“设置 (Settings)”页面中,单击互操作性 (Interoperability)

  5. 滚动到页面底部,并找到“用户帐户 HMAC (User account HMAC)”标题。

  6. 除非您已经设置了默认项目,否则您会看到一条消息,指出您尚未为用户帐户设置默认项目。单击设置 project-id 作为默认项目 (Set project-id as default project) 按钮选择当前项目作为默认项目以实现互操作性。

  7. 在您的用户帐户的“访问密钥 (Access keys)”下,单击创建密钥 (Create a key)

  8. 您的新访问密钥将显示在 HMAC 密钥列表中。当您创建 Eon 模式数据库时将需要它们。您可以将它们复制到方便的位置(例如文本编辑器),或使用一个浏览器选项卡打开此页面,同时使用另一个选项卡或窗口创建数据库。这些密钥在此页面上仍然可用,因此您无需担心它们会保存到其他位置。

创建公共存储位置

您的 Eon 模式数据库需要将一个存储位置作为其公共存储。在 GCP 上运行的 Eon 模式数据库使用 Google Cloud Storage (GCS) 作为其公共存储位置。当您创建新的 Eon 模式数据库时,您将为 MC 的向导提供存储位置的 GCS URL。

此位置需要满足以下条件:

  • URL 必须至少包含一个存储桶名称。您也可以使用一个或多个级别的文件夹。例如,以下 GCS URL 是有效的:

    • gs://verticabucket/mydatabase

    • gs://verticabucket/databases/mydatabase

    • gs://verticabucket

    多个数据库可以共享同一个存储桶,只要每个数据库都有自己的文件夹即可。

  • 如果提供,则 URL 中的最低级别文件夹应当尚不存在。例如,在 GCS URL gs://verticabucket/databases/mydatabase 中,必须存在名为 verticabucket 的存储桶和名为 databases 的目录。名为 mydatabase 的子目录不得存在。Vertica 安装过程应该自行创建最终文件夹。如果该文件夹已存在,则安装过程将失败。

  • 必须将存储桶的权限设置为允许服务帐户对存储桶具有读取、写入和删除权限。要获得这些权限,分配给用户的最佳角色是存储对象管理员

  • 为防止出现性能问题,存储桶必须与运行 Eon 模式数据库的所有节点位于同一区域。

  • 如果通过 admintools UI 创建数据库,则必须在 admintools.conf 中将 gcsauth 设置为引导参数。有关此参数和其他 GCP 参数的详细信息,请参阅 Google Cloud Storage 参数

    [BootstrapParameters]
    gcsauth = ID:secret
    

3 - 在 GCP 上部署 Eon 模式数据库

执行 GCP 上 Eon 模式的先决条件中列出的步骤后,您就可以在 GCP 中部署 Eon 模式数据库了。此过程包含两个步骤:部署单节点 MC 实例,然后使用 MC 配置和部署数据库。以下主题介绍了这些步骤。

3.1 - 将 MC 实例部署到 GCP 以用于 Eon 模式

要将能够部署 Eon 模式数据库的 MC 实例部署到 GCP:

  1. 登录到您的 GCP 帐户(如果您当前未登录)。

  2. 验证您的用户帐户具有编辑者 (Editor) 角色和 runtimeconfig.waiters.getIamPolicy 权限。

  3. 验证要用于部署的 GCP 项目的名称是否显示在顶部横幅中。如果没有,请单击项目名称旁边的向下箭头并选择正确的项目。

  4. 单击页面左上角的导航菜单图标,然后选择市场 (Marketplace)

  5. 搜索解决方案 (Search for solutions) 框中,键入 Vertica Eon Mode 并按 Enter。

  6. 单击 Vertica 数据仓库,Eon 模式 (Vertica Data Warehouse, Eon Mode) 的搜索结果。有两个许可证选项:按小时 (BTH) 和自带许可证 (BYOL)。有关此许可证选择的详细信息,请参阅从 Google Cloud Marketplace 部署 Vertica

  7. 在您喜欢的许可证选项上单击启动 (Launch)

  8. 在下一页面上,填写字段以配置您的 MC 实例:

    • 部署名称 (Deployment name):在 GCP 部署页面中标识您的 MC 部署。

    • 区域 (Zone):是运行 MC 实例的虚拟机的部署位置。将此位置设置为与公共存储桶所在的位置相同。

    • 服务帐户:服务帐户允许自动化流程通过 GCP 进行身份验证。选择 project_number-compute@developer.gserviceaccount.com 标识的默认服务帐户。

    • 计算机类型 (Machine Type):是将运行 MC 的实例的虚拟硬件配置。此处的默认值是“中间”设置,足以满足大多数用例。如果您正在进行一个小型的概念验证部署,则可以选择一个功能不那么强大的实例来节省资金。如果您计划部署多个大型数据库,请考虑增加虚拟 CPU 和 RAM 的计数。
      有关 Vertica 的默认卷配置的详细信息,请参阅GCP 的 Eon 模式卷配置默认值

    • 用于访问 MC 的用户名 (User Name for Access to MC):是 MC 的管理员用户名。如果需要,您可以自定义它。

    • 网络 (Network)子网 (Subnetwork):是您希望 MC 实例和 Vertica 节点使用的虚拟私有云 (VPC) 网络和该网络中的子网。此设置不会影响您的 MC 的外部网络地址。如果要将 Vertica 群集与项目中的其他 GCP 实例隔离,请在 GCP 项目中创建自定义 VPC 网络和子网(可选),然后在这些字段中选择它们。有关详细信息,请参阅 Google Cloud 文档的 VPC 网络概述页面。

    • 防火墙 (Firewall):允许通过在防火墙中打开端口 5450 从 Internet 访问 MC。您可以通过清除我接受在防火墙中为 Vertica 打开端口 (5450) (I accept opening a port in the firewall (5450) for Vertica) 框来选择不打开此端口。但是,如果您未在防火墙中打开端口,则只能从 VPC 网络内访问您的 MC 实例。不打开端口将使访问您的 MC 实例变得更加困难。

    • MC 流量的源 IP 范围 (Source IP ranges for MC traffic):如果选择打开 MC 进行外部访问,请将一个或多个 CIDR 地址范围添加到此框中,以指定您希望能够访问 MC 的网络地址。

  9. 单击部署 (Deploy) 按钮开始部署您的 MC 实例。

部署过程将需要几分钟时间。

通常,您应使用 GCP 部署创建的默认服务帐号 ( project_number-compute@developer.gserviceaccount.com),但如果您想使用自定义服务帐户:

  • 自定义服务帐户必须具有编辑 角色。

  • 个人用户帐户必须在自定义服务帐户中具有服务帐户用户 角色。

连接并登录到 MC 实例

在部署过程完成后,MC 实例的“部署管理器 (Deployment Manager)”页面包含通过浏览器或 SSH 连接到 MC 的链接。

要连接到 MC 实例:

  1. MC 管理员用户有一个随机生成的密码,您需要使用该密码登录 MC。将 MC 管理员密码 (MC Admin Password) 字段中的密码复制到剪贴板。

  2. 单击访问管理控制台 (Access Management Console)

  3. 将打开一个新的浏览器选项卡或窗口,向您显示标题为“重定向通知 (Redirection Notic)”的页面。单击 MC URL 的链接以继续进入 MC 登录页面。

  4. 您的浏览器可能会向您显示安全警告。MC 实例使用自签名安全证书。大多数浏览器将这些证书视为安全隐患,因为它们无法验证其来源。您可以放心地忽略此警告并继续。在大多数浏览器中,单击警告页面上的“高级 (Advanced)”按钮,然后选择选项以继续。在 Chrome 中,它是一个标题为“继续* xxx.xxx.xxx.xxx***(不安全) (Proceed toxxx.xxx.xxx.xxx(unsafe))**”的链接。在 Firefox 中,它是一个标有“接受风险并继续 (Accept the Risk and Continue)”的按钮。

  5. 在登录屏幕上的用户名 (Username) 框中输入 MC 管理员用户名。此用户名为 mcadmin,除非您在 MC 部署表单中更改了用户名。

  6. 将您之前从“MC 管理员密码 (MC Admin Password)”字段复制的自动生成的密码粘贴到密码 (Password) 框中。

  7. 单击登录 (Log In)

登录 MC 后,更改 MC 管理员帐户的密码。

要更改密码:

  1. 在 MC 主页的“MC 工具 (MC Tools)”部分下,单击 MC 设置 (MC Settings)

  2. 在左侧菜单中,单击用户管理 (User Management)

  3. 选择 MC 管理员帐户的条目,然后单击编辑 (Edit)

  4. 单击生成新的 (Generate new)编辑密码 (Edit password) 按钮以更改密码。如果单击生成新的 (Generate new) 按钮,请务必将自动生成的密码保存在安全位置。如果单击编辑密码 (Edit password),系统会提示您输入新密码两次。

  5. 单击保存 (Save) 以更新密码。

现在,您已经创建了 MC 实例,可以部署 Vertica Eon 模式群集了。请参阅使用 MC 在 GCP 中配置和创建 Eon 模式数据库

3.2 - 使用 MC 在 GCP 中配置和创建 Eon 模式数据库

将 MC 实例部署到 GCP 后,可以使用它来部署 Eon 模式数据库。

要使用 MC 在 GCP 上配置和部署新的 Eon 模式数据库:

  1. 在 MC 主屏幕中,单击创建新数据库 (Create new database),以启动“在 Google Cloud 上创建 Vertica 群集 (Create a Vertica Cluster on Google Cloud)”向导。

  2. 在该向导的第一页,输入以下信息:

    • Google Cloud Storage HMAC 访问密钥 (Google Cloud Storage HMAC Access Key)HMAC 密钥 (HMAC Secret Key):复制并粘贴您之前创建的 HMAC 访问密钥和秘密访问密钥。您可以在“存储设置 (Storage Settings)”页面的“互操作性 (Interoperability)”选项卡上找到这些值。有关详细信息,请参阅GCP 上 Eon 模式的先决条件

    • 分区 (Zone):此值默认为包含 MC 实例的区域。将此值设置为与 Google Cloud Storage 存储桶(您的数据库将使用该存储桶处理公共存储)所在的区域相同。

    • CIDR 范围 (CIDR Range):您要授予其数据库访问权限的客户端的 IP 地址范围。请尽可能限制此范围,以限制对数据库的访问。

  3. 单击下一步 (Next),并提供以下信息:

    • Vertica 数据库名称 (Vertica Database Name):新数据库的名称。有关数据库名称的要求,请参阅创建数据库名称和密码

    • Vertica 版本 (Vertica Version):选择所需的 Vertica 数据库版本。您可以选择最近发布的 Vertica 的最新修补程序。对于每个数据库版本,还可以选择操作系统。

    • Vertica 数据库用户名 (Vertica Database User Name)数据库超级用户 的名称。此名称默认为 dbadmin,但您可以在此处输入其他用户名。

    • 密码 (Password)确认密码 (Confirm Password):输入数据库超级用户帐户的密码。

    • 数据库大小 (Database Size):初始数据库中节点的数量。如果您在此处指定三个以上的节点,则必须在“Vertica 许可证 (Vertica License)”字段(如下)中提供有效的 Vertica 许可证文件。

    • Vertica 许可证 (Vertica License):单击浏览 (Browse) 以查找并上传 Vertica 许可证密钥文件。如果未在此处提供许可证密钥文件,向导将使用 Vertica Community Edition 许可证来部署数据库。此许可证限制只能有三个节点,因此如果未提供许可证,“数据库大小 (Database Size)”字段中的值不能大于 3。如果使用 Community Edition 许可证进行部署,则可以稍后升级该许可证以将群集负载扩展到超过 1TB 数据。有关详细信息,请参阅管理许可证

    • 加载示例数据 (Load example data):如果您希望部署的数据库加载一些示例点击流数据,请选中此框。如果您正在测试功能且仅想查询数据库中的一些预加载数据,则此选项十分有用。

  4. 单击下一步 (Next),并提供以下信息:

    • 实例类型 (Instance Type):MC 将用来部署数据库节点的虚拟机实例规范。有关每种实例类型的详细信息,请参阅 Google Cloud 文档的计算机类型页面。另请参阅 GCP Eon 模式实例建议

    • 数据库存储库路径 (Database Depot Path)磁盘类型 (Disk Type):存储库的本地挂载点,以及每个节点专用于该 存储库的本地磁盘的类型和数量。您无法更改存储库的挂载路径。您在磁盘类型 (Disk Type) 字段中选择的磁盘仅用于存储存储库。在向导的下一页上,您将为编录和临时磁盘空间配置磁盘。使用 SSD 磁盘时,您将获得最佳性能,不过它的成本会更高。您可以选择为存储库使用更快捷的本地存储。但是,本地存储是短暂的。只要您停止实例,GCP 就会将磁盘擦除干净。这意味着每次启动节点时,它都必须从头开始 预热其存储库,而不是利用其存储库中的当前任何数据。有关本地磁盘选项的详细信息,请参阅 Google Cloud 文档的存储选项页面。

    • 卷大小 (Volume Size):连接到群集中每个节点的每个磁盘上的可用磁盘空间量。此字段显示群集中每个节点的可用总磁盘空间。有关为节点选择磁盘空间量的最佳实践,请参阅为 Eon 模式配置 Vertica 群集

    • 数据分段分片 (Data Segmentation Shards):设置数据库中 分片的数量。设置此值后,以后将无法更改。如需建议,请参阅为 Eon 模式配置 Vertica 群集。默认值取决于您在先前指定的“数据库大小 (Database Size)”中输入的节点数。这通常已足够,除非您预计群集会急剧扩展并超出初始节点数。

    • 公共位置 (Communal Location):一个 Google Cloud Storage URL,用于指定存储数据库公共数据的位置。有关要求,请参阅 GCP 上 Eon 模式的先决条件

    • 实例 IP 设置 (Instance IP settings):指定数据库中的节点是具有可从 Internet 访问的静态或临时网络地址,还是只能从内部虚拟网络内访问的地址。

  5. 单击下一步 (Next)。该向导会验证公共存储位置 URL。如果您输入的 URL 有问题,则会显示错误消息并提示您修复 URL。

    公共存储 URL 通过验证后,请填写以下信息:

    • 数据库编录路径 (Database Catalog Path)磁盘类型 (Disk Type)每个可用节点的大小 (GB) (Size (GB) per Available Node):挂载点磁盘类型,以及每个节点上数据库 编录的本地副本的磁盘大小。您无法编辑挂载点。您选择用于编录的本地磁盘类型及其大小。您只能为编录选择永久性磁盘存储。SSD 驱动器比标准磁盘速度更快,但更昂贵。磁盘大小的默认设置足以满足大多数中型数据库的需求。如果您预计维护大型数据库,请增加大小。

    • 数据库临时路径 (Database Catalog Path)磁盘类型 (Disk Type)每个可用节点的大小 (GB) (Size (GB) per Available Node):挂载点磁盘类型,以及每个节点上临时存储空间的磁盘大小。您无法编辑挂载点。您可以选择要使用的本地磁盘类型及其大小。您只能为临时磁盘空间选择永久性磁盘存储。SSD 驱动器比标准磁盘速度更快,但更昂贵。对于大多数数据库,默认设置已足够。如果您执行许多要溢出到磁盘的复杂合并操作,请考虑增加临时空间。

    • 标签实例 (Label Instances):选中此框以启用向节点实例添加标签。许多组织都会使用标签来安排和跟踪职责并分配实例成本。有关详细信息,请参阅 Google Cloud 文档的标记资源页面。如果您选择添加标签,请输入标签名称和值,然后单击添加 (Add)

  6. 单击下一步 (Next)。查看所有数据库设置的摘要。如果需要进行更正,请使用“返回 (Back)”按钮返回至向导的前几页。

  7. 当您对数据库设置感到满意之后,选中接受条款和条件 (Accept terms and conditions),然后单击创建 (Create)

配置和创建数据库的过程需要几分钟。成功完成后,MC 将显示开始使用 (Get Started) 按钮。此按钮将指向一个包含多个有用链接的页面,帮助您开始使用新数据库。

另请参阅