6 Solaris Cluster 4.2 설치

Solaris Cluster 설치는 Oracle technetwork 사이트에서 제공되는 Oracle Solaris Cluster Software Installation Guide에 자세히 설명되어 있습니다(이 문서의 소프트웨어 패키지 다운로드 참조).

ACSLSHA 8.4는 Oracle Solaris Cluster 4.2를 사용하는 Solaris 11.2에서 지원됩니다.

클러스터 패키지 설치

이 절차를 따라 클러스터 소프트웨어를 설치합니다.

  1. /opt/OSC 디렉토리를 만듭니다.

    # mkdir /opt/OSC
    
  2. Oracle Cluster 4.2 다운로드에서 확인한 운영체제 버전에 따라 Solaris Cluster 패키지의 ISO 이미지 하나 또는 두 개를 다운로드했을 수 있습니다. 다운로드한 각 클러스터 패키지를 /opt/OSC 디렉토리로 이동합니다.

  3. 패키지의 압축을 풉니다. 압축을 푼 각 패키지의 ISO 이미지를 식별합니다.

  4. 각 ISO 이미지로부터 의사 장치를 만듭니다.

    #  /usr/sbin/lofiadm -a /opt/OSC/V46190-01.iso
    
    #  /usr/sbin/lofiadm -a /opt/OSC/osc-4_2_5_1_0-repo-incr.iso
    

    각 의사 장치에 대해 만든 /dev/lofi 인스턴스 번호를 추적합니다.

  5. /opt/OSC 디렉토리에서 각 의사 장치에 대한 마운트 지점을 만듭니다.

    # mkdir mnt
    
    # mkdir mnt1
    
  6. 이 마운트 지점에 의사 장치를 마운트합니다.

    # mount –F hsfs –o ro /dev/lofi/1 /opt/OSC/mnt
    
    # mount –F hsfs –o ro /dev/lofi/2 /opt/OSC/mnt1
    
  7. 다음 중 하나를 선택합니다.

    • Solaris 버전이 11.2.13 이상인 경우 8단계를 진행합니다.

    • Solaris 버전이 11.2.12 이하이고 기본 클러스터 이미지만 다운로드한 경우 이제 해당 기본 이미지에 대한 저장소를 게시할 수 있습니다.

      #  pkg set publisher –G  ’*’  –g  file:/opt/OSC/mnt/repo  ha-cluster
      

      이 절의 13단계를 진행하여 패키지를 설치합니다.

  8. 다음 단계에서 OSC 기본 패키지를 읽기/쓰기 파일 시스템으로 복사하여 기본 패키지로 패치 업데이트를 병합합니다.

    OSC 패키지 병합을 위해 읽기/쓰기 파일 시스템을 만듭니다.

    # cd /opt/OSC
    
    # mkdir merged_iso
    
  9. 기본 OSC 이미지 저장소를 만든 디렉토리로 복사합니다.

    # cp –r  mnt/repo  merged_iso
    
  10. 이미지 두 개를 병합한 디렉토리로 동기화합니다.

    # rsync –aP mnt1/repo  merged_iso
    
  11. 저장소의 검색 인덱스를 재구성합니다.

    # pkgrepo rebuild –s  merged_iso/repo
    
  12. 병합한 패키지의 ha-cluster 저장소를 게시합니다.

    # pkg set-publisher –g file:/opt/OSC/merged_iso/repo ha-cluster
    
  13. Oracle Solaris Cluster 패키지를 설치합니다.

    # pkg install -–accept ha-cluster-full
    

인접한 노드에서 1~13단계를 반복합니다.

scinstall 루틴

Solaris Cluster 설치 루틴은 두 노드 사이에 일련의 검사를 수행해서 두 서버 모두에서 시스템 작업을 모니터할 수 있고 시작 및 페일오버 작업을 제어할 수 있는지 확인합니다.

