一个S3备份,动态加密。
spare的Python项目详细描述
说明
Seantis使用此工具创建存储在各种兼容S3上的备份 使用非常有限的s3命令子集的服务。
这是您需要知道的:
- 生产中不应使用备件!使用风险自负。
- bucket应该由spare独占管理,其他文件将被删除!
- 每个主机名对于每个备份路径都必须有一个单独的存储桶。
- 备用存储数据的一个副本。
- 文件使用LZMA压缩,并在客户端使用AES-SIV加密。
- 在上传过程中,spare仅限于一个内核和小于100mib的内存。
- 重复的文件只存储一次。
- 如果忘记密码,则无法还原文件。
- spare用于配置管理,cli是最小的。
- python 3.6.2+是必需的。
用法
要安装备用:
pip install spare
设置连接参数:
export SPARE_ENDPOINT=host export SPARE_ACCESS_KEY=access-key export SPARE_SECRET_KEY=secret-key
备份文件夹:
spare create --password my-password --bucket my-bucket --path /my-path
还原备份:
spare restore --password my-password --bucket my-bucket --path /my-path
验证备份(下载所有内容!):
spare verify --password my-password --bucket my-bucket --path /my-path
锁定
在备用运行期间,bucket被锁定,因此其他备用实例不知道 去触摸它。但是,当空闲崩溃时,锁可能会持续存在。
如果发生这种情况,请确保推送备份的主机 运行任何备用进程,然后使用unlock命令:
解锁备份(如果已锁定)
spare unlock –password my-password –bucket my-bucket
但是,如果您希望锁定备份以避免任何人更改它, 运行以下命令:
spare lock –password my-password –bucket my-bucket
运行测试
备用使用minio<;https://www.minio.io>;对真实对象运行测试 存储服务器。因此,第一次测试运行可能需要一点时间 完成,因为minio已下载并存储在pytest缓存目录中:
pip install -e '.[test]' py.test
许可证
Spare是根据麻省理工学院的许可证发布的
更改日志
0.4.0(2019-07-29)
改进了sigint/sigterm的处理。
现在在备份运行期间杀死备用磁盘应该是安全的。备用遗嘱 阻止,直到当前对象正确上载,但它不会尝试 完成快照。
上传的文件当然可能会被丢弃,但是bucket应该 解锁,上传的文件应全部上传,或不在 全部。 [资源]
0.3.0(2019-05-28)
- 添加锁定/解锁命令。 [资源]
0.2.6(2019-05-09)
- 再次修复了travis上失败的测试。 [资源]
0.2.5(2019-05-09)
- 修复travis上失败的测试。 [资源]
0.2.4(2019-05-09)
- 当文件在操作过程中丢失时停止显示错误。 [资源]
0.2.3(2018-06-20)
- 修复了创建后修剪的大型快照。 [资源]
0.2.2(2018-05-25)
- 修复测试。 [资源]
0.2.1(2018-05-25)
- 在备份和还原操作期间延迟SIGTERM处理。 [资源]
- 将“–force”更改为标志。 [资源]
0.2.0(2018-05-11)
- 将inode添加到快照标识以确保新安装的主机 不会覆盖现有备份。 [资源]
0.1.3(2018-05-10)
- 添加从备份中排除文件的功能。 [资源]
0.1.2(2018-05-10)
- 在还原操作期间提高下载速度。 [资源]
- 显示在还原期间找不到用户/组时的警告。 [资源]
- 降低超时和重试率。 [资源]
0.1.1(2018-05-04)
- 降低上载数据所需的请求数。 [资源]
0.1.0(2018-04-26)
- 初次发布。 [资源]