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

ProcedureSolstice DiskSuite 메타 장치 또는 Solaris 볼륨 관리자 볼륨에 있던 루트(/) 파일 시스템을 복원하는 방법

백업을 수행할 때 Solstice DiskSuite 메타 장치 또는 Solaris 볼륨 관리자 볼륨에 있던 루트(/) 파일 시스템을 복원하려면 이 절차를 사용하십시오. 루트 디스크가 손상되어 새 디스크로 교체하는 경우와 같은 상황에서 이 절차를 수행하십시오. 복원하는 노드를 부트하면 안됩니다. 복원 절차를 수행하기 전에 클러스터가 문제 없이 실행되는지 확인하십시오.


주 –

장애가 발생한 디스크와 동일한 파일 시스템을 사용하여 새 디스크를 분할해야 하기 때문에 이 절차를 시작하기 전에 분할 영역 구조를 확인하고 필요한 파일 시스템을 다시 만드십시오.


단계
  1. 복원할 노드가 아닌 클러스터 노드에서 디스크 세트에 액세스할 수 있는 수퍼유저가 되거나 그와 동등한 역할을 맡습니다.

  2. 모든 디스크 세트에서 복원할 노드의 호스트 이름을 제거합니다.


    # metaset -s setname -f -d -h nodelist
    
    -s setname

    메타 세트 이름을 지정합니다.

    -f

    강제로 실행합니다.

    -d

    메타 세트에서 삭제합니다.

    -h nodelist

    메타 세트에서 삭제할 노드의 이름을 지정합니다.

  3. 루트(/) 파일 시스템을 복원할 노드에서 장애가 발생한 디스크를 교체합니다.

    서버와 함께 제공되는 문서에서 디스크를 교체하는 절차를 참조하십시오.

  4. 복원할 노드를 부트합니다.

    • Solaris CD를 사용하는 경우

      • SPARC: OpenBoot PROM ok 프롬프트에서 다음 명령을 입력합니다.


        ok boot cdrom -s
        
      • x86: CD를 시스템의 CD 드라이브에 넣고 시스템을 종료한 다음 전원을 껐다가 켜서 부트합니다. Current Boot Parameters 화면에서 다음 명령을 입력합니다.


                             <<< 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 -s
        
    • Solaris JumpStart TM 서버를 사용하는 경우

      • SPARC: OpenBoot PROM ok 프롬프트에서 다음 명령을 입력합니다.


        ok boot net -s
        
      • x86: 시스템을 종료한 다음 전원을 껐다가 켜서 부트합니다. Current Boot Parameters 화면에서 다음 명령을 입력합니다.


                             <<< 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 -s
        
  5. format 명령을 사용하여 루트 디스크에 모든 분할 영역과 스왑 공간을 만듭니다.

    장애가 발생한 디스크와 동일한 분할 영역 구조를 다시 만드십시오.

  6. newfs 명령을 사용하여 루트(/) 파일 시스템과 필요한 다른 파일 시스템을 만듭니다.

    장애가 발생한 디스크와 동일한 파일 시스템을 다시 만드십시오.


    주 –

    /global/.devices/node@nodeid 파일 시스템을 만들어야 합니다.


  7. 임시 마운트 지점에 루트(/) 파일 시스템을 마운트합니다.


    # mount device temp-mountpoint
    
  8. 다음 명령을 사용하여 루트(/) 파일 시스템을 복원합니다.


    # cd temp-mountpoint
    # ufsrestore rvf dump-device
    # rm restoresymtable
    
  9. 새 디스크에 새 부트 블록을 설치합니다.


    # /usr/sbin/installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk 
    raw-disk-device
    
  10. /temp-mountpoint/etc/system 파일에서 MDD 루트 정보에 대한 행을 제거하십시오.


    * Begin MDD root info (do not edit)
    forceload: misc/md_trans
    forceload: misc/md_raid
    forceload: misc/md_mirror
    forceload: misc/md_hotspares
    forceload: misc/md_stripe
    forceload: drv/pcipsy
    forceload: drv/glm
    forceload: drv/sd
    rootdev:/pseudo/md@0:0,10,blk
    * End MDD root info (do not edit)
  11. Solstice DiskSuite 메타 장치 또는 Solaris 볼륨 관리자 볼륨에서 메타 장치 또는 볼륨의 일부인 루트 디스크에 있는 각 파일 시스템의 해당되는 정상 슬라이스로 루트 항목을 변경하도록 /temp-mountpoint/etc/vfstab 파일을 편집하십시오.


    Example: 
    Change from—
    /dev/md/dsk/d10   /dev/md/rdsk/d10    /      ufs   1     no       -
    
    Change to—
    /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0  /      ufs   1     no       -
  12. 임시 파일 시스템 마운트를 해제하고 원시 디스크 장치를 검사합니다.


    # cd /
    # umount temp-mountpoint
    # fsck raw-disk-device
    
  13. 노드를 복수 사용자 모드로 재부트합니다.


    # reboot
    
  14. scdidadm 명령을 사용하여 디스크 ID를 교체합니다.


    # scdidadm -R rootdisk
    
  15. metadb 명령을 사용하여 상태 데이터베이스 복제본을 다시 만듭니다.


    # metadb -c copies -af raw-disk-device
    
    -c copies

    만들 복제본의 수를 지정합니다.

    -af raw-disk-device

    이름이 지정된 원시 디스크 장치에 초기 상태 데이터베이스 복제본을 만듭니다.

  16. 복원된 노드가 아닌 클러스터 노드에서 metaset 명령을 사용하여 복원된 노드를 모든 디스크 세트에 추가합니다.


    phys-schost-2# metaset -s setname -a -h nodelist
    
    -a

    메타 세트를 만들어 추가합니다.

    Solstice DiskSuite 설명서에 따라 루트(/)의 메타 장치 또는 볼륨/미러를 설정합니다.

    노드가 클러스터 모드로 재부트됩니다. 이제 클러스터를 사용할 준비가 되었습니다.


