Solaris OS용 Sun Cluster 시스템 관리 안내서

클러스터 백업

표 9–1 작업 맵: 클러스터 파일 백업

작업  

참고 항목 

백업하려는 파일 시스템 이름 찾기 

백업할 파일 시스템 이름을 찾는 방법

전체 백업을 저장하기 위해 필요한 테이프 수 계산 

전체 백업에 필요한 테이프 수를 계산하는 방법

루트 파일 시스템 백업 

루트(/) 파일 시스템을 백업하는 방법

미러 또는 플렉스 파일 시스템에 대해 온라인 백업 수행 

미러를 온라인으로 백업하는 방법(Solstice DiskSuite/Solaris 볼륨 관리자)

SPARC: 볼륨을 온라인으로 백업하는 방법(VERITAS Volume Manager)

백업할 파일 시스템 이름을 찾는 방법

백업할 파일 시스템 이름을 확인하려면 다음 절차를 수행하십시오.

  1. /etc/vfstab 파일의 내용을 표시합니다.

    이 명령을 실행하기 위해 수퍼유저로 로그인할 필요는 없습니다.


    % more /etc/vfstab
    

  2. 백업하려는 파일 시스템의 이름을 마운트 지점 열에서 찾습니다.

    파일 시스템을 백업할 때 이 이름을 사용하십시오.


    % more /etc/vfstab 
    

예—백업할 파일 시스템 이름 찾기

다음은 /etc/vfstab 파일에 있는 사용 가능한 파일 시스템 이름을 표시한 예입니다.


% more /etc/vfstab
#device             device             mount  FS fsck  mount  mount
#to mount           to fsck            point  type     pass   at boot  options
#
#/dev/dsk/c1d0s2    /dev/rdsk/c1d0s2   /usr     ufs     1      yes      -
 f                  -                  /dev/fd  fd      -      no       -
 /proc              -                  /proc    proc    -      no       -
 /dev/dsk/c1t6d0s1  -                  -        swap    -      no       -
 /dev/dsk/c1t6d0s0  /dev/rdsk/c1t6d0s0 /        ufs     1      no       -
 /dev/dsk/c1t6d0s3  /dev/rdsk/c1t6d0s3 /cache   ufs     2      yes      -
 swap               -                  /tmp     tmpfs   -      yes      -

전체 백업에 필요한 테이프 수를 계산하는 방법

파일 시스템을 백업할 테이프 수를 계산하려면 다음 절차를 수행하십시오.

  1. 백업하려는 클러스터 노드에서 수퍼유저가 됩니다.

  2. 백업 크기를 바이트 단위로 계산합니다.


    # ufsdump S filesystem 
    

    S

    백업을 수행하는 데 필요한 용량을 계산하여 바이트 단위로 표시합니다.

    filesystem

    백업하려는 파일 시스템의 이름을 지정합니다.

  3. 필요한 테이프 수를 보려면 계산된 값을 테이프 용량으로 나눕니다.

예—필요한 테이프 수 계산

다음 예에 있는 파일 시스템 크기 905,881,620바이트는 4GB 테이프에 쉽게 들어갑니다(905,881,620 ÷ 4,000,000,000).


# ufsdump S /global/phys-schost-1
905881620

루트(/) 파일 시스템을 백업하는 방법

클러스터 노드의 루트(/) 파일 시스템을 백업하려면 다음 절차를 수행하십시오. 백업 절차를 수행하기 전에 클러스터가 문제 없이 실행되는지 확인하십시오.

  1. 백업하려는 클러스터 노드에서 수퍼유저가 됩니다.

  2. 백업할 노드에서 실행하는 데이터 서비스를 클러스터의 다른 노드로 전환합니다.


    # scswitch -z -D disk-device-group[,...] -h node[,...]
    

    -z

    전환을 수행합니다.

    -D disk-device-group

    전환될 디스크 장치 그룹의 이름입니다.

    -h node

    디스크 장치 그룹을 전환할 클러스터 노드의 이름을 지정합니다. 이 노드가 새 기본 노드가 됩니다.

  3. 노드를 종료합니다.


    # shutdown -g0 -y -i0
    

  4. 비클러스터 모드로 노드를 재부트합니다.

    • SPARC:


      ok boot -x
      

    • x86:


                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/
      sd@0,0:a
      Boot args:
      
      Type  b [file-name] [boot-flags] <ENTER> to boot with options
      or    i <ENTER>                          to enter boot interpreter
      or    <ENTER>                            to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -x
      

  5. 루트(/) 파일 시스템을 백업합니다.

    • 루트 디스크가 캡슐화되지 않은 경우에는 다음 명령을 사용합니다.


      # ufsdump 0ucf dump-device /
      

    • 루트 디스크가 캡슐화된 경우에는 다음 명령을 사용하십시오.


      # ufsdump 0ucf dump-device /dev/vx/rdsk/rootvol
      

    자세한 내용은 ufsdump(1M) 설명서 페이지를 참조하십시오.

  6. 클러스터 모드로 노드를 재부트합니다.


    # init 6
    

