自定义 AlloyDB Omni 安装

选择文档版本:

本页面介绍了如何自定义 AlloyDB Omni 安装,该安装支持各种形式的自定义。本页面展示了一些常见的 自定义。

启用和停用 AlloyDB Omni 遥测

AlloyDB Omni 遥测实现了一个轻量级客户端代理,该代理仅在 AlloyDB Omni 容器映像中运行。此代理会定期收集一组基本的假名指标,并将其发送到 Google 管理的端点。

由于 AlloyDB Omni 是一款可免费下载的产品,因此该遥测功能可为 Google 提供有关正在运行的实例的通用采用和部署环境的基本非个人身份信息 (non-PII) 指标。这些数据有助于为产品开发和支持优先级提供信息。

收集的指标包括以下内容:

  • 唯一安装 ID(假名 UUID)
  • AlloyDB Omni 版本和 PostgreSQL 主要版本
  • 主机系统信息,例如 CPU 数量、RAM 和正常运行时间

停用遥测报告

如需阻止遥测代理运行和报告使用情况指标,请将 PostgreSQL 配置参数 omni_enable_telemetry 设置为 off。您可以通过在 postgresql.conf 文件中设置遥测标志或在运行时使用 ALTER SYSTEM 设置该标志来停用遥测代理。

在 postgresql.conf 文件中设置遥测标志

如需修改容器的永久性数据目录中的 PostgreSQL 配置文件,请按照以下步骤操作:

  1. 在数据库的数据目录 ($PGDATA) 中找到 postgresql.conf 文件。
  2. 停用 AlloyDB Omni 遥测。

    omni_enable_telemetry = off
    
  3. 如需应用更改,请重启 AlloyDB Omni 容器。 遥测代理会停止收集使用情况指标并将其发送给 Google。

在运行时使用 ALTER SYSTEM 设置遥测标志

如需设置遥测标志并在重启后保留更改,请按照以下步骤操作:

  1. 使用 psql 连接到 AlloyDB Omni 实例:

    psql -h HOST -U USER -d DATABASE
    

    进行以下替换:

    • HOST:AlloyDB Omni 实例的主机名或 IP 地址,例如 127.0.0.1
    • USER:您要以其身份连接的数据库用户,例如 postgres
    • DATABASE:您要连接到的数据库,例如 postgres
  2. 运行以下命令:

    ALTER SYSTEM SET omni_enable_telemetry = 'off';
    
  3. 重新加载配置或重启实例。在某些容器设置中,您可能需要重启实例,以确保后台工作器完全获取了更改。

    SELECT pg_reload_conf();
    

    遥测代理会停止收集使用情况指标并将其发送给 Google。

启用遥测报告

如果您之前停用了 AlloyDB Omni 遥测,则可以通过将 omni_enable_telemetry 标志设置为 on 来重新启用它。您可以通过在 postgresql.conf 文件中设置该标志或在运行时使用 ALTER SYSTEM 设置该标志来启用遥测代理。

在 postgresql.conf 文件中设置遥测标志

  1. 在数据库的数据目录 ($PGDATA) 中找到 postgresql.conf 文件。
  2. 设置以下行:

    omni_enable_telemetry = on
    
  3. 如需应用更改,请重启 AlloyDB Omni 容器。

在运行时使用 ALTER SYSTEM 设置遥测标志

  1. 使用 psql 连接到 AlloyDB Omni 实例。
  2. 运行以下命令:

    ALTER SYSTEM SET omni_enable_telemetry = 'on';
    
  3. 如需应用更改,请重启 AlloyDB Omni 容器。

    docker restart CONTAINER_NAME
    

    进行以下替换:

    • CONTAINER_NAME:AlloyDB Omni 容器的名称,例如 my-omni-1

检查 AlloyDB Omni 遥测状态

您可以检查 AlloyDB Omni 遥测代理的状态,包括它是否已启用或正在运行。您还可以检查遥测代理活动。

检查遥测代理是否已启用或停用

如需检查遥测设置的状态,请按照以下步骤操作:

  1. 连接到您的实例
  2. 运行以下命令:
SHOW omni_enable_telemetry;

输出会返回 onoff,具体取决于您是停用还是启用了 AlloyDB Omni 遥测。

检查遥测代理是否正在运行

如需检查遥测代理是否正在运行,请在容器主机中运行以下命令:

docker top CONTAINER_NAME

进行以下替换:

  • CONTAINER_NAME:AlloyDB Omni 容器的名称,例如 my-omni-1

如果遥测已启用并正在运行,则输出会包含一行,其中包含文本 postgres: omni telemetry worker

检查遥测代理活动

如需检查遥测代理的活动,请在容器主机中运行以下命令:

docker logs CONTAINER_NAME 2>&1 | grep telemetry

进行以下替换:

  • CONTAINER_NAME:AlloyDB Omni 容器的名称,例如 my-omni-1

如果遥测代理正在运行,则日志中会包含类似于以下内容的消息:

LOG:  [telemetry_agent_worker.cc:143]  Started telemetry worker
LOG:  [telemetry_agent_worker.cc:161]  Running telemetry reporting agent
telemetry_agent: Uploading telemetry data to https://cloud.google.com/log.

连接到您的实例

根据您的环境,您可以在本地远程连接到 AlloyDB Omni 实例。

在本地连接

Docker

docker exec -it CONTAINER_NAME psql -U postgres

Docker

docker exec -it CONTAINER_NAME psql -U postgres

Podman

podman exec -it CONTAINER_NAME psql -U postgres

Podman

podman exec -it CONTAINER_NAME psql -U postgres

执行以下变量替换操作:

  • CONTAINER_NAME:AlloyDB Omni 容器的名称,例如 my-omni-1

远程连接

/usr/lib/postgresql/15/bin/psql -U postgres -p HOST_PORT -h IP_ADDRESS_OR_FQDN

执行以下变量替换操作:

  • HOST_PORT:您在安装期间使用的 TCP 端口。
  • IP_ADDRESS_OR_FQDN:运行 AlloyDB Omni 的主机的 IP 地址或完全限定域名。

启用扩展程序

如需查看 AlloyDB Omni 中可用的扩展程序列表,请参阅支持的数据库扩展程序。虽然 AlloyDB Omni 不包含 PostGIS 和 Orafce,但您可以按照以下说明安装它们:

启用扩展程序中所述,使用标准 PostgreSQL CREATE EXTENSION 语句启用已安装的扩展程序。