云客户?
免费开始>
在MyJFrog >中升级
云b>的新功能

搜索





概述

本页提供了安装和配置JFrog Xray、单节点和高可用性的不同方法的指南。可以找到有关高可用性的其他信息在这里


开始之前

系统需求

安装Xray前,请参考系统需求有关受支持的平台、受支持的浏览器和其他需求的信息。

为x射线使用专用服务器,不运行其他软件缓解性能瓶颈,避免端口冲突,避免设置异常配置。

如果您将Xray安装在与Artifactory相同的服务器上,您可能会遇到端口冲突和性能问题。Artifactory和Xray使用8082端口与外部网络通信。此外,端口8082、8046、8047和8049被Xray和Artifactory用于Router微服务。

管理权限

在以下情况下,您需要在安装机器上拥有管理员权限

  • 本机安装程序-总是需要管理员权限
  • 存档安装程序-仅在安装期间需要管理员权限
  • Docker组合安装程序-总是需要管理员权限

注意,Xray需要一个PostgreSQL数据库。您可以选择设置自己的PostgreSQL数据库,也可以让Xray安装程序作为安装过程的一部分为您设置数据库。有关支持的PostgreSQL数据库版本列表,请参见系统需求表格

x射线安装要求金桥.在开始x射线安装之前安装jq。

官方不支持外部RabbitMQ实例;推荐使用捆绑的RabbitMQ安装。

安装Xray时,必须以root用户或提供的用户身份运行安装以非root用户访问Sudo。

系统架构

要了解JFrog平台部署,请参考系统架构

安装x光

在安装Xray 3.x之前,您必须先安装JFrog Artifactory 7.x

安装步骤

安装过程包括以下主要步骤:

  1. 下载x光根据您需要的安装程序类型(Docker Compose, RPM, Debian)。
  2. 安装x光要么作为单节点安装,或高可用性集群
    1. 安装第三方依赖(PostgreSQL数据库,包含在存档中)
    2. 安装x光
  3. 配置x射线基本设置:
    1. 连接到Artifactory实例(需要joinKey和一个jfrogUrl)。
    2. 可选:如果您已将PostgreSQL设置为外部数据库,请配置PostgreSQL数据库连接细节。
  4. 启动服务使用启动脚本或操作系统服务管理。
  5. 检查服务日志查询服务状态。

默认主目录/ $JFROG_HOME

默认的x射线主目录根据安装类型定义。有关更多详细信息,请参阅产品目录结构页面。

请注意:本指南使用JFROG_HOME美元表示包含已部署产品的JFrog根目录。

JFrog订阅级别

自托管
箴X
企业X
企业+
页面内容


单节点安装

支持以下安装方式:

交互式脚本安装(推荐)

安装脚本适用于所有支持的升级方法(Linux Archive, RPM, Debian和Docker Compose)。它为您提供了一种交互式方式来安装Xray及其依赖项。

在为Linux Archive安装运行安装程序脚本时,不要从符号链接的文件夹运行安装程序脚本,因为这可能导致安装程序失败。


  1. 提取压缩归档文件的内容并转到提取的文件夹。

    jfrog-xray--.tar.gz CD jfrog-xray--. gz

    Linux归档操作系统用户权限

    当运行Xray时,安装脚本默认创建一个名为Xray的用户它必须在安装目录上具有运行和执行权限。

    建议将Xray下载文件解压缩到一个目录中,该目录赋予所有用户运行和执行权限,例如/ opt

    Linux存档
    Mv jfrog-xray--linux.tar.gz /opt/ CD /opt tar -xf jfrog-xray--linux.tar.gz Mv jfrog-xray--linux xray CD xray

    .env文件包含在Docker-Compose归档文件中

    这个.env文件由docker-compose在安装和升级期间更新。

    请注意,有些操作系统默认情况下不显示点文件。如果对文件进行了任何更改,请记住在升级之前进行备份。

  2. 运行安装脚本。

    该脚本将用一系列强制输入提示您,包括jfrogURL(自定义基URL)joinKey

    RPM或Debian
    。/ install.sh
    码头工人组成
    。/ config.sh

    Linux归档必备条件

    请参考Linux Archive中x射线的先决条件运行安装脚本前。

    cd jfrog-xray——<版本> / app / bin

    。/ install.sh

    Linux存档
    ./install.sh——user <用户名>——group <组名> -h |——help: [optional] display usage -u |——user: [optional](默认:xray)用户,用于运行产品,如果不可用则创建该用户-g |——group: [optional](默认:xray)用户,用于运行产品,如果不可用则创建该用户
  3. 验证和定制产品配置(可选),包括第三方依赖连接细节和端口。

    验证这是很大的文件句柄限制在启动x射线之前指定。

  4. 启动并管理Xray服务。

    systemd操作系统
    Systemctl start|stop xray.service

    从Xray 3.8x开始,Xray上的停止和重启操作将不会应用于RabbitMQ进程。在Xray的启动动作中,如果RabbitMQ没有运行,它将被启动。

    如果您希望脚本对RabbitMQ执行停止和重启操作,请设置shared.rabbitMq.autoStop作为真正的在system.yaml中。注意,在docker-compose安装中不会使用此标志。

    systemv
    Service xray start|stop
    码头工人组成
    cd jfrog-xray--compose #从Xray 3.8x开始,RabbitMQ已经被移动到一个自己的组合文件中,这需要在启动其他服务之前启动。从3.8开始。在启动其他服务之前,需要先启动PostgreSQL。Docker-compose -p xray-postgres-d docker-compose -p xray ps docker-compose -p xray down

    Xray可以在Linux存档安装中作为服务进行安装和管理。请参考启动Linux Archive Manual Installation下的Xray部分了解更多详情。

    Linux存档
    x光/ app / bin / xray.sh开始|停止
  5. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府模块。
  6. 检查x射线日志。

    $JFROG_HOME/xray/var/log/console.log . tail

    配置控制台日志的日志轮换

    console.log文件可以快速增长,因为所有服务都写入它。对于Darwin安装,此文件不进行日志轮换。了解更多关于如何配置日志轮换

