Simulation is ...

Virtual = Real

Flight Sim 자세히보기

> IT (Information Technology)

Linux, ReaR, OS Backup, Relax & Recovery

FlightSim 2023. 3. 9. 10:13
320x100

[Linux] 오픈 소스 Rear를 이용한 Linux OS Backup

0. 개요

- 리눅스에 Rear를 설치하여, OS Backup을 실행할 수 있으며 Local 뿐 아니라 NAS, CIFS 등 여러가지 네트워크 통신 프로토콜을 이용하여 백업 파일 생성 경로를 지정 가능
- 이 글에서는 NAS를 이용하여 OS 백업 파일을 생성하고, 복구하는 과정을 기술한다.

- 절차는 다음과 같다.

   1)NAS 서버(여기에선 Linux 사용) 구성

   2)백업할 Linux 서버에 Rear 오픈소스 설치

   3)백업 수행 (NAS 서버에 백업 데이터 저장)

   4)복원 수행 (NAS 서버 데이터를 불러온 후 부팅까지)

1. NAS 서버 구성

- 리눅스 서버 중 하나를 NAS 서버로 구성

   (1)수행 환경
      -OS: redhat-7.3
      -NAS 폴더 경로: /backup
      -NAS 서버 IP: 10.10.10.20

   (2)환경 설정
      #yum install nfs-utils
      #mkdir /backup
      #vi /etc/exports

/backup       *(fsid=0,rw,sync,no_root_squash,no_subtree_check,crossmnt)

- 위 내용 입력 후 저장

      #sudo systemctl restart nfs

2. OS 백업 수행

- OS 백업을 수행할 리눅스 서버에서 다음의 내용을 수행

   (1)수행 환경
      -OS: redhat-7.3
      -IP: 10.10.10.20

   (2)환경 설정
      #yum install rear syslinux genisoimage
      #sudo vi /etc/rear/local.conf

OUTPUT=ISO
BACKUP=NETFS
BACKUP_URL=nfs://10.10.10.21/backup

###특정 폴더를 제외시키기 위한 옵션 ###
BACKUP_PROG_EXCLUDE=( '/data/folder1/*' '/data/folder2/*' ) #여러 항목을 추가 가능
#######################################

###특정 File System을 제외시키기 위한 옵션 ###
EXCLUDE_MOUNTPOINTS=( "/test01" "/test02" )
EXCLUDE_COMPONENTS=( "fs:/test01" "fs:/test02" )
EXCLUDE_RECREATE=( "fs:/test01" "fs:/test02" )
# OS 복구 후 부팅 시 에러 발생 => mkfs, mount 과정 통해 fs를 재생성하거나, /etc/fstab에서 해당 fs를 제거해야 정상 부팅됨
##############################################

- 위 내용 입력 후 저장

   (3)OS 백업 실행
      #rear -d -v mkbackup

- 백업 파일 생성 확인(10.50.50.21 /backup에 파일 생성됨)

[Linux] ReaR 를 이용하여 OS Backup 구성

ReaR 란?

ReaR 또는 Relax & Recover는 마이그레이션 및 재해 복구 도구입니다.
ReaR는 실행중인 Linux 시스템에 대한 부팅 가능한 이미지를 생성하며 필요한 경우에는 백업된 이미지를 사용하여 시스템을 복구 할 수 있습니다.
백업된 이미지를 사용하여 OS를 다른 하드웨어로 복원 할 수도 있으므로 ReaR를 마이그레이션 도구로 사용할 수도 있습니다.

ReaR Backup 용 NFS 서버 구성

ReaR 로 Backup 되는 Boot ISO 및 Backup DATA 를 저장할 NFS 서버를 구성합니다.
(NAS 등 기타 네트워크 저장 공간이 있다면 활용이 가능합니다.)

$ yum install nfs-utils

$ mkdir /data
$ cat /etc/exports
/data         *(rw,sync,no_root_squash)

$ systemctl enable --now nfs-server
$ exports -v

NFS 서버 상세 구성은 아래 문서를 참고합니다.
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/storage_administration_guide/nfs-serverconfig

ReaR 설치

아래와 같이 설치를 진행합니다.

$ yum install rear

ReaR 설정

아래와 같이 /etc/rear/local.conf 파일을 수정합니다.

