coaxial.backup

构建状态

备份角色

此 Ansible 角色将安装和配置 tarsnap 和 tarsnapper,以便定期进行加密备份。

这些备份存储在 tarsnap 上,该服务使用 Amazom S3。

了解更多关于 Tarsnap,真正偏执者的在线备份

要求

  • 拥有一个带资金的 tarsnap 账户
  • 此角色仅在 Ubuntu 16.04 上进行测试(如果有兴趣,我会扩展到其他平台,请通过开一个问题来告诉我)
  • 在你的 playbook 中需要有 tarsnapper 配置文件,路径为 templates/tarsnapper.yml.j2如何编写 tarsnapper 配置文件
  • 在你的 playbook 中需要有 tarsnap 配置文件,路径为 templates/tarsnap.conf.j2如何编写 tarsnap 配置文件

角色变量

变量 默认值 说明
backup__rebuild_cache false 将跳过 tarsnap --fsck
backup__tarsnap_cachedir /usr/local/tarsnap-cache 设置 tarsnap 缓存备份的目录(参考 tarsnap.conf 手册
backup__tarsnap_keyfile /root/tarsnap.key 设置 tarsnap 密钥保存的路径
backup__tarsnap_apt_key 40B98B68F04DE775 用于签名 tarsnap 包的密钥 ID
backup__tarsnap_username [email protected] tarsnap.com 的用户名(只有在需要生成新 tarsnap 密钥时需要)
backup__tarsnap_password encrypt me tarsnap.com 的密码(只有在需要生成新 tarsnap 密钥时需要)
backup__tarsnapper_config_file /etc/tarsnapper.yml 设置 tarsnapper 作业配置在目标主机保存的路径
backup__tarsnapper_log_file /var/log/tarsnapper.log 设置 cron 作业日志保存的路径
backup__cron_{minute,hour,dom,month,dow} 分别为:28, 3, *, *, * 运行 tarsnap 进行备份的时间间隔

注意事项

如果在 files/{{ ansible_hostname }}.yml 找不到 tarsnap 密钥文件,将使用 backup__tarsnap_usernamebackup__tarsnap_password 变量生成一个新的 Tarsnap 密钥,并注册新机器为 {{ ansible_host }}

如果在 files/{{ ansible_hostname }}.yml 找到 tarsnap 密钥,则将使用该密钥,不会生成新密钥或注册新机器。

如果“添加 tarsnap apt 密钥”任务失败,表示包的密钥已更改,但我尚未更新角色。请检查当前密钥是什么,访问 https://www.tarsnap.com/pkg-deb.html,然后用 backup__tarsnap_apt_key 变量覆盖其值,并开一个问题让我更新角色中的新密钥。

依赖项

无。

示例 Playbook

- hosts: all
  roles:
    - role: coaxial.backup

许可证

MIT

作者信息

Coaxial <64b.it>

关于项目

Automated, encrypted, online backups using tarsnap

安装
ansible-galaxy install coaxial.backup
许可证
Unknown
下载
300
拥有者