手动安装Linux归档文件

先决条件

以下先决条件必须独立于x射线存档安装进行安装。确保在启动x射线服务之前安装它们。

为方便起见,它们包含在存档中。

安装步骤

  1. 提取压缩归档文件的内容并将其移动到x射线目录中。

    mv jfrog-xray--linux. Tar .gz

    PostgreSQL是必需的,必须在继续下一步安装步骤之前安装。

    设置您的PostgreSQL连接细节共享配置部分$ JFROG_HOME / x光/ var / etc / system.yaml文件。

  2. 开始PostgreSQL。

  3. 定制产品配置
    1. 设置Artifactory连接详细信息。
    2. 自定义PostgreSQL数据库连接细节。(可选)
    3. 设置任何其他配置(例如:端口、节点id)x光system.yamL配置文件
  4. 作为提取tar的用户启动并管理Xray服务。
    作为一个过程

    守护进程
    x光/ app / bin / xray.sh开始

    管理流程。

    x光/ app / bin / xray.sh启动|停止| |重启状态

    作为服务

    Xray被打包为存档文件和安装脚本,可用于将其安装为在自定义用户下运行的服务。目前支持Linux系统。

    操作系统用户权限

    当将Xray作为服务运行时,安装脚本会创建一个名为x光(默认)它必须在安装目录上具有运行和执行权限。

    建议将Xray下载文件解压缩到一个目录中,该目录赋予所有用户运行和执行权限,例如/ opt

    要安装x射线作为服务,以root用户执行如下命令:

    用户和组可以通过x光/ var / etc / system.yaml作为shared.usershared.group.这优先于安装时通过命令行传递的值。

    xray/app/bin/installService.sh——user ——group  -u |——user: [optional](默认值:xray) user用于运行产品,如果不可用则创建该用户。-g |——group: [optional](默认值:xray) group用于运行产品,如果不可用则创建该用户

    用户和组将存储在x光/ var / etc / system.yaml在安装结束时。

    要管理服务,请使用systemd摆在命令,取决于您的系统。

    使用systemd
    Systemctl  x射线
    使用摆在
    Service xray 
  5. 从浏览器访问Xray:http:// < jfrogUrl > / ui /,去吧。指示板选项卡应用程序模块。
  6. 检查x射线日志。

    Tail -f xray/var/log/console.log

手动RPM安装

RPM安装捆绑了Xray及其所有依赖项。它作为本机RPM包提供,其中Xray及其依赖项必须单独安装。如果您正在自动化安装,请使用此选项。

  1. 提取压缩归档文件的内容,并转到提取的文件夹。

    CD jfrog-xray--rpm. gz
  2. 安装PostgreSQL.你可以选择安装任何兼容的PostgreSQL版本,或者使用PostgreSQL RPM捆绑的Xray安装程序/第三方/ postgresql

    PostgreSQL是必需的,必须在继续下一步安装步骤之前安装。

    手动安装PostgreSQL时,需要在共享配置部分$ JFROG_HOME / x光/var/etc/ system.yaml文件。

  3. 安装db-util.您可以使用下面的捆绑db-utils RPM/第三方/ misc /

    #如果db_dump不可用,将安装db-util . hash db_dump 2>/dev/null || rpm -ivh——replacepkgs ./third- third /misc/.x86_64.rpm
  4. 安装RabbitMQ依赖项。

    #注意:在Centos 7和RHEL 7上安装时使用rpm,在Centos 8和RHEL8上安装时使用el8。从解压的文件夹中运行以下命令。RPM -ivh——replacepkgs ./third-party/rabbitmq/socat-.x86_64. RPM >RPM -ivh——replacepkgs ./third-party/rabbitmq/erlang-.x86_64. RPM
  5. 安装x光。Y您必须以root用户运行。

    -Uvh——replacepkgs ./xray/xray.rpm
  6. 定制产品配置

    1. 设置Artifactory连接详细信息。

    2. 自定义PostgreSQL数据库连接细节。(可选)

    3. 设置任何其他配置(例如:端口、节点id)x光system.yaml配置文件

      验证一个大的文件句柄限制在启动x射线之前指定。

  7. 启动并管理Xray服务。

    systemd操作系统
    Systemctl start|stop xray.service
    systemv操作系统
    Service xray start|stop|status|restart
  8. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块
  9. 检查x射线日志。

    Linux
    $JFROG_HOME/xray/var/log/console.log . tail

手动安装Debian

