Add backupclient
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
---
|
||||
common_aliases:
|
||||
- "root: bofh@fet.at"
|
||||
common_hostname: False
|
||||
common_apt: False
|
||||
common_rsyslog: False
|
||||
common_resolvconf: False
|
||||
7
group_vars/backup
Normal file
7
group_vars/backup
Normal file
@@ -0,0 +1,7 @@
|
||||
backup:
|
||||
repositories:
|
||||
- path: "/srv/rep1"
|
||||
name: "Repository1"
|
||||
- path: "/srv/rep2"
|
||||
name: "Repository2"
|
||||
|
||||
1
host_vars/backup01
Normal file
1
host_vars/backup01
Normal file
@@ -0,0 +1 @@
|
||||
inventory_hostname_short: backup01
|
||||
@@ -1,2 +1,5 @@
|
||||
[backup]
|
||||
10.0.3.113
|
||||
|
||||
[backupclient]
|
||||
10.0.3.161
|
||||
|
||||
@@ -1,3 +1,21 @@
|
||||
---
|
||||
- name: install borg
|
||||
apt: name="borgbackup" state=present
|
||||
|
||||
- name: create repositories
|
||||
file:
|
||||
path: "{{item.path}}"
|
||||
state: directory
|
||||
with_items: "{{backup.repositories}}"
|
||||
|
||||
- name: init borg repositories
|
||||
command: "borg init {{item.path}} --encryption=none"
|
||||
args:
|
||||
creates: "{{item.path}}/README"
|
||||
with_items: "{{backup.repositories}}"
|
||||
|
||||
- name: create READMES
|
||||
template:
|
||||
src=borg_README.j2
|
||||
dest="{{item.path}}/README"
|
||||
with_items: "{{backup.repositories}}"
|
||||
|
||||
2
roles/backup/templates/borg_README.j2
Normal file
2
roles/backup/templates/borg_README.j2
Normal file
@@ -0,0 +1,2 @@
|
||||
This is a generate FET borg repository.
|
||||
Name: {{item.name}}
|
||||
2
roles/backupclient/defaults/main.yml
Normal file
2
roles/backupclient/defaults/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
backup_borg: True
|
||||
26
roles/backupclient/tasks/borg.yml
Normal file
26
roles/backupclient/tasks/borg.yml
Normal file
@@ -0,0 +1,26 @@
|
||||
---
|
||||
- name: install borg
|
||||
apt: name="borgbackup" state=present
|
||||
|
||||
- name: create backup user
|
||||
user:
|
||||
name: borg_backup
|
||||
comment: "BackupUser für BORG Backup"
|
||||
group: root
|
||||
generate_ssh_key: yes
|
||||
ssh_key_bits: 4096
|
||||
ssh_key_file: .ssh/id_rsa
|
||||
|
||||
- name: fetch pubickey
|
||||
shell: "cat /home/borg_backup/.ssh/id_rsa.pub"
|
||||
register: id_rsa_pub
|
||||
|
||||
- name: Add authorized key to borg backup servers
|
||||
authorized_key:
|
||||
user: "root"
|
||||
key: "{{id_rsa_pub.stdout}}"
|
||||
key_options: 'command="borg serve --restrict-to-path /srv/rep1"'
|
||||
delegate_to: "{{item}}"
|
||||
with_items: "{{groups['backup']}}"
|
||||
when: id_rsa_pub.stdout is defined
|
||||
|
||||
4
roles/backupclient/tasks/main.yml
Normal file
4
roles/backupclient/tasks/main.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
---
|
||||
- include: borg.yml
|
||||
when: backup_borg
|
||||
tags: ['backup', 'borg']
|
||||
@@ -1 +1 @@
|
||||
10.0.3.113
|
||||
10.0.3.161
|
||||
|
||||
Reference in New Issue
Block a user