예—루트(/) 파일 시스템 백업

다음은 루트(/) 파일 시스템을 테이프 장치 /dev/rmt/0에 백업하는 예입니다.


# ufsdump 0ucf /dev/rmt/0 /
  DUMP: Writing 63 Kilobyte records
  DUMP: Date of this level 0 dump: Tue Apr 18 18:06:15 2000
  DUMP: Date of last level 0 dump: the epoch
  DUMP: Dumping /dev/rdsk/c0t0d0s0 (phys-schost-1:/) to /dev/rmt/0
  DUMP: Mapping (Pass I) [regular files]
  DUMP: Mapping (Pass II) [directories]
  DUMP: Estimated 859086 blocks (419.48MB).
  DUMP: Dumping (Pass III) [directories]
  DUMP: Dumping (Pass IV) [regular files]
  DUMP: 859066 blocks (419.47MB) on 1 volume at 2495 KB/sec
  DUMP: DUMP IS DONE
  DUMP: Level 0 dump on Tue Apr 18 18:06:15 2000

미러를 온라인으로 백업하는 방법(Solstice DiskSuite/Solaris 볼륨 관리자)

미러된 메타 장치는 마운트 해제하거나 전체 미러를 오프라인으로 전환하지 않고도 백업할 수 있습니다. 하위 미러 중 하나는 일시적으로 오프라인으로 전환하여 미러링을 제거해야 하지만 백업이 완료되면 바로 온라인으로 전환되어 동기화되므로 시스템이 중단되거나 데이터에 대한 사용자의 액세스를 거부하지 않습니다. 미러를 사용하여 온라인 백업을 수행하면 현재 작동하는 파일 시스템의 “스냅샷”이 백업됩니다.

lockfs 명령이 실행되기 직전에 프로그램에서 볼륨에 데이터를 쓰면 문제가 발생할 수 있습니다. 이 문제를 방지하려면, 이 노드에서 실행되는 모든 서비스를 일시적으로 중지하십시오. 또한, 백업 절차를 수행하기 전에 클러스터가 문제 없이 실행되는지 확인하십시오.

  1. 백업하려는 클러스터 노드에서 수퍼유저가 됩니다.

  2. metaset(1M) 명령을 사용하여 백업 볼륨에 대한 소유권이 있는 노드를 확인합니다.


    # metaset -s setname
    

    -s setname

    디스크 세트 이름을 지정합니다.

  3. lockfs(1M) 명령에 -w 옵션을 사용하여 파일 시스템에 쓰지 못하도록 잠급니다.


    # lockfs -w mountpoint 
    


    주 –

    UFS 파일 시스템이 미러에 있는 경우에만 파일 시스템을 잠가야 합니다. 예를 들어, 메타 장치가 데이터베이스 관리 소프트웨어 또는 기타 특정 응용 프로그램의 원시 장치로 설정된 경우 lockfs 명령을 사용할 필요가 없습니다. 그러나 공급업체에서 제공하는 유틸리티를 실행하여 버퍼를 비우고 액세스를 잠글 수도 있습니다.


  4. metastat(1M) 명령을 사용하여 하위 미러의 이름을 결정합니다.


    # metastat -s setname -p
    

    -p

    md.tab 파일과 유사한 형식으로 상태를 표시합니다.

  5. metadetach(1M) 명령을 사용하여 미러에서 하위 미러 하나를 오프라인으로 전환합니다.


    # metadetach -s setname mirror submirror
    


    주 –

    읽기 기능은 다른 하위 미러에서 계속 제공합니다. 그러나 미러에 첫 번째 쓰기 작업이 수행되면 그 때부터 오프라인 상태의 하위 미러에 대한 동기화가 수행되지 않습니다. 오프라인 상태의 하위 미러가 다시 온라인 상태로 전환되면 이러한 불일치 문제가 해결됩니다. fsck 명령은 실행하지 않아도 됩니다.


  6. lockfs 명령에 -u 옵션을 사용하여 파일 시스템 잠금을 해제하고 쓰기 기능을 계속 제공합니다.


    # lockfs -u mountpoint 
    

  7. 파일 시스템 검사를 수행합니다.


    # fsck /dev/md/diskset/rdsk/submirror
    

  8. 오프라인 상태의 하위 미러를 테이프나 다른 백업 매체에 백업합니다.

    ufsdump(1M) 명령이나 평소 사용하는 백업 유틸리티를 사용합니다.


    # ufsdump 0ucf dump-device submirror
    


    주 –

    하위 미러에 대해 블록 장치(/dsk) 이름이 아닌 원시 장치(/rdsk) 이름을 사용하십시오.


  9. metattach(1M) 명령을 사용하여 메타 장치 백업을 온라인으로 전환합니다.


    # metattach -s setname mirror submirror
    

    메타 장치가 온라인으로 전환되면 자동으로 다시 미러와 동기화됩니다.

  10. metastat 명령을 사용하여 하위 미러가 다시 동기화되는지 확인합니다.


    # metastat -s setname mirror
    