$ cat /etc/rear/local.conf 
# Default is to create Relax-and-Recover rescue media as ISO image
# set OUTPUT to change that
# set BACKUP to activate an automated (backup and) restore of your data
# Possible configuration values can be found in /usr/share/rear/conf/default.conf
#
# This file (local.conf) is intended for manual configuration. For configuration
# through packages and other automated means we recommend creating a new
# file named site.conf next to this file and to leave the local.conf as it is.
# Our packages will never ship with a site.conf.

OUTPUT=ISO
OUTPUT_URL=nfs://10.10.10.1/data
BACKUP=NETFS
BACKUP_URL=nfs://10.10.10.1/data

세부 내용 설명

  • OUTPUT : BOOT 용 ISO 이미지 생성
  • OUTPUT_URL : 생성된 BOOT ISO 이미지 저장 위치
  • BACKUP : BACKUP DATA 를 저장 방식을 지정합니다. (NETFS 는 Network Filesystem 을 말합니다. 즉, NFS)
  • BACKUP_URL : BACKUP DATA 가 저장될 NFS 정보를 입력합니다.추가 OPTION 은 아래 문서 참고 합니다.
    https://github.com/rear/rear/blob/master/doc/user-guide/03-configuration.adoc

BACKUP 진행

아래와 같이 명령을 통해 BACKUP 을 수행합니다.

$ rear -d -v mkbackup

복구 방법

저장된 ISO 를 이용하여 CD BOOT 진행합니다.

CD BOOT 이 완료가 되면 위와 같이 복구를 위한 prompt 가 BOOT 됩니다.

(OPTION) 네트워크가 STATIC 환경이라면 위와 같이 IP 를 설정합니다.

$ rear -v recover 명령을 통해 위와 같이 복구를 수행합니다.


복구가 완료되고 재부팅을 하면 복구된 서버에 접근이 가능합니다.

참고 문서

 

What is Relax and Recover(ReaR) and how can I use it for disaster recovery? - Red Hat Customer Portal

Red Hat Enterprise Linux now contains Relax and Recover(ReaR) which can be used for image based backups. What is it? Any example for using this backup utility?

access.redhat.com

 

[RHEL7] Rear를 통한 backup 및 restore

Rear는 (Relax & Recover)는 오픈소스로  Linux 시스템에 대한 부팅 가능한 이미지를 생성하며 필요한 경우에는 백업된 이미지를 사용하여 시스템을 복구 할 수 있다.
백업된 이미지를 사용하여 OS를 다른 하드웨어로 복원 할 수도 있어 ReaR를 마이그레이션 도구로 사용할 수도 있다.

아래 방법은 boot mode : BIOS (legacy)인 OpenStack DPDK 노드를 가지고 시험하였다.

1. ReaR Backup 용 NFS 서버 구성

Backup 되는 Boot ISO 및 Backup DATA 를 저장할 NFS 서버를 구성한다.

[root@rhosp-tb0-kvm ~]#yum install -y nfs-server

[root@rhosp-tb0-kvm ~]#mkdir rear

[root@rhosp-tb0-kvm ~]#vi /etc/exports
/root/rear *(rw,sync,no_root_squash,no_subtree_check)

[root@rhosp-tb0-kvm ~]#systemctl restart nfs-server

[root@rhosp-tb0-kvm ~]#systemctl stop firewalld && systemctl disable firewalld

 

 

2. ReaR 설치

백업할 Linux 대상 시스템에 Rear 및 관련 소프트웨어를 설치한다.

[root@rhosp-dpdk-comp-1 ~]# yum install -y rear syslinux genisoimage nfs-utils

[root@rhosp-dpdk-comp-1 ~]# vi /etc/rear/local.conf

OUTPUT=ISO
OUTPUT_URL=nfs://10.10.10.4/root/rear              <- 10.10.10.4 Rear 서버 (NFS-Server IP)
BACKUP=NETFS
BACKUP_URL=nfs://10.10.10.4/root/rear

 

 

2.1 그 외 옵션

## Boot Mode가 UEFI일 때 (아직 테스트는 못해봄)
USING_UEFI_BOOTLOADER=1

## 기존 파일 유지 여부
NETFS_KEEP_OLD_BACKUP_COPY=y

