与 Cloudera Manager 集成

Hadoop 的 Cloudera 发行版包括 Cloudera Manager,这是一个用于管理 Hadoop 群集的基于 Web 的工具。Cloudera Manager 可以管理任何提供服务描述的服务,包括 Vertica。

您可以使用 Cloudera Manager 启动、停止和监控单个数据库节点或整个数据库。您可以管理共置的和单独的 Vertica 群集 — Cloudera 可以管理不属于 Hadoop 群集的节点上的服务。

您必须安装和配置您的 Vertica 数据库才能继续操作;您不能使用 Cloudera Manager 创建数据库。

安装服务

Cloudera 服务描述 (CSD) 文件描述了 Cloudera 可以管理的服务。Vertica CSD 位于数据库节点上的 /opt/vertica/share/CSD 中。

要安装 Vertica CSD,请执行以下步骤:

  1. 在 Vertica 节点上,按照 VerticaAPIKey 中的说明生成 API 密钥。您需要此密钥来完成 CSD 的安装。

  2. 在托管 Cloudera Manager 的 Hadoop 节点上,将 CSD 文件复制到 /opt/cloudera/csd。

  3. 重新启动 Cloudera Manager:

    $ service cloudera-scm-server restart
    
  4. 在 Web 浏览器中,转到 Cloudera Manager 并重新启动 Cloudera Management Service。

  5. 如果您的 Vertica 群集与 Hadoop 群集是分开的(非共置):使用 Cloudera Manager 为您的数据库节点添加主机。如果您的群集是共置的,请跳过此步骤。

  6. 使用 Cloudera Manager 添加 Vertica 服务。

  7. 在“角色分配 (Role Assignment)”页面上,选择作为数据库节点的主机。

  8. 在“配置 (Configuration)”页面上,为以下字段指定值:

    • 数据库名称

    • 代理端口(如果不确定,则接受默认值)

    • API 密钥

    • 运行时所使用的数据库用户身份(通常是 dbadmin)和密码

关于代理

当您通过 Cloudera Manager 管理 Vertica 时,您实际上是在与 Vertica 代理进行交互,而不是直接与数据库交互。代理在所有数据库节点上运行并代表您与数据库交互。管理控制台使用相同的代理。大多数时候,这种额外的间接操作对您来说是透明的。

Cloudera 管理的服务包含一个或多个角色。在这种情况下,服务是 "Vertica",而单一角色是“Vertica 节点”。

可用操作

Cloudera Manager 显示两组操作。服务级别操作应用于所有节点上的服务,而角色级别操作仅应用于单个节点。

您可以在所有节点上执行以下服务级别操作:

  • 启动:启动代理和(如果尚未运行)数据库。

  • 停止:停止数据库和代理。

  • 重新启动:先调用“停止”,然后调用“启动”。

  • 添加角色实例:将新的数据库节点添加到 Cloudera Manager。节点必须已经是 Vertica 群集的一部分,并且主机必须已经为 Cloudera Manager 所知。

  • 进入维护模式:抑制由 Cloudera Manager 生成的运行状况警报。

  • 退出维护模式:恢复正常报告。

  • 更新内存池大小:从“静态服务池 (Static Service Pools)”配置页面应用内存池设置。

除添加角色实例之外,您可以在单个节点上将上述其余操作当作角色级别操作执行。

管理内存池

Cloudera Manager 允许您更改其管理的节点的资源分配,例如内存和 CPU。如果您使用的是共置群集,集中管理资源可以简化群集管理。如果您使用的是单独的 Hadoop 和 Vertica 群集,您可能倾向于按照管理数据库中所述单独管理 Vertica。

使用 Cloudera Manager“静态服务池 (Static Service Pools)”配置页面来配置资源分配。以 GB 为单位指定的“Vertica 内存池 (Vertica Memory Pool)”值是分配给每个节点上的数据库的最大内存量。如果配置页面包含“Cgroup 内存硬限制 (Cgroup Memory Hard Limit)”,则将其设置为与“Vertica 内存池 (Vertica Memory Pool)”相同的值。

设置这些值后,您可以使用“更新内存池大小”操作将该值应用到受管节点。此操作等效于 ALTER RESOURCE POOL GENERAL MAXMEMORYSIZE。在您执行此操作之前,“静态服务池 (Static Service Pools)”中的配置更改不会在 Vertica 中生效。

卸载服务

要卸载 Vertica CSD,请执行以下步骤:

  1. 停止 Vertica 服务,然后将其从 Cloudera Manager 中移除。

  2. 从 /opt/cloudera/csd 中移除 CSD 文件。

  3. 从命令行中,重新启动 Cloudera Manager 服务器。

  4. 在 Cloudera Manager 中,重新启动 Cloudera Management Service。