예—미러에 대한 온라인 백업 수행(Solstice DiskSuite/Solaris 볼륨 관리자)

다음 예에서 클러스터 노드 phys-schost-1이 메타 세트 schost-1을 소유하는 노드입니다. 따라서 phys-schost-1에서 백업 절차가 수행됩니다. 미러 /dev/md/schost-1/dsk/d0은 하위 미러 d10, d20d30으로 구성되어 있습니다.


[메타 세트의 소유권 확인]
# metaset -s schost-1
Set name = schost-1, Set number = 1
Host                Owner
  phys-schost-1     Yes 
...
[쓰지 못하도록 파일 시스템 잠금] 
# lockfs -w /global/schost-1
[하위 미러 나열]
# metastat -s schost-1 -p
schost-1/d0 -m schost-1/d10 schost-1/d20 schost-1/d30 1
schost-1/d10 1 1 d4s0
schost-1/d20 1 1 d6s0
schost-1/d30 1 1 d8s0
[하나의 하위 미러 오프라인화]
# metadetach -s schost-1 d0 d30
[파일 시스템 잠금 해제]
# lockfs -u /
[파일 시스템 검사]
# fsck /dev/md/schost-1/rdsk/d30
[해당 하위 미러를 백업 장치에 복사]
# ufsdump 0ucf /dev/rmt/0 /dev/md/schost-1/rdsk/d30
  DUMP: Writing 63 Kilobyte records
  DUMP: Date of this level 0 dump: Tue Apr 25 16:15:51 2000
  DUMP: Date of last level 0 dump: the epoch
  DUMP: Dumping /dev/md/schost-1/rdsk/d30 to /dev/rdsk/c1t9d0s0.
  ...
  DUMP: DUMP IS DONE
[해당 하위 미러를 다시 온라인화]
# metattach -s schost-1 d0 d30
schost-1/d0: submirror schost-1/d30 is attached
[해당 하위 미러를 다시 동기화]
# metastat -s schost-1 d0
schost-1/d0: Mirror
    Submirror 0: schost-0/d10
      State: Okay         
    Submirror 1: schost-0/d20
      State: Okay
    Submirror 2: schost-0/d30
      State: Resyncing
    Resync in progress: 42% done
    Pass: 1
    Read option: roundrobin (default)
...

SPARC: 볼륨을 온라인으로 백업하는 방법(VERITAS Volume Manager)

VERITAS Volume Manager는 미러된 볼륨을 플렉스로 식별합니다. 플렉스는 전체 볼륨을 마운트 해제하거나 오프라인으로 전환하지 않고 백업할 수 있습니다. 이 백업은 시스템을 중지시키거나 데이터에 대한 사용자의 액세스를 거부하지 않고 볼륨의 스냅샷 사본을 만들고 이 임시 볼륨을 백업하는 방법으로 수행합니다.

