Sun Cluster 3.0 12/01 소프트웨어 설치 안내서

루트(/) 파일 시스템을 이중화하는 방법

루트(/) 파일 시스템을 이중화하려면 이 절차를 사용하십시오.

  1. 클러스터의 한 노드에서 수퍼유저가 되십시오.

  2. metainit(1M) 명령을 사용하여 루트 슬라이스로 단일 슬라이스(단방향) 연결을 만드십시오.

    루트 디스크 슬라이스의 물리적 디스크 이름(cNtXdYsZ)을 사용하십시오.


    # metainit -f submirror1 1 1 root-disk-slice
    

  3. 두 번째 연결을 만드십시오.


    # metainit -f submirror2 1 1 submirror-disk-slice
    

  4. 하위 미러가 하나 있는 단방향 미러를 만드십시오.


    # metainit mirror -m submirror1
    


    주 -

    전체 클러스터에서 미러의 메타 장치 이름이 고유해야 합니다.


  5. metaroot(1M) 명령을 실행하십시오.

    이 명령을 실행하면 메타 장치의 루트(/) 파일 시스템으로 시스템을 부트할 수 있도록 /etc/vfstab/etc/system 파일이 편집됩니다.


    # metaroot mirror
    

  6. lockfs(1M) 명령을 실행하십시오.

    이 명령을 실행하면 로그에 기록된 모든 트랜잭션을 내보내서 마운트된 모든 UFS 파일 시스템의 마스터 파일에 기록합니다.


    # lockfs -fa
    

  7. 노드에서 자원 그룹이나 장치 그룹을 제거하십시오.


    # scswitch -S -h node
    
    -S

    모든 자원 그룹과 장치 그룹을 제거합니다

    -h node

    자원 또는 장치 그룹을 제거할 노드의 이름을 지정합니다

  8. 노드를 다시 부트하십시오.


    # shutdown -g0 -y -i6
    

  9. metattach(1M) 명령을 사용하여 두 번째 하위 미러를 미러에 연결하십시오.


    # metattach mirror submirror2
    

  10. 루트 디스크를 이중화하는 데 사용된 디스크가 둘 이상의 노드에 물리적으로 연결되어 있으면(멀티포트) 루트 디스크를 이중화하는 데 사용된 디스크에 대하여 원시 디스크 장치 그룹의 localonly 등록 정보를 활성화하십시오.

    부트 장치가 여러 노드에 연결되어 있으면 부트 장치에서 노드를 사용할 수 있도록 localonly 등록 정보를 설정해야 합니다.

    1. 필요하면 scdidadm -L 명령을 사용하여 원시 디스크 장치 그룹의 전체 DID(장치 DID) 의사 드라이버 이름을 사용하십시오.

      다음 예에서 원시 디스크 장치 그룹 이름 dsk/d2는 전체 DID 의사 드라이버의 이름이 출력되는 세 번째 열에 포함되어 있습니다.


      # scdidadm -L
      ...
      1         phys-schost-3:/dev/rdsk/c1t1d0     /dev/did/rdsk/d2
      # scconf -c -D name=dsk/d2,localonly=true
      

      localonly 등록 정보에 대한 자세한 내용은 scconf_dg_rawdisk(1M) 설명서 페이지를 참조하십시오.

    2. 원시 디스크 장치 그룹의 노드 목록을 확인하십시오.

      다음과 유사한 결과가 출력됩니다. 여기서 N은 DID 번호입니다.


      # scconf -pvv | grep dsk/dN
      Device group name:                                 dsk/dN
      ...
        (dsk/dN) Device group node list:                 phys-schost-1, phys-schost-3
      ...

    3. 노드 목록에 노드 이름이 두 개 이상 포함되어 있습니까?

      • 그러면 단계 d로 이동하십시오.

      • 아니면 단계 e로 이동하십시오.

    4. 원시 디스크 장치 그룹의 노드 목록에서 루트 디스크를 이중화한 노드를 제외하고 모든 노드를 제거하십시오.

      루트 디스크를 이중화한 노드만 노드 목록에 남아 있어야 합니다.


      # scconf -r -D name=dsk/dN,nodelist=node
      
      -D name=dsk/dN

      원시 디스크 장치 그룹의 이름을 클러스터에서 고유하게 지정합니다

      nodelist=node

      노드 목록에서 제거할 노드 이름을 지정합니다

    5. scconf(1M) 명령을 사용하여 localonly 등록 정보를 활성화하십시오.

      localonly 등록 정보가 활성화되면 노드 목록에 있는 노드에서만 원시 디스크 장치 그룹을 사용합니다. 따라서 부트 장치가 여러 노드에 연결된 경우에 부트 장치가 노드에 액세스하지 못하는 문제가 발생하지 않습니다.


      # scconf -c -D name=rawdisk-groupname,localonly=true
      
      -D name=rawdisk-groupname

      원시 디스크 장치 그룹의 이름을 지정합니다.

  11. 나중에 사용할 수 있도록 다른 부트 경로를 기록하십시오.


    # ls -l /dev/rdsk/root-disk-slice
    

  12. 클러스터의 다른 노드에서 단계 1부터 단계 11까지 반복하십시오.

    미러에 대한 각 메타 장치 이름이 전체 클러스터에서 고유한지 확인하십시오.

  13. 글로벌 이름 공간 /global/.devices/node@nodeid를 이중화하시겠습니까?

  14. 마운트를 해제할 수 없는 파일 시스템을 이중화하시겠습니까?

  15. 사용자 정의된 파일 시스템을 이중화하시겠습니까?

예: 루트(/) 파일 시스템 이중화

다음은 c0t0d0s0 파티션의 d10 하위 미러와 c2t2d0s0 파티션의 d20 하위 미러로 구성된 d0 미러를 phys-schost-1 노드에 만드는 예입니다. c2t2d0 디스크는 멀티포트 디스크이므로 localonly 등록 정보가 활성화됩니다.


(미러 만들기)
# metainit -f d10 1 1 c0t0d0s0
d11: Concat/Stripe is setup
# metainit -f d20 1 1 c2t2d0s0
d12: Concat/Stripe is setup
# metainit d0 -m d10
d10: Mirror is setup
# metaroot d0
# lockfs -fa
 
(노드 다시 부트)
# scswitch -S -h phys-schost-1
# shutdown -g0 -y -i6
 
(두 번째 하위 미러 연결)
# metattach d0 d20
d0: Submirror d20 is attached
 
(미러 디스크의 원시 디스크 장치 그룹에 대한 노드 목록 표시)
# scconf -pvv | grep dsk/d2
Device group name:                                 dsk/d2
...
  (dsk/d2) Device group node list:                 phys-schost-1, phys-schost-3
...
 
(원시 디스크 장치 그룹에 대한 노드 목록에서 phys-schost-3 제거)
# scconf -r -D name=dsk/d2,nodelist=phys-schost-3
 
(이중화된 디스크의 원시 디스크 장치 그룹에 대하여 localonly 등록 정보 활성화)
# scconf -c -D name=dsk/d2,localonly=true
 
(다른 부트 경로 기록)
# ls -l /dev/rdsk/c2t2d0s0
lrwxrwxrwx  1 root     root          57 Apr 25 20:11 /dev/rdsk/c2t2d0s0 -> 
../../devices/node@1/pci@1f,0/pci@1/scsi@3,1/disk@2,0:a,raw