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


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

概述

许多客户使用x射线作为他们的决策工具,以确保他们的软件是安全和合规的。最新的Artifactory和Xray集成使Xray成为关键任务服务,因为每个工件下载都依赖于Xray的可用性。为了支持这种需求,可以将Xray配置为具有2个或更多active/active节点的高可用集群。

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

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

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

  • 确保弹性和敏捷性

  • active - active集群

  • 易于安装和维护

  • 无限数量的节点

最优弹性

当一个或多个节点不可用或因升级而停机时,负载由剩余节点共享,确保最佳的弹性和正常运行时间。

通过负载平衡改进性能

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

现在,您可以根据需要使用尽可能多的节点来扩展x射线环境。这通过负载平衡器在可用的集群节点上委派所有工作负载,从而增强了Xray的性能。


页面内容

总是同步

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

加强监控

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

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

简易HA安装

x射线可以让你很容易地安装全HA集群以分钟计算,或升级现有的x射线环境


体系结构

它由三层组成:负载平衡器、应用程序和公共资源。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;##服务器配置上游x射线{服务器IP_SERVER_1:8000;服务器IP_SERVER_2:8000;}服务器{监听443 ssl;听80;< your_server_name server_name >;如果($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的网站

应用程序层

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

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

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

分成三部分单位

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

Filestore

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

同步

关键数据和临时数据

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

缓存对象

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

安排工作

Xray使用RabbitMQ确保周期性作业只在集群中的单个节点上运行,而不是在所有节点上运行。作业和节点可能每次都发生变化,但是Xray会验证每个调度的作业只执行一次。


  • 没有标签