백업 절차를 수행하기 전에 클러스터가 문제 없이 실행되는지 확인하십시오.

  1. 클러스터의 노드에 로그온한 다음 클러스터에 있는 디스크 그룹의 현재 기본 노드에서 수퍼유저가 됩니다.

  2. 디스크 그룹 정보를 표시합니다.


    # vxprint -g diskgroup
    

  3. scstat(1M) 명령을 실행하여 현재 가져온 디스크 그룹이 어느 노드에 있는지 확인합니다. 이 노드가 디스크 그룹에 대한 기본 노드입니다.


     # scstat -D
    

    -D

    모든 디스크 장치 그룹의 상태를 표시합니다.

  4. vxassist 명령을 사용하여 볼륨에 대한 스냅샷을 만듭니다.


    # vxassist -g diskgroup snapstart volume
    


    주 –

    볼륨 크기에 따라 스냅샷을 만드는 시간이 오래 걸릴 수 있습니다.


  5. 새 볼륨이 만들어졌는지 확인합니다.


    # vxprint -g diskgroup
    

    스냅샷이 완성되면 선택한 디스크 그룹에 대한 State 필드에 Snapdone이라고 표시됩니다.

  6. 파일 시스템에 액세스하는 데이터 서비스를 중지시킵니다.


    # scswitch -z -g resource-group[,...] -h ““
    


    주 –

    데이터 파일 시스템이 제대로 백업되려면 모든 데이터 서비스를 중지시켜야 합니다. 실행 중인 데이터 서비스가 없다면 단계 6단계 8을 실행할 필요가 없습니다.


  7. bkup-vol이라는 이름으로 백업 볼륨을 만들고 vxassist 명령을 사용하여 스냅샷 볼륨을 이 볼륨에 연결합니다.


    # vxassist -g diskgroup snapshot volume bkup-vol
    

  8. scswitch(1M) 명령을 사용하여 단계 6에서 중단된 데이터 서비스를 다시 시작합니다.


    # scswitch -z -g resource-group[,...] -h node[,...]
    

  9. vxprint 명령을 사용하여 볼륨이 새 볼륨 bkup-vol에 연결되었는지 확인합니다.


    # vxprint -g diskgroup
    

  10. 디스크 그룹 구성의 변경 사항을 등록합니다.


    # scconf -c -D name=diskgroup,sync
    

  11. fsck 명령을 사용하여 백업 볼륨을 확인합니다.


    # fsck -y /dev/vx/rdsk/diskgroup/bkup-vol
    

  12. 테이프 또는 다른 매체에 볼륨 bkup-vol을 복사하는 백업을 수행합니다.

    ufsdump(1M) 명령이나 평소 사용하는 백업 유틸리티를 사용합니다.


    # ufsdump 0ucf dump-device /dev/vx/dsk/diskgroup/bkup-vol
    

  13. vxedit 명령을 사용하여 임시 볼륨을 제거합니다.


    # vxedit -rf rm bkup-vol
    

  14. scconf(1M) 명령을 사용하여 디스크 그룹 구성 변경 사항을 등록합니다.


    # scconf -c -D name=diskgroup,sync
    

SPARC: 예—볼륨에 대한 온라인 백업 수행(VERITAS Volume Manager)

다음 예에서 클러스터 노드 phys-schost-2는 메타 세트 디스크 그룹 schost-1의 기본 소유자이므로, 백업 절차가 phys-schost-2에서 수행됩니다. 볼륨 /vo101이 복사된 다음 새 볼륨 bkup-vol에 연결됩니다.


[기본 노드에서 수퍼유저가 됩니다.]
[디스크 그룹에 대한 현재 기본 노드 식별]
# scstat -D
-- Device Group Servers --
                         Device Group     Primary           Secondary
                         ------------     -------           ---------
 Device group servers:   rmt/1            -                 -
 Device group servers:   schost-1         phys-schost-2     phys-schost-1

-- Device Group Status --
                             Device Group        Status              
                             ------------        ------              
 Device group status:        rmt/1               Offline
 Device group status:        schost-1            Online
[디스크 그룹 정보 나열]
# vxprint -g schost-1
TY NAME            ASSOC     KSTATE   LENGTH   PLOFFS STATE   TUTIL0  PUTIL0
dg schost-1       schost-1   -        -        -      -        -      -
  
dm schost-101     c1t1d0s2   -        17678493 -      -        -      -
dm schost-102     c1t2d0s2   -        17678493 -      -        -      -
dm schost-103     c2t1d0s2   -        8378640  -      -        -      -
dm schost-104     c2t2d0s2   -        17678493 -      -        -      -
dm schost-105     c1t3d0s2   -        17678493 -      -        -      -
dm schost-106     c2t3d0s2   -        17678493 -      -        -      -
 
v  vol01          gen        ENABLED  204800   -      ACTIVE   -      -
pl vol01-01       vol01      ENABLED  208331   -      ACTIVE   -      -
sd schost-101-01  vol01-01   ENABLED  104139   0      -        -      -
sd schost-102-01  vol01-01   ENABLED  104139   0      -        -      -
pl vol01-02       vol01      ENABLED  208331   -      ACTIVE   -      -
sd schost-103-01  vol01-02   ENABLED  103680   0      -        -      -
sd schost-104-01  vol01-02   ENABLED  104139   0      -        -      -
pl vol01-03       vol01      ENABLED  LOGONLY  -      ACTIVE   -      -
sd schost-103-02  vol01-03   ENABLED  5        LOG    -        -      -
[스냅샷 작업 시작]
# vxassist -g schost-1 snapstart vol01
[새 볼륨이 만들어졌는지 확인]
# vxprint -g schost-1
TY NAME            ASSOC    KSTATE    LENGTH   PLOFFS STATE   TUTIL0  PUTIL0
dg schost-1       schost-1   -        -        -      -        -      -
  
