diff --git a/playbooks/rear_restore.yml b/playbooks/rear_restore.yml index 5563dc4..1a03075 100644 --- a/playbooks/rear_restore.yml +++ b/playbooks/rear_restore.yml @@ -14,10 +14,10 @@ paths: - /var/tmp patterns: - - rear_restore* + - "rear_restore.{{ rear_backup_workflow }}*" register: rear_restore_file - - name: Check for previous restore and end host if already completed + - name: Check for ReaR restore when: - rear_restore_file['files'] | length > 0 block: @@ -25,8 +25,8 @@ ansible.builtin.debug: msg: "ReaR restore was already completed - {{ rear_restore_file['files'] | json_query('[].path') | string }}" - - name: End host for servers that already completed a ReaR restore - ansible.builtin.meta: end_host + # - name: End host for servers that already completed a ReaR restore + # ansible.builtin.meta: end_host - name: Check if configuration backup exists ansible.builtin.stat: @@ -56,10 +56,10 @@ remote_src: true mode: "0600" - - name: Rebuild ReaR initrd - ansible.builtin.command: - cmd: rear -d -v mkrescue - register: rear_initrd_cmd + # - name: Rebuild ReaR initrd + # ansible.builtin.command: + # cmd: rear -d -v mkrescue + # register: rear_initrd_cmd - name: Cleanup leftover artifacts ansible.builtin.file: @@ -71,7 +71,7 @@ - name: Create file for ReaR restore success ansible.builtin.file: - path: "/var/tmp/rear_restore.{{ ansible_date_time.iso8601_basic }}" + path: "/var/tmp/rear_restore.{{ rear_backup_workflow }}.{{ ansible_date_time.iso8601_basic }}" state: touch mode: "0664" diff --git a/playbooks/rear_vars.yml b/playbooks/rear_vars.yml index c8d4c1e..b8fca3c 100644 --- a/playbooks/rear_vars.yml +++ b/playbooks/rear_vars.yml @@ -12,7 +12,7 @@ - name: Debug rear_vars_nfs_share ansible.builtin.debug: - msg: "{{ rear_vars_nfs_share['standalone']['share'] }} -> {{ rear_vars_nfs_share['standalone']['fsid'] }}" + msg: "{{ rear_vars_nfs_base }}/{{ rear_backup_workflow }} ({{ rear_vars_nfs_share[rear_backup_workflow] }})" - name: Debug rear_vars_grub_label ansible.builtin.debug: diff --git a/roles/nfs_export/tasks/main.yml b/roles/nfs_export/tasks/main.yml index 4124c84..4a2ef44 100644 --- a/roles/nfs_export/tasks/main.yml +++ b/roles/nfs_export/tasks/main.yml @@ -1,27 +1,27 @@ --- - name: Ensure share directory exists ansible.builtin.file: - path: "{{ rear_vars_nfs_share[rear_backup_workflow]['share'] }}" + path: "{{ rear_vars_nfs_base }}/{{ rear_backup_workflow }}" state: directory mode: "0777" owner: root group: root # We should use Ansible to determine disk space, not command/shell: -- name: Debug mounts - ansible.builtin.debug: - var: ansible_facts['mounts'] +# - name: Debug mounts +# ansible.builtin.debug: +# var: ansible_facts['mounts'] - name: Check disk space on ReaR Backup filesystem for NFS servers ansible.builtin.shell: | set -o pipefail - df -BG {{ rear_vars_nfs_share[rear_backup_workflow]['share'] }} | tail -1 | awk '{print substr($4, 1, length($4)-1)}' + df -BG {{ rear_vars_nfs_base }}/{{ rear_backup_workflow }} | tail -1 | awk '{print substr($4, 1, length($4)-1)}' register: disk_space changed_when: false -- name: Debug disk_space - ansible.builtin.debug: - var: disk_space +# - name: Debug disk_space +# ansible.builtin.debug: +# var: disk_space - name: Fail job if less than 50GB space ansible.builtin.fail: @@ -38,12 +38,12 @@ ansible.builtin.lineinfile: path: /etc/exports state: present - line: "{{ rear_vars_nfs_share[rear_backup_workflow]['share'] }} {{ _options }}" + line: "{{ rear_vars_nfs_base }}/{{ rear_backup_workflow }} {{ _options }}" create: true mode: "0644" owner: root group: root loop: "{{ client_ips | list | flatten }}" vars: - _options: "{{ item }}(fsid={{ rear_vars_nfs_share[rear_backup_workflow]['fsid'] }},rw,sync,no_subtree_check,crossmnt)" + _options: "{{ item }}(fsid={{ rear_vars_nfs_fsid[rear_backup_workflow] }},rw,sync,no_subtree_check,crossmnt)" notify: Export share diff --git a/roles/rear_local_cfg/templates/local.conf.j2 b/roles/rear_local_cfg/templates/local.conf.j2 index 2397550..52c514d 100644 --- a/roles/rear_local_cfg/templates/local.conf.j2 +++ b/roles/rear_local_cfg/templates/local.conf.j2 @@ -3,9 +3,9 @@ ############################################## OUTPUT=ISO -OUTPUT_URL=nfs://{{ nfs_srv }}{{ rear_vars_nfs_share[rear_backup_workflow]['share'] }} +OUTPUT_URL=nfs://{{ nfs_srv }}{{ rear_vars_nfs_base }}/{{ rear_backup_workflow }} BACKUP=NETFS -BACKUP_URL=nfs://{{ nfs_srv }}{{ rear_vars_nfs_share[rear_backup_workflow]['share'] }} +BACKUP_URL=nfs://{{ nfs_srv }}{{ rear_vars_nfs_base }}/{{ rear_backup_workflow }} # SSH_ROOT_PASSWORD="bob" USE_STATIC_NETWORKING=yes CLONES_ALL_USERS_GROUPS=yes diff --git a/roles/rear_vars/defaults/main.yml b/roles/rear_vars/defaults/main.yml index 987ddac..b7f8b4d 100644 --- a/roles/rear_vars/defaults/main.yml +++ b/roles/rear_vars/defaults/main.yml @@ -14,35 +14,25 @@ rear_restore_tmpdir: /tmp/rear_restore # - rear_backup rear_backup_success_file_path: "/var/IPE/IPU/el7to8" +rear_vars_grub_label: 'Relax-and-Recover *** RESTORES RHEL7 ***' +rear_vars_grub_conf: /etc/grub.d/45_rear + # Used by: # - nfs_export -# - nfs_server_define # - rear_backup -# - rear_local-cfg +# - rear_local_cfg rear_vars_nfs_base: /backups -rear_vars_nfs_share: - standalone: - share: "{{ rear_vars_nfs_base }}/standalone" - fsid: 10 - bigboot: - share: "{{ rear_vars_nfs_base }}/bigboot" - fsid: 20 - rhel-os-upgrade: - share: "{{ rear_vars_nfs_base }}/rhel-os-upgrade" - fsid: 30 +rear_vars_nfs_fsid: + standalone: 10 + bigboot: 20 + rhel-os-upgrade: 30 # Used by: -# - rear_local-cfg +# - nfs_server_define rear_vars_nfs_np: - 10.10.42.180 - 10.10.42.228 rear_vars_nfs_prod: - 10.10.42.180 - - -# Used by: -# - rear_backup -rear_vars_grub_label: 'Relax-and-Recover *** RESTORES RHEL7 ***' -rear_vars_grub_conf: /etc/grub.d/45_rear