Debian安装捆绑了Xray及其所有依赖项。它作为本机Debian软件包提供,其中Xray及其依赖项必须单独安装。如果您正在自动化安装,请使用此选项。

  1. 提取压缩归档文件的内容,并转到提取的文件夹。

    CD jfrog-xray--deb. Tar .gz
  2. 安装PostgreSQL

    PostgreSQL是必需的,必须在继续下一步安装步骤之前安装。

    设置您的PostgreSQL连接细节共享配置部分JFROG_HOME美元/ x光/ etc / system.yaml文件。

  3. 安装db-util。

    DB -util允许我们与包含基于rpm的Docker镜像信息的Berkley DB进行交互。这样,JFrog Xray就可以为这些映像索引操作系统包。

    Ubuntu
    DPKG -i ./third-party/misc/db5..deb DPKG -i ./third-party/misc/db- uti_ .deb . DPKG
    Debian 8
    DPKG -i ./third-party/misc/db5..deb DPKG -i ./third-party/misc/db- uti_ .deb . DPKG
    Debian 9
    DPKG -i ./third-party/misc/db5..deb DPKG -i ./third-party/misc/db- uti_ _all.deb
  4. 安装RabbitMQ依赖项。

    Ubuntu 16.04 (xenial)
    DPKG -i ./third-party/rabbitmq/libss.deb DPKG -i ./third-party/rabbitmq/socat_.deb DPKG -i ./third-party/rabbitmq/esl-erlang_.deb . DPKG
    Ubuntu 18.04 (bionic)
    DPKG -i ./third-party/rabbitmq/socat_.deb DPKG -i ./third-party/rabbitmq/esl-erlang_.deb
    Ubuntu 20.04 (focal)
    DPKG -i ./third-party/rabbitmq/socat_.deb DPKG -i ./third-party/rabbitmq/esl-erlang_.deb
    Debian 8 (jessie)
    #在安装Erlang依赖项之前,mv /etc/apt/sources.list.d/backportslist /etc/apt >/dev/null apt-get update dpkg -i ./third /rabbitmq/libss.deb dpkg -i ./third /rabbitmq/socat_.deb dpkg -i ./third /rabbitmq/esl-erlang_.deb #安装完Erlang依赖项后mv /etc/apt/backports./etc/apt/sources.list.d /补丁列表。列出>/dev/null apt-get update
    Debian 9 (stretch)
    DPKG -i ./third-party/rabbitmq/socat_.deb DPKG -i ./third-party/rabbitmq/esl-erlang_.deb
    Debian 10 (buster)
    DPKG -i ./third-party/rabbitmq/socat_.deb DPKG -i ./third-party/rabbitmq/esl-erlang_.deb

    如果在运行上述命令安装依赖项时遇到任何问题,请运行以下命令。这将包括系统中缺失的依赖项。

    安装任何丢失的依赖项
    Apt-get install -f -y
  5. 安装x光。您必须以root用户身份运行。

    DPKG - 1 ./xray/xray.deb
  6. 定制产品配置

    1. 设置Artifactory连接详细信息。

    2. 自定义PostgreSQL数据库连接细节。(可选)

    3. 设置任何其他配置(例如:端口、节点id)x光system.yaml配置文件

      验证一个大的文件句柄限制在启动x射线之前指定。

  7. 启动并管理Xray服务。

    systemd操作系统
    Systemctl start|stop xray.service
    systemv操作系统
    Service xray start|stop|status|restart
  8. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块
  9. 检查x射线日志。

    Linux
    $JFROG_HOME/xray/var/log/console.log . tail

舵安装

为小型、中型或大型安装部署人工设备

图表目录包括三个值文件,每个值文件对应一个安装类型:小/中/大。这些值文件是为安装设置资源请求和限制的建议。2022世界杯阿根廷预选赛赛程你可以在相应海图目录

  1. 添加charts.jfrog.io给你的Helm客户

    Helm repo添加jfrog https://charts.jfrog.io
  2. 更新存储库。

    Helm回购更新
  3. 初始化安装连接键和JFrog url作为x射线图安装的参数。

    头盔升级-安装x射线-设置x射线。joinKey= \ --set xray.jfrogUrl= --namespace xray jfrog/xray

    或者,您可以手动创建一个包含连接键的秘密,然后在安装/升级期间将其传递给模板。密钥必须命名为join-key。

    kubectl create secret generic my-secret——from-literal=join-key= #将创建的secret传递给helm helm upgrade——install xray——set xray。joinKeySecretName=my-secret——namespace xray jfrog/xray

    在这两种情况下,请确保在以后的所有调用中传递相同的连接键舵安装执掌升级.这意味着总是通过——设置xray.joinKey = < YOUR_PREVIOUSLY_RETRIEVED_JOIN_KEY >.在第二种情况下,这意味着总是通过——设置xray.joinKeySecretName =我的秘密并确保秘密的内容不会改变。

  4. 定制产品配置(可选)包括数据库、Java Opts和文件存储。

    与其他安装不同,Helm Chart配置是对values.yaml然后应用到system.yaml

    按照以下步骤应用配置更改。

    1. 将更改更改为values.yaml。
    2. 执行命令。

      头盔升级——安装Xray——namespace Xray -f values.yaml

  5. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块

  6. 检查已部署的Helm释放的状态。

    舵机状态x射线

    Xray Helm Chart安装使用"/"作为RabbitMQ vhost。如果你用JFrog平台的图表安装Xray, RabbitMQ的vhost被命名为“Xray”。

    有关高级安装选项,请参见掌舵图表安装程序为高级用户


HA安装

下面介绍如何建立两个或两个以上节点的Xray HA集群。有关更多信息,请参见系统架构

先决条件

同一Xray HA安装中的所有节点必须运行相同的Xray版本。

数据库

x射线HA需要外部PostgreSQL数据库。确保在继续安装第一个节点之前安装数据库。有几种方法可以设置PostgreSQL的冗余,如负载平衡和复制。更多的信息,请参阅PostgreSQL。

RabbitMQ作为每个节点的x射线安装的一部分自动安装。在HA架构中,RabbitMQ在不同的RabbitMQ节点之间使用队列镜像,队列镜像是自动设置的。

许可

支持Xray HA企业许可.集群中的每个节点必须使用不同的license激活。

网络

  • 所有的Xray HA组件(Xray集群节点、数据库服务器和RabbitMQ)必须在同一个快速局域网内。

  • 所有HA节点之间必须通过专用的TCP端口进行通信。

支持以下安装方式:

Linux Archive / RPM/ Debian Installation

第一个节点安装步骤

  1. 安装第一个节点。安装是相同的单节点安装重要的:确保不要启动x光。
  2. 配置系统带有数据库和第一个节点配置细节。例如,

    第一个节点system.yaml
    shared: database: type: postgresql driver: org.postgresql.Driver url: postgres:///xraydb?sslmode=disable用户名:xray密码:xray jfrogUrl:  security: joinKey:  rabbitMq: autoStop: true URL: "amqp://localhost:5672/"
  3. 启动并管理Xray服务。

    systemd操作系统
    Systemctl start|stop xray.service
    Systemv操作系统
    Service xray start|stop
  4. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块
  5. 检查x射线日志。

    Linux
    $JFROG_HOME/xray/var/log/console.log . tail

