云客户?
免费开始>
在MyJFrog >中升级
云有什么新>







概述

通过使用PostgreSQL for Xray,你可以受益于PostgreSQL基础设施中的特性,比如备份和恢复。

建立单节点PostgreSQL数据库

为了让JFrog Xray作为单个节点与PostgreSQL一起运行,你必须创建一个专用的PostgreSQL数据库实例,然后配置Xray以使用它,如下节所述。请按照指南中的说明操作PostgreSQL的网站(例如https://www.postgresql.org/docs/)/tutorial-install.html)获取详细信息。

在高可用性中设置PostgreSQL数据库

您可以在高可用性下运行外部PostgreSQL数据库,以提高弹性(可从Xray版本3.54.5和Postgres 13获得)。有关在高可用模式下设置PostgreSQL数据库的信息,请参见PostgreSQL数据库的高可用性

最佳实践

为了避免Xray数据库事务的延迟,你应该在PostgreSQL HA中将复制声明为异步。复制延迟取决于几个因素,包括设置、网络延迟和数据库负载。除了声明异步复制之外,为了尽量减少发生故障转移时数据丢失的可能性,还应该声明异步复制监视复制延迟并采取避免的步骤.有关如何做到这一点的具体信息,请阅读replay_lag列,它近似于查询可以看到最近事务之前的延迟。


从远程服务器启用PostgreSQL连接

下面以从远程服务器启用PostgreSQL连接为例。向您的安全团队咨询您组织的最佳实践。

  1. 添加下面的行到< postgres_mount > /数据/ pg_hba.conf。

    主机[xray_db_name] [xray_user] [cidr] md5
    例子
    主机x射线x射线123.456.78.90/32 md5

    (cidr]是您想要访问的单个主机或网段。

  2. 添加下面的行到< postgres_mount > /数据/ postgresql.conf listen_addresses =‘*’

    您也可以使用特定的IP地址为PostgreSQL服务器监听。

  3. 添加上述更改后重新启动PostgreSQL。
页面内容

创建PostgreSQL数据库

支持的PostgreSQL版本

Xray支持PostgreSQL版本13。X(从版本3.18开始)及以下版本(2021年的EOL为9.5和9.6)。

使用以下命令创建具有适当权限的x射线用户和数据库。修改相关值以匹配您的特定环境:
创建x射线用户和数据库
创建用户xray创建数据库xraydb, OWNER=xray ENCODING='UTF8';授予数据库xraydb上的所有权限给xray;

如果您使用的是PostgreSQL的RDS Amazon Aurora实例,还需要执行以下命令,其中superUser是用于登录RDS的RDS超级用户。

授予超级用户x射线

你也可以跑x光/应用程序/第三方/ postgresql / createPostgresUsers. sh在安装文件夹中。

创建数据库和用户之后,继续配置数据库。

配置x射线使用PostgreSQL

当你配置x射线使用PostgreSQL时,所有关于组件的信息都存储在PostgreSQL中。

配置x射线使用PostgreSQL单节点

  1. 停止x射线服务。
  2. 中的数据库连接详细信息system.yamlconfiguration file如下。

    shared: database: type: postgresql driver: org.postgresql.Driver url: "postgres://<你的db url,例如:localhost:5432>/xraydb? "Sslmode =disable" username: xray password:密码
  3. 启动x射线服务。

配置Xray HA在HA中使用PostgreSQL数据库

Xray 3.55.2提供
  1. 停止x射线服务。
  2. 编辑system.yaml文件更新以下值。url场下共享数据库部分的如下格式。

    "postgres://,…, /xraydb?sslmode = disable&target_session_attrs =读写”

    下面的示例显示了一个示例system.yaml文件配置。

    systemYaml: shared: security…日志:……数据库:类型:postgresql url: "postgres://10.90.100.110:5445,10.90.100.110:5446/xraydb?sslmode = disable&target_session_attrs =读写”driver: org.postgresql.Driver username: xray password: xray jfrogUrl:  security: joinKey:  rabbitMq: autoStop: true url: "amqp://localhost:5672/" ...
  3. 启动x射线服务。
版权所有©2023 JFrog Ltd。