使用最新的JFrog产品?hth华体会最新官方网站
JFrog平台用户指南


跳到元数据的末尾
转到元数据开始

概述

当涉及到确保软件的安全性和兼容性时,许多客户使用Xray作为他们的决策工具。最新的Artifactory和Xray集成使Xray成为关键任务服务,因为每个工件的下载都依赖于Xray的可用性。为了支持这种需求,可以将Xray配置为由两个或更多的活动/活动节点组成的高可用集群。

Xray HA配置中的所有集群节点都是同步的,并共同共享和平衡它们之间的工作负载。当一个节点变得不可用时,集群将自动将工作负载分散到其他剩余的节点上。

方法支持在HA配置中设置多个服务器企业许可并为您的组织带来了一些好处。

Xray高可用性允许用户创建一个Xray实例集群,支持增强的Xray Artifactory集成。

  • 确保弹性和敏捷性

  • active - active集群

  • 易于安装和维护

  • 无限节点数量

最优弹性

如果一个或多个节点不可用或关闭以进行升级,负载将在其余节点之间共享,以确保最佳的弹性和正常运行时间。

通过负载平衡改进性能

Xray HA配置中的所有集群节点都是同步的,并使用负载均衡器共同共享和平衡它们之间的工作负载。这包括由Xray处理的所有请求。

现在,您可以根据需要使用任意数量的节点来扩展Xray环境。这通过负载均衡器将所有工作负载委派到可用的集群节点上,从而增强了Xray的性能。


页面内容

总是同步

Xray无缝地、即时地同步所有集群节点上的所有数据、配置、缓存对象和计划的作业更改。

加强监控

Xray的自我监视机制(它为您提供系统可用性问题)得到了增强,可以让您知道哪个节点受到了影响。

此外,Xray提供集群健康信息在一个名为“高可用性”的新页面中,显示每个节点和每个微服务的健康信息。

简单的哈设置

x光可以让你轻松安装全HA集群在几分钟内,或升级你现有的x射线环境


体系结构

它由3层组成:负载均衡器、应用程序和公共资源。2022世界杯阿根廷预选赛赛程

负载均衡器

负载均衡器是Xray HA集群的入口点,它可以优化地将请求分发到集群节点上的Xray微服务。它能够识别请求的类型,并根据每个节点上这种微服务类型的当前负载,将其添加到相应的微服务队列中。例如,当收到一个索引请求时,Xray将检查所有集群节点上索引微服务的负载,并将新请求放在挂起索引请求最少的队列中。

正确地管理和配置它是您的组织的责任。

下面的代码示例展示了负载均衡器配置的一个基本示例:

############################################################################################################ ############################################################################################################ # x光反向代理http和https + Nginx  ############################################################################################################ ssl_certificate /etc/nginx/certs/xray.cert;ssl_certificate_key /etc/nginx/certs/xray.key;ssl_session_cache共享:SSL: 1米;ssl_prefer_server_ciphers;##服务器配置上行xray{服务器IP_SERVER_1:8000;服务器IP_SERVER_2:8000;}服务器{监听443 ssl;听80;< your_server_name server_name >;If ($http_x_forwarded_proto = "){设置$http_x_forwarded_proto $scheme; } ## Application specific logs ## access_log /var/log/nginx/-access.log timing; ## error_log /var/log/nginx/-error.log; chunked_transfer_encoding on; client_max_body_size 0; location / { proxy_read_timeout 900; proxy_pass_header Server; proxy_cookie_path ~*^/.* /; proxy_pass http://xray; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; } }

更多详情可浏览nginx的网站

应用程序层

Xray HA表示由两个或多个共享公共资源的Xray节点组成的集群。2022世界杯阿根廷预选赛赛程每个集群节点运行所有4个x射线微服务:

  1. 索引器-负责索引过程,包括:
    • 递归地提取工件和构建
    • 从附带文件收集工件元数据
    • 构建工件组件图表示
  2. 坚持——职责包括
    • 将给定的组件图与公共组件信息进行匹配
    • 完成组件命名
    • 将数据存储在相关数据库中(PostgreSQL中的图数据和MongoDB中的组件元数据)
  3. 分析—负责丰富漏洞、license、版本等组件元数据。
  4. 服务器职责包括:
    • 通过将分析数据与监视和策略匹配来生成违规
    • 托管API和UI端点
    • 运行调度作业,如数据库同步进程

x光资源2022世界杯阿根廷预选赛赛程

分为三个单位

  1. 组件图数据库
    • Xray索引的每个工件和构建都被分解成多个组件。这些组件和彼此之间的关系在一个基于校验和的组件图中表示。
    • Xray使用PostgreSQL来存储和查询这个组件图。必须安装外部
    • 默认端口5432应该为集群中的每个节点和数据库服务器之间的通信打开。
  2. MongoDB:组件元数据和配置
    • Xray自带丰富的组件元数据数据库。该数据库使用数据库同步过程每天更新。
    • Xray使用MongoDB存储这个组件元数据数据库,以及所有Xray配置,如手表、策略和违规。必须安装外部
    • 默认端口27017应该为集群中的每个节点和数据库服务器之间的通信打开。
  3. 微服务通信和消息传递
    • Xray具有多个流,例如扫描、影响分析和数据库同步。这些流程需要由上面列出的不同的Xray服务完成处理。流包含由Xray服务完成的多个步骤。
    • Xray使用RabbitMQ来管理这些不同的流,并跟踪服务之间的同步和异步通信。
    • 默认端口5672应该为集群中的每个节点之间的通信开放。
    • RabbitMQ被安装为每个节点的Xray安装的一部分,在HA架构的情况下,RabbitMQ在不同的RabbitMQ节点之间使用队列镜像。

Filestore

Xray使用的存储不是普通的资源,只有节点特定的文件(如配置文件和临时文件)被保存到磁盘中。

同步

关键和临时数据

通过使用与公共资源相同的数据库,在集群节点之间共享关键数据。2022世界杯阿根廷预选赛赛程本地临时数据,例如正在处理的日志文件和工件,在它们的配置和数据文件夹中分别为每个节点保存。

缓存对象

Xray为各种对象实现缓存,包括权限、监视和构建。这些缓存通过RabbitMQ消息在每次更改时自动更新。更新后的节点将通过RabbitMQ向所有其他节点发送同步消息,以触发缓存重新加载。

安排工作

Xray使用RabbitMQ来确保周期作业只在集群中的一个节点上运行,而不是所有节点。作业和节点可能每次都改变,但是Xray验证每个计划作业只执行一次。


  • 没有标签