🚀【新增成员】将 Backblaze B2 融入分布式存储集群:提升容量与可靠性!

# 教程更新日期 2024-12-17 最后更新: 去掉 GitHub 的 config.yml 文件,改为通过 API 在 Worker 里获取账户信息。好处是账户信息只需在一处设置即可。 # 视频教程 https://youtu.be/4X1FjLCAckI # 前言 前面的贴子 《全网首发!融合 R2、GitHub、GitLab 与 Cloudflare 的存储集群,实现自动备份、极速访问、无限扩展!远比图床方案实用》https://www.fscarmen.com/2024/11/oss.html 这次在原有 R2、GitHub 和 GitLab 的基础上,我的分布式文件存储集群迎来了新成员——Backblaze B2。通过将 B2 集成到集群中,存储系统的性能和灵活性得到进一步提升,尤其在大文件存储和数据冗余方面具备了更强的优势。 # 部署条件 - **Backblaze B2 账号**,https://www.backblaze.com - **R2 账号**,https://r2.mypikpak.com - **GitHub 账号**,https://github.com - **GitLab 账号**,https://gitlab.com - **Cloudflare 账号**,https://www.cloudflare.com - **安装 PicGo**,https://molunerfinn.com/PicGo # 流程及 PicGO 使用 ## Backblaze 注册 打开官方注册账户: https://www.backblaze.com/get-started ![](https://pic.forvps.gq/20241202212220469.webp) ![](https://pic.forvps.gq/20241202212713267.webp) ![](https://pic.forvps.gq/20241202230114384.webp) ![](https://pic.forvps.gq/20241202230129854.webp) ![](https://pic.forvps.gq/20241202212950370.webp) ![](https://pic.forvps.gq/20241202213126025.webp) ![](https://pic.forvps.gq/20241202213632504.webp) ![](https://pic.forvps.gq/20241202213240081.webp) ![](https://pic.forvps.gq/20241202213423670.webp) ![](https://pic.forvps.gq/20241202213536844.webp) ## PicGo S3 插件设置 文件路径 <自定义上传目录>/{fullName} 自定义输出URL模板 https://<自定义域名>/{fileName} ![](https://pic.forvps.gq/20241202214046747.webp) ![](https://pic.forvps.gq/20241214114229907.webp) ## Worker 重写 URL - 把项目仓库的 [cloudflare_worker/github_gitlab_s3.js](https://github.com/fscarmen2/pic-hosting-cluster/blob/main/cloudflare_worker/github_gitlab_s3.js) 复制到 worker 处,接在开头处根据前面记录的 B2, R2,GitHub 和 GitLab 账户信息填写。 ![](https://pic.forvps.gq/20241202214647672.webp) - 2024-12-17 更新需要设置两个同步策略的变量 ![](https://pic.forvps.gq/20241217122004212.webp) | 同步变量 | 可选值 | 说明 | | --------------- | ------------------------------------- | --------------------------------------------------------------------------------------------------------- | | strategy | [size (默认) \| quantity \| 指定节点] | size: 选择容量最少的仓库来存储文件; quantity: 选择文件最少的仓库来存储文件; 指定节点: 比如 pic1 或者 pic2 | | delete | [true (默认) \| false] | 已复制到 GitHub 的文件,是否从 R2 删除 | ## (2024-12-17更新需要处理的)在 Cloudflare 里建一个 API 用于读取 Worker 里的账户信息 https://dash.cloudflare.com/profile/api-tokens ![image](https://github.com/user-attachments/assets/a80e3083-3eac-42db-acfc-c8f08177870d) ![image](https://github.com/user-attachments/assets/9e49b29a-54ae-46f0-aeda-28d95f4a9041) ![image](https://github.com/user-attachments/assets/11dceb4b-ab2e-41a8-b8e4-7317bcf4b50f) ![image](https://github.com/user-attachments/assets/b1e6f1c3-3d8d-4ba3-8d98-35ab4f061b14) ![image](https://github.com/user-attachments/assets/81e66642-cd5c-43d3-bb72-7fecf24e16a3) ![image](https://github.com/user-attachments/assets/3c832e81-bfc6-480d-939c-1d0731a07c17) ## GitHub Action 定时同步任务 - 2024-12-17更新,使用项目模板创建同步库,替代原方案所有文件都要手动处理路径和内容,简化部署。 [点击使用模板创建同步库。S3 ---> GitHub, GitHub ---> GitLab 都在此](https://github.com/new?template_name=files-hosting-template-3&template_owner=fscarmen2) ![](https://pic.forvps.gq/20241217143559272.webp) ![](https://pic.forvps.gq/20241217143527204.webp) - 设置 GitHub Actions secrets 变量 根据前面获取的 ACCOUNT_ID, WORKER_NAME, API_TOKEN 设置 ![](https://pic.forvps.gq/20241217121357845.webp) ![](https://pic.forvps.gq/20241120235830.webp) ![](https://pic.forvps.gq/20241120235935.webp) ![](https://pic.forvps.gq/20241120233314.webp) ![](https://pic.forvps.gq/20241202221047458.webp) # 总结 Backblaze B2是一个可靠且成本效益高的云存储解决方案,以其强大的安全性和易用性著称。我们将把Backblaze B2集成到现有的存储集群中,作为额外的存储节点,进一步分散数据,增强整体系统的可靠性。
fscarmen

大家好!我是fscarmen,一个热爱科技和研究各种项目的爱好者。我喜欢分享我的发现和经验,希望能与大家一起探索和学习。

以下是我的一些项目分享平台:
https://github.com/fscarmen
https://gitlab.com/fscarmen
https://github.com/fscarmen2

此外,我还有一个YouTube频道,欢迎大家订阅和观看我的视频:
https://www.youtube.com/@fscarmen/videos

*

发表评论 (0)
后一页 前一页