예비 단계:

  1. scinstall을 실행하기 전에 바로 전에 설치한 클러스터 유틸리티에 대한 경로를 포함하는 root에 대한 환경을 설정하면 도움이 됩니다. /root/.profile 파일을 편집합니다. /usr/cluster/bin을 포함하도록 경로 문을 변경합니다.

    export PATH=/usr/cluster/bin:/usr/bin:/usr/sbin
    

    각 노드에서 이 항목을 변경해야 합니다. 새 경로를 상속하려면 로그아웃하고 다시 로그인하거나 단순히 su -를 실행합니다.

  2. rpc/bind에 대한 config/local_only 등록 정보가 false인지 확인합니다.

    # svccfg -s network/rpc/bind listprop config/local_only
    

    이 등록 정보가 true를 반환할 경우에는 이를 false로 설정해야 합니다.

    # svccfg -s network/rpc/bind setprop config/local_only=false
    

    그런 후 다음을 확인합니다.

    # svccfg -s network/rpc/bind listprop config/local_only
    
  3. Cluster 소프트웨어의 필수 하드웨어 설정 요구 사항은 개인 네트워크 연결 2개가 두 노드 사이에서 클러스터 작업의 무중단 통신을 수행할 수 있도록 예약되어 있는 것입니다.

    그림 2-1 각 서버 노드의 이더넷 포트 두 개에 연결된 단일 HBCr 라이브러리 인터페이스 카드에는 (2)로 레이블이 지정되어 있는 물리적 연결이 나와 있습니다. 각 연결은 단일 실패 지점이 클러스터의 내부 통신을 중단하지 않도록 보장하기 위해 별도 네트워크 어댑터로부터 시작됩니다. scinstall 루틴은 이러한 두 연결을 각각 검사하여 다른 네트워크 트래픽이 전송 중이 아닌지 확인합니다. 마지막으로 scinstall은 통신이 두 라인 사이에 작동하는지 확인합니다. 물리적 연결이 확인된 다음에는 루틴이 172.16으로 시작하는 개인 내부 주소에 각 인터페이스를 연결합니다.

    scinstall을 실행하려면 먼저 이 개인 연결에 대해 설정한 각 서버에서 2개의 네트워크 포트에 대해 지정된 네트워크 장치 ID를 확인합니다. dladm show-phys를 실행하여 인터페이스 지정을 확인합니다.

    # dladm show-phys
    
  4. 한쪽 노드의 클러스터를 나타내도록 논리 호스트 이름 및 IP 주소를 설정해야 합니다. 이 논리 호스트는 활성 호스트가 node1 또는 node2에서 실행되는지 여부에 관계없이 네트워크 통신에 안정적으로 응답합니다.

    논리 호스트 이름과 논리 IP 주소를 포함하도록 두 노드 모두에서 /etc/hosts 파일을 업데이트합니다. 이 호스트는 ACSLS HA(ACSLS HA 구성)를 시작할 때 활성화됩니다.

  5. 성공적인 클러스터 설치를 위해서는 Solaris 공통 에이전트 컨테이너를 사용으로 설정합니다. 에이전트 컨테이너가 사용으로 설정되었는지 확인합니다.

    # cacaoadm status
    

    상태 응답에 에이전트 컨테이너가 시스템 시작 시 DISABLED로 표시되는 경우 다음과 같이 사용으로 설정합니다.

    # cacaoadm enable
    

scinstall 실행

두 노드 중 하나에서 scinstall 명령을 실행한 후 다음 절차를 따릅니다.

  1. 기본 메뉴에서 Create a new cluster를 선택합니다.

  2. 하위 메뉴에서 Create a new cluster를 선택합니다.

  3. 초기 기본값을 수락합니다.

  4. Typical 설치를 선택합니다.

  5. 클러스터의 이름(예: acsls_cluster)을 지정합니다.

  6. 클러스터 노드 프롬프트에서 인접한 노드의 호스트 이름을 입력합니다. 노드 목록이 올바르면 수락합니다.

  7. 이 용도로 식별한 2개의 개인 노드 상호 연결을 정의합니다. 설치 루틴이 물리적 연결에 대한 TCP 링크를 구성하도록 허용합니다.

  8. 프롬프트에 따라 클러스터를 만듭니다. 쿼럼 장치로 작동할 특정 장치가 식별되지 않은 한 scinstall 루틴이 쿼럼 장치를 선택하도록 허용합니다.

  9. 유틸리티에서 클러스터 검사가 두 노드 모두에서 실패한 것으로 보고될 경우 걱정할 필요가 없습니다. 사소한 경고의 경우에도 오류가 보고됩니다. 각 노드에 대한 보고서를 검토하고 심각한 오류 또는 위반이 반환되지 않았는지 확인합니다. 루틴은 작업 중 발생한 오류 또는 경고와 관련된 세부정보를 보고하는 로그 파일 경로를 표시합니다. 로그 파일을 검토하고 식별된 심각하거나 약간 심각한 문제를 해결합니다.

    scinstall 루틴은 노드 하나에서 실행되고 노드 두 개에 Solaris Cluster를 설치합니다. 루틴이 노드 하나를 구성하고 해당 노드를 재부트한 다음 두번째 노드를 구성하고 이 노드를 재부트하는 동작을 확인합니다.