其他节点安装步骤

对于加入集群的节点,该节点必须具有相同的数据库配置和主密钥。

Xray使用的主密钥是与Artifactory使用的相同。

  1. 使用上述相同的步骤安装所有其他节点。
  2. 配置PostgreSQL允许外部IP连接。这将是确保该节点可以访问PostgreSQL。
  3. 配置system.yaml带有主密钥、数据库和活动节点配置的附加节点的文件。例如,

    附加节点system.yaml
    shared: database: type: postgresql driver: org.postgresql.Driver url: postgres:///xraydb?sslmode=disable username: xray password: xray jfrogrurl:  security: joinKey:  rabbitMq: autoStop: true URL: "amqp://localhost:5672/" active: node: name: <第一个节点的主机名> ip:

    可以通过在第一个节点上执行以下命令获取第一个节点的主机名。

    主机名- s
  4. 复制master.key从第一个节点到位于$JFROG_HOME/xray的附加节点/var/etc/security/master.key。
  5. 启动附加节点。

  6. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块
  7. 检查x射线日志。

    Linux
    $JFROG_HOME/xray/var/log/console.log . tail

Docker组件安装

第一个节点安装步骤

  1. 提取压缩归档文件的内容并转到提取的文件夹。

    CD jfrog-xray--compose. Tar .gz

    .env文件包含在Docker-Compose归档文件中

    这个.env文件由docker-compose在安装和升级期间更新。

    请注意,有些操作系统默认情况下不显示点文件。如果对文件进行了任何更改,请记住在升级之前进行备份。

  2. 运行config.sh脚本设置具有所需所有权的文件夹。请注意该脚本将提示您一系列强制输入,包括如果这是集群的一部分,并配置所需的输入system.yaml

    。/ config.sh
  3. 验证和定制产品配置(可选),包括第三方依赖连接细节和端口。
  4. 使用docker-compose命令启动和管理Xray。注意:运行命令只有从提取的文件夹中。

    cd jfrog-xray--compose #从Xray 3.8x开始,RabbitMQ已经被移动到一个自己的组合文件中,这需要在启动其他服务之前启动。从Xray 3.8x开始,PostgreSQL需要在启动其他服务之前启动。Docker-compose -p xray-postgres命令为up -d docker-compose -p xray up -d docker-compose -p x射线日志
  5. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块

  6. 检查x射线日志。

    Docker-compose -p x射线日志

其他节点安装步骤

  1. 提取压缩归档文件的内容并转到提取的文件夹。

    CD jfrog-xray--compose. Tar .gz
  2. 运行config.sh脚本设置具有所需所有权的文件夹。请注意该脚本将提示您一系列强制输入,包括如果这是集群的一部分,并配置所需的输入system.yaml

    。/ config.sh
  3. 验证和定制产品配置(可选),包括第三方依赖连接细节和端口。

    Mac版Docker

    当你在Mac中使用Docker Compose时,/etc/localtime可能不像预期的那样工作,因为它可能不是docker-for-mac设置中的共享位置。

    您可以从选定的文件中删除以下行docker-compose.yaml文件以避免安装问题。

    - /etc/localtime: / etc /作用:罗依
  4. 使用docker-compose命令启动和管理Xray。注意:运行命令只有从提取的文件夹中。

    cd jfrog-xray--compose #从Xray 3.8x开始,RabbitMQ已经被移动到一个自己的组合文件中,这需要在启动其他服务之前启动。命令为up -d docker-compose -p xray up -d docker-compose -p x射线日志
  5. 从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块

  6. 检查x射线日志。

    Docker-compose -p x射线日志

舵安装

重要的

目前,不可能将Kubernetes集群内的JFrog产品(例如,Xray)与集群外的另一个JFrog产品(例如,Artifactory)连接起来,因为这被认为是一个单独的网络。因此,如果其中一个产品在集群中,则hth华体会最新官方网站无法将JFrog产品连接在一起。

为小型、中型或大型安装部署人工设备

图表目录包括三个值文件,每个值文件对应一个安装类型:小/中/大。这些值文件是为安装设置资源请求和限制的建议。2022世界杯阿根廷预选赛赛程你可以在相应海图目录

官方不支持外部RabbiMQ实例;推荐使用捆绑的RabbitMQ安装。

高可用性

对于HA x射线安装,请设置值中的replicaccount。Yaml文件到>1(推荐的是3.)。它强烈建议也设置RabbitMQ作为HA集群运行。

启动Xray时,每个服务有3个副本,RabbitMQ有3个副本。