## 특정 폴더 제외
BACKUP_PROG_EXCLUDE=( '/data/folder1/*' '/data/folder2/*' )


## 특정 파일 시스템 제외
EXCLUDE_MOUNTPOINTS=( "/test01" "/test02" )
EXCLUDE_COMPONENTS=( "fs:/test01" "fs:/test02" )
EXCLUDE_RECREATE=( "fs:/test01" "fs:/test02" )

OS 복구 후 부팅 시 에러 발생 => mkfs, mount 과정 통해 fs를 재생성하거나, /etc/fstab에서 해당 fs를 제거해야 정상 부팅됨

 

 

3. Backup 진행

backup을 수행한다.

[root@rhosp-dpdk-comp-1 ~]# rear -d -v mkbackup

 

 

4. Backup 확인

정상적으로 데이터 백업 및 부팅 ISO 파일이 생성되었는지 Rear Server (NFS-server) 에서 확인한다.

백업 경로는 /root/rear 로 설정하였기 때문에 해당경로에서 확인한다.

[root@rhosp-tb0-kvm rhosp-dpdk-comp-1]#pwd
/root/rear/rhosp-dpdk-comp-1

[root@rhosp-tb0-kvm rhosp-dpdk-comp-1]#ls
README  VERSION  backup.log  backup.tar.gz  rear-rhosp-dpdk-comp-1.iso  rear-rhosp-dpdk-comp-1.log  selinux.autorelabel

 

 

5. Restore (복구)  방법

아래 그림은 Dell 서버에서 복구하는 방법이다.

/root/rear/rhosp-dpdk-comp-1에 존재하는 ISO를 다운받은 후 iLO에 접속하여 Virtual Media에 ISO를 Mapping 시킨다.

ISO Image File 연결

 

Virtual CD/DVD로 부팅 후 "Recover rhso-dpdk-comp-1" 선택한다.

CD BOOT 화면

 

CD BOOT 이 완료가 되면 위와 같이 복구를 위한 prompt 가 BOOT 된다.

Boot Prompt

 

rear -d -v recover 명령을 통해 복구를 시도한다.

해당 명령을 실행하면, NFS를 통해 백업 데이터를 가져간다. (tcpdump를 통해 확인이 가능하다.)

복구 실행

 

복구 수행 완료 후 확인해보면 /mnt/local 경로에 임시로 마운트 하여 복구를 수행하는 것을 확인할 수 있다.

df -h 조회시 /mnt/local 마운트

 

reboot 수행을 한다.

reboot

 

6. OpenStack 서비스 확인

openstack server list

(overcloud) [stack@rhosp-tb0-director ~]$openstack server list
+--------------------------------------+----------------+--------+---------------------------+---------+-------------------+
| ID                                   | Name           | Status | Networks                  | Image   | Flavor            |
+--------------------------------------+----------------+--------+---------------------------+---------+-------------------+
| 0a46c677-5077-487e-8031-25ea88efe3be | dpdk-numa1-vm1 | ACTIVE | Dpdk-Net=88.88.88.10      | rhel7.6 | dpdk-numa1-flavor |
| 511ce27b-744b-4f50-bad4-eb21f5918960 | dpdk-vm1       | ACTIVE | Dpdk-Net=88.88.88.5       | rhel7.6 | dpdk-flavor       |
| c3e3f498-36d0-407d-bc57-25ec353d4309 | TestVM2        | ACTIVE | Public-Net=100.100.100.23 | rhel7.6 | normal-flavor     |
| 58d64c7d-6137-436e-9edd-051dba72cff7 | TestVM1        | ACTIVE | Public-Net=100.100.100.21 | rhel7.6 | normal-flavor     |
+--------------------------------------+----------------+--------+---------------------------+---------+-------------------+

 

VM 접속 및 핑 테스트

[root@rhosp-dpdk-comp-1 ~]# virsh list
 Id    이름                         상태
----------------------------------------------------
 1     instance-0000008a              실행중
 2     instance-0000008d              실행중
 
 
 [root@rhosp-dpdk-comp-1 ~]# virsh console 1
도메인 instance-0000008a에 연결되었습니다
Escape character is ^]