클러스터 구성 확인

  1. 두 노드가 모두 클러스터에 포함되었는지 확인합니다.

    # clnode list -v
    Node                Type
    ----                ----
    node1               cluster
    node2               cluster
    
  2. Solaris Cluster에서 사용할 수 있는 장치 목록을 확인합니다.

    # cldevice list -v
    DID Device   Full Device Path
    d1           node1:/dev/rdsk/c0t600A0B800049EDD600000C9952CAA03Ed0
    d1           node2:/dev/rdsk/c0t600A0B800049EDD600000C9952CAA03Ed0
    d2           node1:/dev/rdsk/c0t600A0B800049EE1A0000832652CAA899d0
    d2           node2:/dev/rdsk/c0t600A0B800049EE1A0000832652CAA899d0
    d3           node1:/dev/rdsk/c1t0d0
    d4           node1:/dev/rdsk/c1t1d0
    d5           node2:/dev/rdsk/c1t0d0
    d6           node2:/dev/rdsk/c1t1d0
    

    이 예제에서 공유 디스크 장치는 d1 및 d2이고 d3 및 d4는 node1 부트 장치이며, d5 및 d6은 node2 부트 장치입니다. d1 및 d2는 어느 노드에서도 액세스할 수 있습니다.

  3. 쿼럼은 3개 이상의 장치로 구성됩니다. 쿼럼은 시작 이벤트 중에 활성 노드가 되는 특정 노드를 확인하기 위해 사용됩니다.

    전체 쿼럼이 구성되었는지 확인합니다.

    # clquorum list -v
    Quorum              Type
    ------              ----
    d1                  shared_disk
    node1               node
    node2               node
    

    두번째 shared_disk를 선택적으로 쿼럼 장치 목록에 추가할 수 있습니다.

    # clquorum add d2
    # clquorum list -v
    Quorum              Type
    ------              ----
    d1                  shared_disk
    d2                  shared_disk
    node1               node
    node2               node
    

    공유 디스크 장치가 나열되지 않았으면 해당 장치의 ID를 확인하고 이를 쿼럼에 추가합니다.

    1. 각 공유 디스크에 대한 장치 ID를 식별합니다.

      # cldevice list -v
      
    2. clsetup을 실행하여 쿼럼 장치를 추가합니다.

      # clsetup
      
      Select '1' for quorum.
      Select '1' to dd a quorum device.
      Select 'yes' to continue.
      Select 'Directly attached shared disk'
      Select 'yes' to continue.
      Enter the device id (d<n>) for the first shared drive.
      Answer 'yes' to add another quorum device.
      Enter the device id for the second shared drive.
      
    3. clquorum show를 실행하여 쿼럼 멤버쉽을 확인합니다.

      # clquorum show
      
  4. 전체 클러스터 구성을 검토합니다.

    # cluster check -v | egrep -v "not applicable|passed"
    

    목록에서 위반된 인스턴스를 찾습니다.

  5. 등록된 리소스 유형의 목록을 확인합니다.

    # clrt list
    SUNW.LogicalHostname:4
    SUNW.SharedAddress:2
    SUNW.gds:6
    

    SUNW.gds가 나열되지 않았으면 등록합니다.

    # clrt register SUNW.gds
    

    clrt list를 사용해서 확인합니다.