helm upgrade——install xray——namespace xray——set replicaccount =3——set rabbitmq-ha。replicaCount = 3中心/ jfrog / x光
  1. 添加ChartCenter Helm存储库给你的Helm客户

    Helm repo添加jfrog https://charts.jfrog.io
  2. 更新存储库。

    Helm回购更新
  3. 接下来,创建一个唯一的主密钥;JFrog Xray需要一个唯一的主密钥,以供同一集群中的所有微服务使用。默认情况下,图表中有一个集合values.yamlxray.masterKey)。

    对于生产级安装,强烈建议使用自定义主密钥。如果您最初使用默认的主密钥,那么在以后的阶段将很难更改主密钥。此密钥用于演示目的,不应在生产环境中使用。

    生成唯一密钥,并在安装/升级时传递给模板。

    #创建密钥导出MASTER_KEY=$(openssl rand -hex 32) echo ${MASTER_KEY} #将创建的主密钥传递给Helm Helm upgrade——install——set xray。masterKey=${MASTER_KEY}——命名空间xray jfrog/xray

    或者,您可以手动创建一个包含主密钥的秘密,并在安装/升级期间将其传递给模板。

    #创建密钥export MASTER_KEY=$(openssl rand -hex 32) echo ${MASTER_KEY} #创建包含密钥的秘密。秘密中的密钥必须命名为master-key kubectl create secret generic my-secret——from-literal=master-key=${MASTER_KEY} #将创建的秘密传递给Helm Helm upgrade——install xray——set xray。masterKeySecretName=my-secret——namespace xray jfrog/xray

    在任何一种情况下,请确保在以后的所有调用中传递相同的主密钥舵安装执掌升级.在第一种情况下,这意味着总是通过——设置xray.masterKey = $ {MASTER_KEY}.在第二种情况下,这意味着总是通过——设置xray.masterKeySecretName =我的秘密并确保秘密的内容不变。

  4. 初始化安装连接键和JFrog url作为x射线图安装的参数。

    头盔升级-安装x射线-设置x射线。joinKey= \ --set xray.jfrogUrl= --namespace xray jfrog/xray

    或者,您可以手动创建一个包含连接键的秘密,然后在安装/升级期间将其传递给模板。密钥必须命名为join-key。

    kubectl create secret generic my-secret——from-literal=join-key= #将创建的secret传递给helm helm upgrade——install xray——set xray。joinKeySecretName=my-secret——namespace xray jfrog/xray

    在这两种情况下,请确保在以后的所有调用中传递相同的连接键舵安装执掌升级.这意味着总是通过——设置xray.joinKey = < YOUR_PREVIOUSLY_RETRIEVED_JOIN_KEY >.在第二种情况下,这意味着总是通过——设置xray.joinKeySecretName =我的秘密并确保秘密的内容不会改变。

  5. 定制产品配置(可选)包括数据库、Java Opts和文件存储。

    与其他安装不同,Helm Chart配置是对values.yaml然后应用到system.yaml

    按照以下步骤应用配置更改。

    1. 将更改更改为values.yaml。
    2. 执行命令。

      头盔升级——安装Xray——namespace Xray -f values.yaml

  6. 一个从浏览器访问Xray:http:// < jfrogUrl > / ui /:x射线安全与合规选项卡政府UI中的模块

  7. 检查已部署的舵机释放的状态。

    舵机状态x射线

    有关高级安装选项,请参见掌舵图表安装程序为高级用户



产品配置

在安装之后和运行Xray之前,您可以设置以下配置。

在哪里可以找到系统配置?

控件配置所有系统设置system.yaml文件位于$ JFROG_HOME / x光/var/etc文件夹中。有关更多信息,请参见x射线系统

如果您的文件夹中没有System YAML文件,请复制模板在文件夹中可用并命名它system.yaml

舵图system.yaml文件在图表中进行管理values.yaml。

人工连接详细信息

x射线需要一个工作的Artifactory服务器和一个合适的许可证。x射线连接到Artifactory需要2个参数:

  • jfrogUrl-部署JFrog Artifactory的机器的URL,或者指向它的负载平衡器。建议使用DNS名称,不要使用直连ip。例如:http://jfrog.acme.comhttp://10.20.30.40:8082”。请注意,/ artifactory不再需要上下文。
    将其设置为共享配置部分JFROG_HOME美元/ x光/ var / etc / system.yaml文件。
  • join.key-这是Artifactory注册和认证x射线服务器所需的“秘密”密钥。
    你可以去取神器joinKey的JPD UI中(join Key)用户管理|设置|连接密钥
    设置join.key中的Artifactory服务器所使用的共享配置部分JFROG_HOME美元/ x光/var/etc/system.yaml文件。

修改PostgreSQL数据库凭据

Xray与postgreSQL数据库捆绑在一起,它们预先配置了默认凭据。

更改默认凭据:

$ psql -d xraydb -U Xray -W #安全修改用户“Xray”的密码在提示符下输入并重新键入密码。使用新凭据登录验证更新是否成功$ psql -d xraydb -U xray -W

设置您的PostgreSQL连接细节共享配置部分JFROG_HOME美元/ x光/var/etc/system.yaml文件。

修改RabbitMQ数据库凭据

通过将erlang cookie的值设置为来宾用户的RabbitMQ密码,Xray是预先安装在RabbitMQ中的。

码头工人组成

更改默认凭据。

  1. 设置新密码< MOUNT_DIR > / app /第三方/ rabbitmqrabbitmq.conf文件。

    Default_pass = <新密码>
  2. 设置Rabbitmq的密码共享配置部分$ JFROG_HOME / x光/ var / etc / system.yaml文件。
  3. 重新启动所有服务。

    CD jfrog-xray--compose docker-compose -p xray restart

RPM或Debian

更改默认凭据。

  1. 设置新密码JFROG_HOME美元rabbitmq / app / bin / /rabbitmq.conf文件。

    Default_pass = <新密码>
  2. 设置Rabbitmq的密码共享配置部分$ JFROG_HOME / x光/ var / etc / system.yaml文件。
  3. 重新启动所有服务。

    服务xray restart / systemctl restart xray. Service

Linux存档

更改默认凭据。

  1. 设置新密码JFROG_HOME美元rabbitmq / app / bin / /rabbitmq.conf文件。

    Default_pass = <新密码>
  2. 设置Rabbitmq的密码共享配置部分$ JFROG_HOME / x光/ var / etc / system.yaml文件。
  3. 重新启动所有服务。

    x光/ app / bin / xray.sh重启

配置RabbitMQ使用FQDN进行集群

默认情况下,RabbitMQ使用集群中其他节点的短主机名进行通信。但是,可以将其配置为使用完全限定域名(FQND)主机名(长主机名)。

