versity/versitygw

GitHub: versity/versitygw

Versity 网关是一个高性能 S3 转换网关,解决应用与存储系统间协议兼容与集成问题。

Stars: 1684 | Forks: 204

# Versity S3 网关:
高性能 S3 转换服务 Versity Software logo image. [![Apache V2 许可证](https://img.shields.io/badge/license-Apache%20V2-blue.svg)](https://github.com/versity/versitygw/blob/main/LICENSE) [![Go Report Card](https://goreportcard.com/badge/github.com/versity/versitygw)](https://goreportcard.com/report/github.com/versity/versitygw) [![Go 文档](https://pkg.go.dev/badge/github.com/versity/versitygw.svg)](https://pkg.go.dev/github.com/versity/versitygw) ### 二进制发行版 下载 [最新版本](https://github.com/versity/versitygw/releases) | Linux/amd64 | Linux/arm64 | MacOS/amd64 | MacOS/arm64 | BSD/amd64 | BSD/arm64 | |:-----------:|:-----------:|:-----------:|:-----------:|:---------:|:---------:| | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ### 使用场景 * 单命令将本地文件系统变为 S3 服务器! * 代理 S3 请求到 S3 存储 * 单命令简单部署 S3 服务器 * `posix` 协议兼容性允许通过 posix 或 S3 通用访问文件 * 简化新增存储系统支持接口 ### WebGUI 获取更多关于新的(可选)WebGUI 管理/浏览器的详细信息:[https://github.com/versity/versitygw/wiki/WebGUI](https://github.com/versity/versitygw/wiki/WebGUI) ![admin-explorer](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/f41c9e556e193142.png) ### 最新动态 查看最新维基文章:[https://github.com/versity/versitygw/wiki/Articles](https://github.com/versity/versitygw/wiki/Articles) ### 邮件列表 通过订阅 [versitygw 邮件列表](https://www.versity.com/products/versitygw#signup) 保持与最新网关公告同步。 ### 文档 查看项目 [文档](https://github.com/versity/versitygw/wiki) 维基。 ### 需要帮助? 在 [社区讨论](https://github.com/versity/versitygw/discussions) 中提问。
联系 [Versity 销售](https://www.versity.com/contact/) 讨论企业支持。 ### 概述 Versity 网关是一款用于在 AWS S3 对象命令与存储系统之间实现无缝内联转换的易用工具。Versity 网关弥合了依赖 S3 的应用程序与其他存储系统之间的差距,在提供卓越的可扩展性的同时,实现了更高的兼容性和集成能力。 该服务器将传入的 S3 API 请求翻译并转换为对后端服务的等效操作。通过利用此网关服务器,应用程序可以在 S3 兼容 API 上与已有的存储系统进行交互。此项目能够在利用现有基础设施投资的同时,无缝集成 S3 兼容系统,提供在管理数据存储方面的更高灵活性和兼容性。 Versity 网关专注于性能、简洁性和可扩展性。设计时考虑了模块化,便于未来扩展以支持更多后端存储系统。目前,Versity 网关支持任意通用 POSIX 文件后端存储、Versity 的开源 ScoutFS 文件系统、Azure Blob Storage 以及其他 S3 服务器。 网关完全无状态。多个 Versity 网关实例可以部署在集群中以提升整体吞吐量。Versity 网关的无状态架构允许任何网关处理任意请求,从而分发工作负载并提升性能。可以使用负载均衡器在网关集群间均匀分配请求以获得最佳性能。 S3 HTTP(S) 服务器和路由使用 [Fiber](https://gofiber.io) Web 框架实现。该框架专注于性能并积极开发。S3 API 兼容性在可能的情况下借助官方的 [aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) 以实现与 AWS S3 的最大服务兼容性。 ## 快速入门 查看 [快速入门](https://github.com/versity/versitygw/wiki/Quickstart) 文档。 ### 使用 posix 后端运行网关: ``` mkdir /tmp/vgw /tmp/vers ROOT_ACCESS_KEY="testuser" ROOT_SECRET_KEY="secret" ./versitygw --port :10000 --iam-dir /tmp/vgw posix --versioning-dir /tmp/vers /tmp/vgw ``` 这将在当前主机上启用一个 S3 服务器,监听 10000 端口并托管目录 `/tmp/vgw`,旧版本对象存储在 `/tmp/vers`。这两个目录可以在同一文件系统内。`--iam-dir` 选项启用用于测试的简单 JSON 平文件账户。 要获取使用输出,运行: ``` ./versitygw --help ``` 命令格式为 ``` versitygw [global options] command [command options] [arguments...] ``` [全局选项](https://github.com/versity/versitygw/wiki/Global-Options) 在后端类型之前指定,后端选项在后端类型之后指定。 ### 测试与生产准备 VersityGW **经过实战检验且生产就绪**。每个拉取请求必须通过我们的综合测试套件才能被审查或合并。所有代码审查均由人工参与完成。LLMs 可用于增强审查流程,但永远不是唯一的审查者或决策者。参见 [测试](https://github.com/versity/versitygw/wiki/Testing) 获取高级测试文档。 #### 全面测试覆盖 我们的多层次测试策略包括: - **Go 单元测试文件** - 广泛的单元测试,包含竞态检测和代码覆盖率分析,覆盖核心功能、边界情况和错误处理。 - **集成测试脚本** - 在多个后端(POSIX、S3、Azure)和配置下的真实场景测试。 - **功能/回归测试** - 端到端 SDK 测试,验证完整工作流,包括全流程操作、POSIX 特定行为和 IAM 功能,并针对已解决的问题补充回归测试。 - **静态分析** - 使用 [staticcheck](https://staticcheck.dev) 进行静态分析检查。 - **系统测试** - 使用行业标准的 S3 客户端进行协议级验证: - AWS CLI - 官方 AWS 命令行工具 - s3cmd - 流行的 S3 客户端 - MinIO mc - 现代 S3 兼容客户端 - 使用 curl 进行直接 REST API 请求/响应验证 - **安全测试** - 测试 HTTP 和 HTTPS 配置。使用 govulncheck 进行漏洞扫描,并定期更新依赖项(dependabot)。 - **兼容性测试** - 多个后端、版本控制场景、静态桶模式和多种认证方法。 ### 在 Docker 中运行网关 像使用原生二进制一样使用发布的镜像,传递 CLI 参数: ``` docker run --rm versity/versitygw:latest --version ``` 有关在 Docker 中运行的更多文档,请参见 [Docker](https://github.com/versity/versitygw/wiki/Docker)。 ### 在 Kubernetes 上运行 提供 Helm Chart 以在 Kubernetes 环境中轻松运行 Versity: ``` helm install versitygw oci://ghcr.io/versity/versitygw/charts/versitygw ``` 有关更多信息和配置参数,请参考 [Chart 的 README](./chart/README.md)。 #### Versity 为您提供对归档存储的清晰度和控制,因此您可以将更多资源分配给核心任务。 ### 联系方式 ![versity logo](https://www.versity.com/wp-content/uploads/2022/12/cropped-android-chrome-512x512-1-32x32.png) info@versity.com
+1 844 726 8826 ### @versitysoftware [![linkedin](https://github.com/versity/versitygw/blob/assets/assets/linkedin.jpg)](https://www.linkedin.com/company/versity/)   [![twitter](https://github.com/versity/versitygw/blob/assets/assets/twitter.jpg)](https://twitter.com/VersitySoftware)   [![facebook](https://github.com/versity/versitygw/blob/assets/assets/facebook.jpg)](https://www.facebook.com/versitysoftware)   [![instagram](https://github.com/versity/versitygw/blob/assets/assets/instagram.jpg)](https://www.instagram.com/versitysoftware/)  
标签:Apache V2许可, Bing搜索, BSD, EVTX分析, Go语言, POSIX兼容, S3代理, S3网关, S3翻译服务, WebGUI管理, 云存储, 单命令部署, 存储系统, 对象存储网关, 开源网关, 探索器, 数据挖掘, 文件系统转S3, 日志审计, 本地存储, 程序破解, 跨平台支持, 高性能S3