dm schost-101     c1t1d0s2   -        17678493 -      -        -      -
dm schost-102     c1t2d0s2   -        17678493 -      -        -      -
dm schost-103     c2t1d0s2   -        8378640  -      -        -      -
dm schost-104     c2t2d0s2   -        17678493 -      -        -      -
dm schost-105     c1t3d0s2   -        17678493 -      -        -      -
dm schost-106     c2t3d0s2   -        17678493 -      -        -      -
  
v  vol01          gen        ENABLED  204800   -      ACTIVE   -      -
pl vol01-01       vol01      ENABLED  208331   -      ACTIVE   -      -
sd schost-101-01  vol01-01   ENABLED  104139   0      -        -      -
sd schost-102-01  vol01-01   ENABLED  104139   0      -        -      -
pl vol01-02       vol01      ENABLED  208331   -      ACTIVE   -      -
sd schost-103-01  vol01-02   ENABLED  103680   0      -        -      -
sd schost-104-01  vol01-02   ENABLED  104139   0      -        -      -
pl vol01-03       vol01      ENABLED  LOGONLY  -      ACTIVE   -      -
sd schost-103-02  vol01-03   ENABLED  5        LOG    -        -      -
pl vol01-04       vol01      ENABLED  208331   -      SNAPDONE -      -
sd schost-105-01  vol01-04   ENABLED  104139   0      -        -      -
sd schost-106-01  vol01-04   ENABLED  104139   0      -        -      -
[필요한 경우 데이터 서비스 중지]
# scswitch -z -g nfs-rg -h ““
[해당 볼륨의 복사본 만들기]
# vxassist -g schost-1 snapshot vol01 bkup-vol
[필요한 경우 데이터 서비스 다시 시작]
# scswitch -z -g nfs-rg -h phys-schost-1
[bkup-vol이 만들어졌는지 확인]
# vxprint -g schost-1
TY NAME           ASSOC       KSTATE   LENGTH   PLOFFS STATE   TUTIL0  PUTIL0
dg schost-1       schost-1    -        -        -      -        -      -
 
dm schost-101     c1t1d0s2    -        17678493 -      -        -      -
...
 
v  bkup-vol       gen         ENABLED  204800   -      ACTIVE   -      -
pl bkup-vol-01    bkup-vol    ENABLED  208331   -      ACTIVE   -      -
sd schost-105-01  bkup-vol-01 ENABLED  104139   0      -        -      -
sd schost-106-01  bkup-vol-01 ENABLED  104139   0      -        -      -
 
v  vol01          gen         ENABLED  204800   -      ACTIVE   -      -
pl vol01-01       vol01       ENABLED  208331   -      ACTIVE   -      -
sd schost-101-01  vol01-01    ENABLED  104139   0      -        -      -
sd schost-102-01  vol01-01    ENABLED  104139   0      -        -      -
pl vol01-02       vol01       ENABLED  208331   -      ACTIVE   -      -
sd schost-103-01  vol01-02    ENABLED  103680   0      -        -      -
sd schost-104-01  vol01-02    ENABLED  104139   0      -        -      -
pl vol01-03       vol01       ENABLED  LOGONLY  -      ACTIVE   -      -
sd schost-103-02  vol01-03    ENABLED  5        LOG    -        -      -
[클러스터 프레임워크를 사용하여 디스크 그룹 동기화]
# scconf -c -D name=schost-1,sync
[파일 시스템 검사]
# fsck -y /dev/vx/rdsk/schost-1/bkup-vol
[bkup-vol을 백업 장치에 복사]
# ufsdump 0ucf /dev/rmt/0 /dev/vx/rdsk/schost-1/bkup-vol
  DUMP: Writing 63 Kilobyte records
  DUMP: Date of this level 0 dump: Tue Apr 25 16:15:51 2000
  DUMP: Date of last level 0 dump: the epoch
  DUMP: Dumping /dev/vx/dsk/schost-2/bkup-vol to /dev/rmt/0.
  ...
  DUMP: DUMP IS DONE
[bkup-vol 제거]
# vxedit -rf rm bkup-vol
[디스크 그룹 동기화]
# scconf -c -D name=schost-1,sync