按照以下步骤配置RabbitMQ使用FQDN。

  1. 安装x光,但不启动服务。
  2. 根据安装程序类型修改以下文件。

    Docker-Compose
    在docker-compose-rabbitmq。yaml: environment: - RABBITMQ_USE_LONGNAME=true In .env: HOST_ID=<长主机名> ##仅适用于备节点#JF_SHARED_RABBITMQ_ACTIVE_NODE_NAME=<主节点>的长主机名
    所有安装程序的常见更改
    在系统。yaml: shared: node: id: <长主机名> name: <长主机名> ##仅备节点# shared: # rabbitMq: # active: # node: # name: <主节点>的长主机名
    Linux和本地安装程序
    在JFROG_HOME/app/bin/xray.default中:export RABBITMQ_USE_LONGNAME=true
  3. 启动RabbitMQ和Xray服务。

第三方日志采集器

Xray支持使用外部日志收集器,如Sumologic或Splunk。

调整权限,允许日志收集服务对生成的日志文件进行读操作。

  1. 如果需要,将日志收集服务用户添加到相应的组中(安装和启动Xray的用户和组)。
  2. 中应用用户和组权限$ JFROG_HOME / x光/ var / log目录使用:

    $ chmod -R 640 $JFROG_HOME/xray/var/log
  3. 调整组读继承权限setgid位使用:

    $ chmod -R 2755 $JFROG_HOME/xray/var/log

    这将导致生成的日志文件继承文件夹的组权限。


第三方应用

PostgreSQL性能改进

建议增加PostgreSQL配置文件中的最大连接数设置。

打开美元JFROG_HOME / x光/ var / lib / pgsql / data / postgresql.conf配置文件,并添加或编辑max_connections财产。

Max_connections = 300

重新启动数据库以启用此更改。

安装PostgreSQL

使用Microsoft Azure PostgreSQL

某些托管数据库(如Azure)访问数据库的用户名与数据库内部的实际用户名不同。对于azure管理的PostgreSQL用户名比如说,会是吗xray@mycompanyactualUsernamex光.有关更多信息,请参见x射线系统

之前的Xray版本3.30

如果您安装的Xray版本是3.30之前的版本,请不要使用带有特殊字符的PostgreSQL密码:如果设置了带有特殊字符的密码,Xray可能无法工作,例如~ = # @ $ /

RPM

  1. 安装PostgreSQL。

    之前的Xray v 3.24.x
    #在解压的jfrog-xray--rpm目录下执行如下命令。#注意:在centos7和RHEL 7上安装PostgreSQL rpm时使用el7,在centos8和RHEL8上安装el8。Mkdir -p /var/opt/ postgresql/ data RPM -ivh——replacepkgs ./third-第三方/postgresql/libicu-50.2-4.el7_7.x86_64。rpm -ivh——replacepkgs ./第三方/postgresql/postgresql13-lib -13.2- 1pgdg .rhel7.x86_64. rpm(仅限AWS实例)rpm -ivh——replacepkgs ./third-party/postgresql/postgresql13-13.2-1PGDG.rhel7.x86_64. rpmrpm -ivh——replacepkgs ./third-party/postgresql/postgresql13-server-13.2-1PGDG.rhel7.x86_64. rpmpostgres/ var/opt/postgres export PGDATA="/var/opt/postgres/data" export PGSETUP_INITDB_OPTIONS="-D /var/opt/postgres/data" #对于centos 7&8 / rhel 7&8 sed -i "s~^Environment=PGDATA=。* ~环境= PGDATA = / var / opt / postgres /数据~”/lib/systemd/system/postgresql-13。service systemctl daemon-reload /usr/pgsql-13/bin/postgresql-13-setup initdb # For centos 6 / rhel 6 sed -i "s~^PGDATA=.* ~ PGDATA = / var / opt / postgres /数据~”/etc/init.d/postgresql-13 service postgresql-13 initdb将postgres hba配置文件/var/opt/ postgresql /data/pg_hba.conf中的“ident”和“peer”替换为“trust”。此配置用于创建初始用户和数据库,一旦完成,将pg_hba.conf中的“trust”更改为md5并重启PostgreSQL。
  2. 配置PostgreSQL允许外部IP连接。

  3. 默认情况下,PostgreSQL只允许本地客户端通信。要使不同的ip能够与数据库通信,您需要配置pg_hba.conf文件

    文件位置根据安装类型

    • Docker-compose美元JFROG_HOME / x光/ var /数据/ postgres /数据
    • 本机的安装/var/opt/postgres/data

    要授予所有ip访问权限,您可以在IPv4本地连接部分下添加以下内容。

    主机所有所有0.0.0.0/0 md5

    将以下行添加到/var/opt/postgres/data/ postgresql.conf。

    listen_addresses = ' * '端口= 5432


  4. 开始PostgreSQL。

    Systemctl start postgresql-。Service或Service postgresql- start


  5. 设置数据库和用户。

    cp -f ./第三方/postgresql/createPostgresUsers.sh /tmp source /etc/locale.conf cd /tmp && su postgres -c "POSTGRES_PATH=/usr/pgsql-13/bin PGPASSWORD=postgres DB_PASSWORD=password bash /tmp/createPostgresUsers.sh"

Debian

先决条件

建议确保您的apt-get使用以下命令,库是最新的。

