# 实时监控 gpperfmon 数据库是一个专门用于数据收集代理在计算节点上保存统计信息的指定数据库,通过使用 gpcc_install 工具创建。该程序创建 gpperfmon 数据库以及 gpmon 数据库上的角色,同时开启在计算节点上的监视代理。 ## 实时监控指标 gpperfmon 数据库包含下面三种表集合。 - now 这类表存储当前系统度量数据,例如活跃的查询。 - history 这类表存储历史度量数据。 - tail 这类表存储临时数据。Tail 这类表只在内部使用不应该被用户查询。now 和 tail 这两类表在 Main 主机文件系统中被存储为文本文件,能够被 gpperfmon 数据库以外部表的形式访问。history 这类表是存储在 gpperfmon 数据库中的普通数据库表。 ## 实时监控安装 ### 概要 ``` gpcc_install --port oushudb_port [--mainport nginx_port] [--enable --password gpmon_password [--pgpass path_to_file]] [--hostfile path_to_hostfile] [--verbose] gpcc_install --help ``` ### 描述 gpcc_install 工具自动执行启用数据收集代理程序所需的步骤。 用户必须是 OushuDB 数据库系统用户(oushu)才能运行此工具。--port 选项是必须的。使用 --enable 选项时,还需要 --password 选项。使用 --port 选项来提供 OushuDB 数据库的服务端口。 在没有 --enable 选项时,此工具只创建 gpperfmon 数据库(用于存储由数据收集代理收集的系统度量的数据库)。在使用 --enable 选项运行时,该工具还会运行启用性能监视器数据收集代理所需的以下附加任务: 1. 在 OushuDB 数据库中创建 gpmon 超级用户角色。数据收集代理需要连接到数据库并写入数据。gpmon 超级用户角色默认使用 MD5 加密口令认证。使用 --password 选项来设置 gpmon 超级用户的口令。 2. 更新 $MASTER_DATA_DIRECTORY/pg_hba.conf 文件。该工具将这些行添加到基于主机的认证文件(pg_hba.conf)中: ``` local gpperfmon gpmon md5 host all gpmon 127.0.0.1/28 md5 host all gpmon ::1/128 md5 ``` 3. 更新口令文件(.pgpass)。为了允许数据收集代理作为 gpmon 角色进行连接而无需口令提示,用户必须拥有一个包含 gpmon 用户项的口令文件。该工具将以下项添加到用户的口令文件(如果该文件不存在,该工具将创建它): *:5432:gpperfmon:gpmon:gpmon_password 如果用户的口令文件不在默认位置(~/.pgpass),使用 --pgpass 选项指定文件位置。 4. 设置 gpcc 的服务器配置参数。数据收集代理必须启用以下参数才能开始收集数据。需要手动在 OushuDB 数据库的 postgresql.conf 配置文件中设置以下参数: shared_preload_libraries='gpcc'(在集群中所有的 postgresql.conf 文件中,如果该参数已有取值需要追加) session_preload_libraries='gpcc'(在集群中所有的 postgresql.conf 文件中,如果该参数已有取值需要追加) 选项 --enable 除了创建 gpperfmon 数据库外,还执行启用数据收集代理所需的附加步骤。指定 --enable 时,工具还将创建并配置 gpmon 超级用户帐户。 --password gpmon_password 如果必须指定了 --enable。设置 gpmon 超级用户的口令。 如果未指定 --enable 则不允许使用。 --port gpdb_port 必需。指定 OushuDB 数据库的服务端口。 --mainport nginx_port 指定 OushuDB 数据库 nginx 的连接端口。 --pgpass path_to_file 在 --enable 选项被指定时可选。如果口令文件不在 ~/.pgpass 的默认位置,则这个选项指定口令文件的位置。 --hostfile path_to_hostfile 如果 hostfile 文件不在 ~/hostfile 的默认位置,则这个选项指定口令文件的位置和名字。 --verbose 将日志记录级别设置为详细。 --help 显示在线帮助。