[root@dpdk-vm1 ~]# ping 88.88.88.10
PING 88.88.88.10 (88.88.88.10) 56(84) bytes of data.
64 bytes from 88.88.88.10: icmp_seq=1 ttl=64 time=0.394 ms

 

Relax-and-Recover-Linux 시스템 백업 및 복구

Relax-and-Recover (ReaR 간단히 말해서)는 Bash로 작성된 간단하면서도 강력하고 설치가 쉬운 모든 기능을 갖춘 최고의 오픈 소스 베어 메탈 재해 복구 및 시스템 마이그레이션 솔루션입니다. 일반적인 상황에서 즉시 사용할 수있는 수많은 워크 플로가 포함 된 구성 가능한 모듈 식 프레임 워크입니다.

ReaR은 부팅 가능한 복구 시스템 및/또는 다양한 형식의 시스템 백업을 생성합니다. 복구 시스템 이미지를 사용하여 베어 메탈 서버를 부팅하고 백업에서 시스템 복원을 시작할 수 있습니다. 필요한 경우 다른 하드웨어로 복원 할 수 있으므로 시스템 마이그레이션 도구로도 사용할 수 있습니다.

  1. It has a modular design written in Bash and can be extended using custom functionality.
  2. Supports various boot media including ISO, PXE, OBDR tape, USB or eSATA storage.
  3. Supports a variety of network protocols including FTP, SFTP, HTTP, NFS, and CIFS for storage and backup.
  4. Supports disk layout implementation such as LVM, DRBD, iSCSI, HWRAID (HP SmartArray), SWRAID, multipathing, and LUKS (encrypted partitions and filesystems).
  5. Supports both third-party and internal backup tools including IBM TSM, HP DataProtector, Symantec NetBackup, Bacula; tar and rsync.
  6. Supports booting via PXE, DVD/CD, bootable tape or virtual provisioning.
  7. Supports a simulation model that shows what scripts are run without executing them.
  8. Supports consistent logging and advanced debugging options for troubleshooting purposes.
  9. It can be integrated with monitoring tools such as Nagios and Opsview.
  10. It can also be integrated with job schedulers such as cron.
  11. It also supports various virtualization technologies supported (KVM, Xen, VMware).

이 기사에서는 USB 스틱을 사용하여 복구 시스템 및/또는 시스템 백업을 생성하고 재해 발생 후 베어 메탈 Linux 시스템을 복구 또는 복구하도록 ReaR을 설치 및 구성하는 방법을 배웁니다.

1 단계 : Linux Bare Metal Server에 ReaR 설치

1. Debian 및 Ubuntu Linux 배포에 rear 패키지를 설치하려면 다음 명령을 사용합니다.

$ sudo apt-get install rear extlinux

RHEL 및 CentOS에서는 EPEL 8 리포지토리를 활성화 한 다음 표시된대로 후면 패키지를 설치해야합니다.

# yum install rear syslinux-extlinux grub2-efi-x64-modules
# dnf install rear syslinux-extlinux	#Fedora 22+
 

2. 설치가 완료되면 후면의 기본 구성 디렉토리는 /etc/rear/이고 주요 구성 파일은 다음과 같습니다.

  • /etc/rear/local.conf – used to set system-specific configuration; it’s intended for manual configuration.
  • /etc/rear/site.conf – used to set site-specific configuration, should be created by the user.
  • /usr/share/rear/conf/default.conf – contains possible/default configuration values.
  • /var/log/rear/ – this directory stores the log files.

3. 먼저 다음과 같이 후면 명령 줄 유틸리티를 사용하여 포맷하여 복구 미디어 (이 경우 USB 스틱)를 준비합니다. "포맷이 완료되면 미디어에 REAR-000으로 레이블이 지정됩니다.

# rear format /dev/sdb

4. 출력 형식을 구성하려면 OUTPUT 및 OUTPUT_URL 변수를 사용하고 /etc/rear/local.conf 구성 파일에 입력합니다.

OUTPUT=USB

4. 또한 ReaR에는 복구 시스템과 전체 시스템 백업을 모두 생성 할 수있는 내장 백업 방법 (NETFS라고 함)이 있습니다. 기본적으로 tar 아카이브로 간단한 백업을 생성합니다.