安装任何丢失的依赖项
Apt-get install -f -y
cp -f /etc/apt/sources./etc/apt/sources.list列表。或igfile sh -c 'echo "deb http://ftp.de.debian.org/debian/ $(lsb_release -cs) main non-free contrib" >> /etc/apt/sources.list' sh -c 'echo "deb-src http://ftp.de.debian.org/debian/ $(lsb_release -cs) main non-free contrib" >> /etc/apt/sources.list' cp -f /etc/apt/sources.list.d/pgdg.list /etc/apt/sources.list.d/pgdg.list.origfile sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' wget --no-check-certificate --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
安装步骤
  1. 安装PostgreSQL。
    在解压的jfrog-xray--deb目录下运行以下命令。

    Mkdir -p /var/opt/ postgres_data
    Ubuntu 16.04 (xenial)
    DPKG -i ./third-party/postgresql/postgresql-13_13.2-1.pgdg16.04+1_amd64.deb
    Ubuntu 18.04 (bionic)
    DPKG -i ./third-party/postgresql/postgresql-13_13.2-1.pgdg18.04+1_amd64.deb
    Ubuntu 20.04 (focal)
    DPKG -i ./third-party/postgresql/postgresql-13_13.2-1.pgdg20.04+1_amd64.deb
    Debian 8 (jessie)
    /etc/apt/sources.list.d/backports。/etc/apt >/dev/null apt-get update dpkg -i ./third-party/postgresql/postgresql-13_13.2-1.pgdg80+1_amd64.deb #安装Postgres依赖项后mv /etc/apt/backports./etc/apt/sources.list.d /补丁列表。列出>/dev/null apt-get update
    Debian 9 (stretch)
    DPKG -i ./third-party/postgresql/postgresql-13_13.2-1.pgdg90+1_amd64.deb
    Debian 10 (buster)
    Apt update -y Apt -get install wget sudo -y Apt -get install -y gnupg gnupg1 gnupg2 DPKG -i ./third-party/postgresql/postgresql-13_13.2-1.pgdg100+1_amd64.deb
  2. 停止x射线服务。

    Systemctl停止postgresql.service
  3. 修改postgres文件夹的权限。

    chown -R postgres:postgres /var/opt/postgres sed -i "s~^data_directory =。*~data_directory = '/var/opt/postgres/data'~" "/etc/postgresql/13/main/postgresql.conf" sed -i "s~^hba_file =。*~hba_file = '/var/opt/postgres/data/pg_hba.conf'~" "/etc/postgresql/13/main/postgresql.conf" sed -i "s~^ident_file =。*~ident_file = '/var/opt/postgres/data/pg_ident.conf'~" "/etc/postgresql/13/main/postgresql.conf" su postgres -c "/usr/lib/postgresql/13/bin/initdb——pgdata=/var/opt/postgres/data"
  4. 配置PostgreSQL允许外部IP连接。

  5. 默认情况下,PostgreSQL只允许本地客户端通信。要使不同的ip能够与数据库通信,您需要配置pg_hba.conf文件

    根据安装类型选择文件位置

    • Docker-compose美元JFROG_HOME / x光/ var /数据/ postgres /数据
    • 本机的安装/var/opt/postgres/data

    要授予所有ip访问权限,您可以在IPv4本地连接部分添加以下内容:

    主机所有所有0.0.0.0/0信任

    在/etc/postgresql/13/main/postgresql.conf中添加以下行

    listen_addresses = ' * '
  6. 开始PostgreSQL

    Systemctl启动postgresql。Service或Service postgresql start
  7. 设置数据库和用户。

    cp -f ./第三方/postgresql/createPostgresUsers.sh /tmp source /etc/default/locale cd /tmp && su postgres -c "POSTGRES_PATH=/usr/lib/postgresql/13/bin PGPASSWORD=postgres DB_PASSWORD=password bash /tmp/createPostgresUsers.sh"
  8. 放回原来的pdgg .list。

    mv /etc/apt/sources.list.d / pgdg。/etc/apt/sources.list列表。d/pgdg.list.tmp && cp -f /etc/apt/sources.list.d/pgdg.list.origfile /etc/apt/sources.list.d/pgdg.list
  9. 删除备份文件。

    Rm -f /etc/apt/sources.list.d/pgdg.list.tmp
  10. 放回原始的sources.list。

    mv /etc/apt/sources.列出/etc/apt/sources.list.tmp && cp -f /etc/apt/sources.list。origfile /etc/apt/sources.list
  11. 删除备份文件。

    Rm -f /etc/apt/sources.list.tmp &&

Linux存档

Postgres二进制文件不再与Xray的linux存档安装程序捆绑在一起。记得手动安装Postgres。

#创建psql数据库(“xray/app/第三方/postgresql/createPostgresUsers.sh”脚本,负责Postgres的种子生成,假设这个数据库存在)/psql template1 < Postgres prompt>: Create database ;POSTGRES_PATH= Xray /app/第三方/postgresql/createPostgresUsers.sh

升级Xray PostgreSQL

x光3。X和2。x的支持PostgreSQL版本9.5,9.6,10,11,12,13 (Xray的最早版本)支持PostgreSQL 10-12的版本是Xray 2.16。因为PostgreSQL将停止对一些旧版本的支持,包括2021年2月的9.5和2021年11月的9.6。

虽然可以从9.5逐步升级到9.6,但JFrog建议升级到PostgreSQL 13。这将延长时间,直到下一个PostgreSQL支持结束,并使Xray能够利用新版本提供的最新功能,如更好的性能等

了解升级PostgreSQL的流程和要求,请参见JFrog Xray PostgreSQL升级- PostgreSQL 9。x EoS

安装Erlang

RPM

#注意:在Centos 7和RHEL 7上安装时使用rpm,在Centos 8和RHEL8上安装时使用el8。RPM -ivh——replacepkgs xray/app/third-party/rabbitmq/socat-. RPM >RPM -ivh——replacepkgs xray/app/third-party/rabbitmq/erlang-.rpm

Debian

建议确保你的apt-get库是最新的,使用以下命令。