예 9–7 Solstice DiskSuite 메타 장치 또는 Solaris 볼륨 관리자 볼륨에 있던 루트(/) 파일 시스템 복원

다음 예에서는 테이프 디바이스 /dev/rmt/0에서 노드 phys-schost-1로 복원된 루트(/) 파일 시스템을 보여줍니다. metaset 명령은 제거된 후 나중에 메타 세트 schost-1에 노드 phys-schost-1을 추가하기 위해 클러스터 phys-schost-2에 있는 또다른 노드에서 실행됩니다. 다른 명령은 모두 phys-schost-1에서 실행됩니다. 새 부트 블록이 /dev/rdsk/c0t0d0s0에 만들어지고 세 개의 상태 데이터베이스 복제본은 /dev/rdsk/c0t0d0s4에 만들어집니다.


[복원할 노드가 아닌 클러스터 노드에서 메타 세트에 액세스할 수 있는 수퍼유저가 되거나 그와 동등한 역할을 맡음]
[메타 세트에서 노드 제거]
phys-schost-2# metaset -s schost-1 -f -d -h phys-schost-1
[장애가 발생한 디스크 교체 및 노드 부트]

Solaris CD에서 노드를 부트합니다.


[formatnewfs를 사용하여 분할 영역 및 파일 시스템 다시 만들기]
[임시 마운트 지점에서 루트 파일 시스템 마운트]
# mount /dev/dsk/c0t0d0s0 /a
[루트 파일 시스템 복원]
# cd /a
# ufsrestore rvf /dev/rmt/0
# rm restoresymtable
[새 부트 블록 설치]
# /usr/sbin/installboot /usr/platform/`uname \
-i`/lib/fs/ufs/bootblk /dev/rdsk/c0t0d0s0

[MDD 루트 정보에 대한 /
temp-mountpoint/etc/system 파일에서 행 제거]
* Begin MDD root info (do not edit)
forceload: misc/md_trans
forceload: misc/md_raid
forceload: misc/md_mirror
forceload: misc/md_hotspares
forceload: misc/md_stripe
forceload: drv/pcipsy
forceload: drv/glm
forceload: drv/sd
rootdev:/pseudo/md@0:0,10,blk
* End MDD root info (do not edit)
[/temp-mountpoint/etc/vfstab
파일 편집]
Example: 
Change from—
/dev/md/dsk/d10   /dev/md/rdsk/d10    /      ufs   1     no       -

Change to—
/dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0  /usr   ufs   1     no       -
[임시 파일 시스템 마운트 해제 및 원시 디스크 장치 확인]
# cd /
# umount /a
# fsck /dev/rdsk/c0t0d0s0
[재부트]
# reboot
[디스크 ID 변경]
# scdidadm -R /dev/rdsk/c0t0d0
[상태 데이터베이스 복제본 다시 만들기]
# metadb -c 3 -af /dev/rdsk/c0t0d0s4
[메타 세트에 노드 다시 추가]
phys-schost-2# metaset -s schost-1 -a -h phys-schost-1