전체 시스템 백업을 활성화하려면 /etc/rear/local.conf 구성 파일에 BACKUP = NETFS 및 BACKUP_URL 변수를 추가하십시오. 부팅 가능한 USB 장치를 만들려면 그림과 같이 OUTPUT = USB 및 BACKUP_URL =”usb : /// dev/disk/by-label/REAR-000”을 결합합니다.

OUTPUT=USB
BACKUP=NETFS
BACKUP_URL=”usb:///dev/disk/by-label/REAR-000”

5. 후면을 구성한 후 다음 명령을 실행하여 BACKUP 및 OUTPUT 방법에 대한 현재 구성과 일부 시스템 정보를 인쇄합니다.

# rear dump

2 단계 : 복구 시스템 및 전체 시스템 백업 생성

6. 모든 설정이 정상이면 다음과 같이 mkrecue 명령을 사용하여 복구 시스템을 만들 수 있습니다. 여기서 -v 옵션은 상세 모드를 활성화합니다.

# rear -v  mkrescue

참고 :이 스크린 샷에 표시된대로 복구 또는 백업 작업을 실행 한 후 다음 오류가 발생하는 경우.

UEFI systems: “ERROR: /dev/disk/by-label/REAR-EFI is not block device. Use `rear format -- --efi ' for correct format” 

이 명령을 사용하여 USB 스틱을 포맷하고 작업을 다시 실행하십시오.

# rear format  -- --efi /dev/sdb

7. 복구 시스템을 생성하고 시스템도 백업하려면 표시된대로 mkbackup 명령을 사용합니다.

# rear -v mkbackup
 

8. 전체 시스템 백업 만 생성하려면 다음과 같이 mkbackuponly 명령을 사용합니다.

# rear -v mkbackuponly

선택 사항 : Cron을 사용하여 후방 작업 예약

8./etc/crontab 파일에 적절한 항목을 추가하여 cron 작업 스케줄러를 사용하여 ReaR이 정기적으로 복구 시스템을 생성하도록 예약 할 수 있습니다.

minute hour day_of_month month day_of_week root /usr/sbin/rear mkrescue

다음 구성은 복구 시스템을 생성하거나 매일 자정에 전체 시스템 백업을 수행합니다. USB 스틱이 연결되어 있는지 확인하십시오.

0 		0   		*  		* 		root /usr/sbin/rear mkrescue
OR
0 		0   		*  		* 		root /usr/sbin/rear mkbackup

3 단계 : 시스템 복구 / 복원 수행

9. 재해 발생 후 시스템을 복원/복구하려면 부팅 가능한 USB 스틱을 베어 메탈 시스템에 연결하고 부팅하십시오. 콘솔 인터페이스에서 옵션 1 (호스트 이름 복구)을 선택하고 Enter를 클릭하십시오.

10. 다음으로 ReaR 복구 시스템이 구성되고 스크린 샷에 표시된대로 원래 네트워크 인터페이스를 대체하라는 메시지가 표시 될 수 있습니다. 완료되면 Enter를 클릭하십시오.

11. 그런 다음 root로 로그인 (사용자 이름 root를 입력하고 Enter를 클릭)하여 실제 복구를 실행합니다.

11. 다음으로 다음 명령을 실행하여 복구 프로세스를 시작합니다. 복구 시스템은 디스크를 비교하고 구성을 검토 한 후 디스크 레이아웃 구성을 선택하라는 메시지를 표시합니다. 자동 디스크 구성을 계속하려면 Enter를 누르십시오.

그런 다음 시스템 레이아웃 복원을 시작하고 디스크 레이아웃이 생성되면 다음 스크린 샷과 같이 백업을 복원합니다.

# rear recover

12. 백업 복원이 완료되면 복구 시스템이 mkinitrd를 실행하여 모듈을 미리로드하기위한 초기 램 디스크 이미지를 만든 다음 부트 로더를 설치하고 종료합니다. 시스템 복구가 완료되면 복원 된 시스템이 /mnt/local/ 아래에 마운트되고이 디렉토리로 이동하여 검사합니다.

마지막으로 시스템을 재부팅합니다.

# cd /mnt/local
# rebooot

13. 재부팅 후 SELinux는 다음 스크린 샷과 같이 /mnt/local/.autorelabel 파일을 기반으로 복구 된 시스템의 파일 및 파일 시스템에 레이블을 다시 지정하려고합니다.

더 많은 사용 옵션은 ReaR 매뉴얼 페이지를 참조하십시오.

# man rear

ReaR 홈페이지 : http://relax-and-recover.org/

 

Relax-and-Recover - Linux Disaster Recovery

Relax-and-Recover is a setup-and-forget Linux bare metal disaster recovery solution. It is easy to set up and requires no maintenance so there is no excuse for not using it. Learn more about Relax-and-Recover from the selected usage scenarios below: Or wat

relax-and-recover.org

 

Red Hat Training

A Red Hat training course is available for RHEL 8

9장. 시스템 복구 및 복원

기존 백업을 사용하여 시스템을 복구하고 복원하기 위해 Red Hat Enterprise Linux는 Relax-and- recovery(ReaR) 유틸리티를 제공합니다.

유틸리티를 재해 복구 솔루션 및 시스템 마이그레이션에도 사용할 수 있습니다.

유틸리티를 사용하면 다음 작업을 수행할 수 있습니다.

  • 이미지를 사용하여 부팅 가능한 이미지를 생성하고 기존 백업에서 시스템을 복원합니다.
  • 원래 스토리지 레이아웃을 복제합니다.
  • 사용자 및 시스템 파일을 복원합니다.
  • 시스템을 다른 하드웨어로 복원합니다.

또한 재해 복구의 경우 특정 백업 소프트웨어를 ReaR과 통합할 수도 있습니다.

ReaR 설정에는 다음과 같은 고급 단계가 포함됩니다.

  1. ReaR 설치.
  2. ReaR 구성 파일을 수정하여 백업 방법 세부 정보를 추가합니다.
  3. 복구 시스템 생성.
  4. 백업 파일을 생성합니다.

9.1. ReaR 설정

다음 단계에 따라 Relax-and-Recover(ReaR) 유틸리티를 사용하는 패키지를 설치하고 복구 시스템을 생성하고 백업을 구성 및 생성합니다.

사전 요구 사항

  • 백업 복원 계획에 따라 필요한 구성이 준비됩니다.
  • ReaR과 함께 완전히 통합된 기본 제공 방법인 NETFS 백업 방법을 사용할 수 있습니다.

절차

  1. 다음 명령을 실행하여 ReaR 유틸리티를 설치합니다.
    # yum install rear
  2. 선택한 편집기에서 ReaR 구성 파일을 수정합니다. 예를 들면 다음과 같습니다.
    # vi /etc/rear/local.conf
  3. /etc/rear/local.conf 에 백업 설정 세부 정보를 추가합니다. 예를 들어 NETFS 백업 방법의 경우 다음 행을 추가합니다.backup.location 을 백업 위치의 URL로 바꿉니다.
    BACKUP=NETFS
    BACKUP_URL=backup.location
  4. 새 파일이 생성될 때 이전 백업 아카이브를 유지하도록 ReaR을 구성하려면 구성 파일에 다음 행도 추가합니다.
    NETFS_KEEP_OLD_BACKUP_COPY=y
  5. 백업을 점진적으로 만들려면 각 실행에서 변경된 파일만 백업하려면 다음 행을 추가합니다.
    BACKUP_TYPE=incremental
  6. 복구 시스템을 생성합니다.
    # rear mkrescue
  7. 복원 계획에 따라 백업을 수행합니다. 예를 들어 NETFS 백업 방법의 경우 다음 명령을 실행합니다.
    # rear mkbackup
  8. 또는 다음 명령을 실행하여 단일 단계에서 복구 시스템 및 백업을 생성할 수 있습니다.
    # rear mkbackuponly

이 명령은 rear mkrescue 및 rear mk backuponly 명령의 기능을 결합합니다

github

https://github.com/rear/rear

320x100
반응형

'> IT (Information Technology)' 카테고리의 다른 글

인피니밴드, Infiniband  (0) 2023.03.10
FC, iSCSI, FCIP, FCoE  (0) 2023.03.09
미들웨어, middleware, WAS  (0) 2023.03.09
vSphere 업그레이드 관련 호환성 검사 가이드  (0) 2022.05.14
SChannel, 36887, 36871  (0) 2022.02.15