安装任何丢失的依赖项
Apt-get install -f -y
Ubuntu 16.04 (xenial)
DPKG -i xray/app/third-party/rabbitmq/libss.deb DPKG -i xray/app/third-party/rabbitmq/socat_.deb DPKG -i xray/app/third-party/rabbitmq/esl-erlang_.deb
Ubuntu 18.04 (bionic)
DPKG -i xray/app/third-party/rabbitmq/socat_.deb DPKG -i xray/app/third-party/rabbitmq/esl-erlang_.deb
Debian 8 (jessie)
#在安装Erlang依赖项之前,mv /etc/apt/sources.list.d/backportslist /etc/apt >/dev/null apt-get update dpkg -i xray/app/third /rabbitmq/libss.deb dpkg -i xray/app/third /rabbitmq/socat_.deb dpkg -i xray/app/third /rabbitmq/esl-erlang_.deb #安装完Erlang依赖项后mv /etc/apt/backports./etc/apt/sources.list.d /补丁列表。列出>/dev/null apt-get update
Debian 9 (stretch)
DPKG -i xray/app/third-party/rabbitmq/socat_.deb DPKG -i xray/app/third-party/rabbitmq/esl-erlang_.deb

安装Db-Util

DB -util允许我们与包含基于rpm的Docker镜像信息的Berkley DB进行交互。这样,JFrog Xray就可以为这些映像索引操作系统包。

RPM

#如果db_dump不可用,将安装db-util . hash db_dump 2>/dev/null || rpm -ivh——replacepkgs xray/app/third-第三方/misc/db4-utils-.rpm

黛比

Ubuntu
DPKG -i xray/app/third-party/misc/db5.3- uti_ .deb . DPKG -i xray/app/third-party/misc/db- uti_ .deb . DPKG
Debian 8
DPKG -i xray/app/third-party/misc/db5.3- uti_ .deb . DPKG -i xray/app/third-party/misc/db- uti_ .deb . DPKG
Debian 9
DPKG -i xray/app/third-party/misc/db5.3- uti_ .deb . DPKG -i xray/app/third-party/misc/db- uti_ .deb . DPKG

高级用户

手动安装Docker组件

  1. 提取压缩归档文件的内容并转到提取的文件夹。

    Tar -xvf jfrog-xray-- composer . Tar .gz

    .env文件包含在Docker-Compose归档文件中

    这个.env文件由docker-compose在安装和升级期间更新。

    请注意,有些操作系统默认情况下不显示点文件。如果您对文件做了任何更改,请记得在升级之前进行备份。

  2. 创建以下文件夹结构$ JFROG_HOME / x光

    |—[]app |—[]第三方|—[999 999]rabbitmq |—[1035 1035]var |—[1035 1035]data |—[1035 1035]等
  3. 将适当的docker-compose模板从templates文件夹复制到提取的文件夹中。将其重命名为docker-compose.yaml

    要求 模板
    x光 docker-compose.yaml
    RabbitMQ docker-compose-rabbitmq.yaml
    PostgreSQL

    docker-compose-postgres.yaml


    Mac版Docker

    当你在Mac中使用Docker Compose时,/etc/localtime可能不像预期的那样工作,因为它可能不是docker-for-mac设置中的共享位置。

    您可以从选定的文件中删除以下行docker-compose.yaml文件以避免安装问题。

    - /etc/localtime: / etc /作用:罗依
  4. 更新.env文件。

    Xray的安装目录。如果没有输入,脚本将提示您输入。默认[$ HOME /。jfrog/xray] ROOT_DATA_DIR= #主机ID。集群中的其他节点将使用此ID来标识该节点HOST_ID= #主节点的ID。对于主节点,请保留该值为“None”。(shared.rabbitMq.active.node.name)。JF_SHARED_RABBITMQ_ACTIVE_NODE_NAME=无#主节点IP。JF_THIRD_PARTY_BIND_IP=127.0.0.1 . (shared.rabbitMq.active.node.ip) JF_SHARED_RABBITMQ_ACTIVE_NODE_IP=127.0.0.1
  5. 定制产品配置
    1. 设置Artifactory连接详细信息。
    2. 自定义PostgreSQL数据库连接细节。(可选)
    3. 设置任何其他配置(例如:端口、节点id)x光system.yaml配置文件

      确保主机的ID和IP已添加到system.yaml.这对于确保其他产品和平台部署可以访问此实例非常重要hth华体会最新官方网站

    4. 输入RabbitMQ信息system.yaml.如果需要建立RabbitMQ HA集群,需要在所有从节点中输入相关信息。

      shared: rabbitMq: active: node: ip: < ip > name:  #从。env文件中输入HOST_ID的值为xray-master-node-id,从。env文件中输入JF_THIRD_PARTY_BIND_IP的值为ip。
  6. 自定义任何其他产品配置(可选)包括,Java选项和文件存储。

  7. 复制rabbitmq.conf和setRabbitCluster.sh文件到文件夹:应用程序/第三方/ rabbitmq
    确保两者都属于999:999 (rabbitmq uid/gid)

  8. 编辑rabbitmq.conf并输入以下信息。如果需要建立RabbitMQ HA集群,需要在所有从节点中输入相关信息。

    cluster_formation。Peer_discovery_backend = rabbit_peer_discovery_classic_config cluster_form .classic_config.nodes。1 = rabbit@#从。env文件中输入HOST_ID的值为xray-master-node-id。


  9. 使用docker-compose命令启动Xray和PostgreSQL。

    ##启动其他服务前需要先启动RabbitMQ。docker-compose -p xray-rabbitmq -f docker-compose- RabbitMQ从x射线3.8。在启动其他服务之前,需要先启动PostgreSQL。Docker-compose -p xray-postgres检查服务是否已启动
  10. 从浏览器访问Artifactory:http://SERVER_HOSTNAME/ui/.例如,在您的本地机器上:http://localhost/ui/

  11. 检查x射线日志。

    Docker -compose -p x射线日志

    配置控制台日志的日志轮换

    console.log文件可以快速增长,因为所有服务都写入它。安装脚本添加了一个cron作业来进行日志轮换console.log每小时归档一次。

    这是完成手动Docker Compose安装。了解更多关于如何配置日志轮换


观看视频

  • 没有标签
版权所有©2022 JFrog Ltd.