탐색 링크 건너뛰기 | |
인쇄 보기 종료 | |
![]() |
Oracle Solaris Cluster 시스템 관리 설명서 Oracle Solaris Cluster 3.3 3/13 (한국어) |
1. Oracle Solaris Cluster 관리 방법 소개
2. Oracle Solaris Cluster 및 RBAC
5. 전역 장치, 디스크 경로 모니터링 및 클러스터 파일 시스템 관리
11. Oracle Solaris Cluster 소프트웨어 및 펌웨어 패치 작업
Oracle Solaris Cluster 패치 작업 개요
Oracle Solaris Cluster 소프트웨어 패치 작업
비재부트 Oracle Solaris Cluster 패치를 적용하는 방법
페일오버 영역이 있는 노드에 단일 사용자 모드로 패치를 적용하는 방법
표 11-1 작업 맵: 클러스터 패치 작업
|
패치 프로세스 동안 클러스터 작동을 유지하기 위해 클러스터에서 한 번에 하나의 노드에 패치를 적용합니다. 이 절차에서는 패치를 적용하기 전에 먼저 boot -sx 또는 shutdown -g -y -i0 명령을 사용하여 클러스터의 노드를 중지하고 단일 사용자 모드로 부트해야 합니다.
phys-schost# 프롬프트는 전역 클러스터 프롬프트를 반영합니다. 전역 클러스터에서 이 절차를 수행합니다.
이 절차에서는 장문형 Oracle Solaris Cluster 명령을 제공합니다. 대부분의 명령에는 단문형도 있습니다. 명령은 명령 이름이 장문형과 단문형인 것을 제외하면 동일합니다.
# clresourcegroup status -Z all -n node[,...]
패치할 노드에 있는 전역 클러스터 노드 또는 영역 클러스터 노드의 이름입니다.
# cldevicegroup status -n node
패치할 전역 클러스터 노드의 이름입니다.
주 - 장치 그룹은 영역 클러스터와 연관되지 않습니다.
# clnode evacuate -n node
모든 전역 클러스터 비투표 노드를 포함하여 모든 장치 그룹 및 리소스 그룹을 이동시킵니다.
전환할 리소스 그룹 및 장치 그룹이 있는 노드를 지정합니다.
# shutdown -g0 [-y] [-i0]
SPARC 기반 시스템에서는 다음 명령을 실행합니다.
ok boot -sx
x86 기반 시스템에서는 다음 명령을 실행합니다.
phys-schost# shutdown -g -y -i0 Press any key to continue
GRUB 메뉴는 다음과 같이 나타납니다.
GNU GRUB version 0.95 (631K lower / 2095488K upper memory) +-------------------------------------------------------------------------+ | Solaris 10 /sol_10_x86 | | Solaris failsafe | | | +-------------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press enter to boot the selected OS, 'e' to edit the commands before booting, or 'c' for a command-line.
GRUB 기반 부트에 대한 자세한 내용은 Oracle Solaris 관리: 기본 관리의 GRUB를 사용하여 x86 기반 시스템 부트(작업 맵)를 참조하십시오.
GRUB 부트 매개변수 화면은 다음과 같이 나타납니다.
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot | | module /platform/i86pc/boot_archive | +----------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.
[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ESC at any time exits. ] grub edit> kernel /platform/i86pc/multiboot -sx
화면에 편집된 명령이 표시됩니다.
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot -sx | | module /platform/i86pc/boot_archive | +----------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.-
주 - 커널 부트 매개 변수 명령에 대한 변경 사항은 시스템을 재부트하면 사라집니다. 다음에 노드를 재부트하면 클러스터 모드로 부트됩니다. 비클러스터 모드로 부트하려면 이러한 단계를 다시 실행하여 -sx 옵션을 커널 부트 매개변수 명령에 추가합니다.
# patchadd -M patch-dir patch-id
패치의 디렉토리 위치를 지정합니다.
제공된 패치의 패치 번호를 지정합니다.
주 - 이 장에 나와 있는 절차보다 우선하는 패치 디렉토리의 지침을 항상 따르십시오.
# showrev -p | grep patch-id
# reboot
모든 노드를 재부트한 후 재부트된 마지막 노드의 경우 리소스 그룹 및 장치 그룹이 온라인 상태가 아닙니다.
# cldevicegroup switch -n node + | devicegroup ... # clresourcegroup switch -n node[:zone][,...] + | resource-group ...
리소스 그룹 및 장치 그룹을 전환할 노드의 이름입니다.
리소스 그룹을 마스터할 수 있는 전역 클러스터 비투표 노드(node)의 이름입니다. 리소스 그룹을 만들 때 비투표 노드를 지정한 경우에만 영역을 지정합니다.
# clresourcegroup switch -Z zoneclustername -n zcnode[,...] + | resource-group ...
리소스 그룹을 전환할 영역 클러스터의 이름입니다.
리소스 그룹을 마스터할 수 있는 영역 클러스터의 이름입니다.
주 - 장치 그룹은 영역 클러스터와 연관되지 않습니다.
# /usr/cluster/bin/scversions
다음 결과 중 하나가 나타납니다.
Upgrade commit is needed. Upgrade commit is NOT needed. All versions match.
# scversions -c
주 - scversions를 실행하면 상황에 따라 하나 이상의 CMM이 재구성됩니다.
예 11-1 재부트 패치(노드) 적용
다음 예에서는 노드에 재부트 Oracle Solaris Cluster 패치 적용을 보여 줍니다.
# clresourcegroup status -n rg1 ...Resource Group Resource -------------- -------- rg1 rs-2 rg1 rs-3 ... # cldevicegroup status -n nodedg-schost-1 ... Device Group Name: dg-schost-1 ... # clnode evacuate phys-schost-2 # shutdown -g0 -y -i0 ...
노드를 비클러스터, 단일 사용자 모드로 부트합니다.
SPARC: 다음을 입력합니다.
ok boot -sx
x86:노드를 비클러스터, 단일 사용자 모드로 부트합니다. 위의 절차에 있는 부트 단계를 참조하십시오.
# patchadd -M /var/tmp/patches 234567-05 ... # showrev -p | grep 234567-05 ... # reboot ... # cldevicegroup switch -n phys-schost-1 dg-schost-1 # clresourcegroup switch -n phys-schost-1 schost-sa-1 # scversions Upgrade commit is needed. # scversions -c
참조
패치를 취소해야 하는 경우 Oracle Solaris Cluster 패치 변경을 참조하십시오.
이 절차에서는 패치를 적용하기 전에 먼저 boot -sx 또는 shtudown -g -y -i0 명령을 사용하여 클러스터를 중지하고 각 노드를 단일 사용자 모드로 부트해야 합니다.
# cluster shutdown -y -g grace-period “message”
확인 프롬프트에 yes를 응답하도록 지정합니다.
종료 전 대기 시간을 초 단위로 지정합니다. 기본 유예 기간은 60초입니다.
브로드캐스트할 경고 메시지를 지정합니다. message에 여러 단어가 포함될 경우 따옴표를 사용합니다.
각 노드의 콘솔에서 다음 명령을 실행합니다.
SPARC 기반 시스템에서는 다음 명령을 실행합니다.
ok boot -sx
x86 기반 시스템에서는 다음 명령을 실행합니다.
phys-schost# shutdown -g -y -i0 Press any key to continue
GRUB 메뉴는 다음과 같이 나타납니다.
GNU GRUB version 0.95 (631K lower / 2095488K upper memory) +-------------------------------------------------------------------------+ | Solaris 10 /sol_10_x86 | | Solaris failsafe | | | +-------------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press enter to boot the selected OS, 'e' to edit the commands before booting, or 'c' for a command-line.
GRUB 기반 부트에 대한 자세한 내용은 Oracle Solaris 관리: 기본 관리의 GRUB를 사용하여 x86 기반 시스템 부트(작업 맵)를 참조하십시오.
GRUB 부트 매개변수 화면은 다음과 같이 나타납니다.
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot | | module /platform/i86pc/boot_archive | +----------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.
[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ESC at any time exits. ] grub edit> kernel /platform/i86pc/multiboot -sx
화면에 편집된 명령이 표시됩니다.
GNU GRUB version 0.95 (615K lower / 2095552K upper memory) +----------------------------------------------------------------------+ | root (hd0,0,a) | | kernel /platform/i86pc/multiboot -sx | | module /platform/i86pc/boot_archive | +----------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press 'b' to boot, 'e' to edit the selected command in the boot sequence, 'c' for a command-line, 'o' to open a new line after ('O' for before) the selected line, 'd' to remove the selected line, or escape to go back to the main menu.-
주 - 커널 부트 매개 변수 명령에 대한 변경 사항은 시스템을 재부트하면 사라집니다. 다음에 노드를 재부트하면 클러스터 모드로 부트됩니다. 비클러스터 모드로 부트하려면 이러한 단계를 다시 실행하여 -sx 옵션을 커널 부트 매개변수 명령에 추가합니다.
한 번에 하나의 노드에서 다음 명령을 실행합니다.
# patchadd -M patch-dir patch-id
패치의 디렉토리 위치를 지정합니다.
제공된 패치의 패치 번호를 지정합니다.
주 - 이 장에 나와 있는 절차보다 우선하는 패치 디렉토리의 지침을 항상 따르십시오.
# showrev -p | grep patch-id
각 노드에서 다음 명령을 실행합니다.
# reboot
# /usr/cluster/bin/scversions
다음 결과 중 하나가 나타납니다.
Upgrade commit is needed. Upgrade commit is NOT needed. All versions match.
# scversions -c
주 - scversions를 실행하면 상황에 따라 하나 이상의 CMM이 재구성됩니다.
예 11-2 재부트 패치(클러스터) 적용
다음 예에서는 클러스터에 재부트 Oracle Solaris Cluster 패치 적용을 보여 줍니다.
# cluster shutdown -g0 -y ...
비클러스터, 단일 사용자 모드로 클러스터를 부트합니다.
SPARC: 다음을 입력합니다.
ok boot -sx
x86:각 노드를 비클러스터, 단일 사용자 모드로 부트합니다. 단계는 위의 절차를 참조하십시오.
... # patchadd -M /var/tmp/patches 234567-05 (Apply patch to other cluster nodes) ... # showrev -p | grep 234567-05 # reboot # scversions Upgrade commit is needed. # scversions -c
참조
패치를 취소해야 하는 경우 Oracle Solaris Cluster 패치 변경을 참조하십시오.
클러스터에서 한 번에 하나의 노드에 패치를 적용합니다. 비재부트 패치를 적용할 경우 먼저 패치할 노드를 중지할 필요가 없습니다.
# patchadd -M patch-dir patch-id
패치의 디렉토리 위치를 지정합니다.
제공된 패치의 패치 번호를 지정합니다.
# showrev -p | grep patch-id
# /usr/cluster/bin/scversions
다음 결과 중 하나가 나타납니다.
Upgrade commit is needed. Upgrade commit is NOT needed. All versions match.
# scversions -c
주 - scversions를 실행하면 상황에 따라 하나 이상의 CMM이 재구성됩니다.
예 11-3 비재부트 Oracle Solaris Cluster 패치 적용
# patchadd -M /tmp/patches 234567-05 ... # showrev -p | grep 234567-05 # scversions Upgrade commit is needed. # scversions -c
참조
패치를 취소해야 하는 경우 Oracle Solaris Cluster 패치 변경을 참조하십시오.
페일오버 영역에서 단일 사용자 모드로 패치를 적용하려면 이 작업을 수행합니다. Oracle Solaris Cluster 소프트웨어의 페일오버 구성으로 Oracle Solaris Cluster Data Service for Solaris Containers를 사용하는 경우 이 패치 방법이 필요합니다.
# clquorum show
# clquorum add new-didname
# clquorum remove old-didname
다음 명령은 PGRE(Persistent Group Reservation Emulation) 키를 찾습니다. 디스크에 키가 없으면 errno=22 메시지가 표시됩니다.
# /usr/cluster/lib/sc/pgre -c pgre_inkeys -d /dev/did/rdsk/dids2
키를 찾은 후 PGRE 키를 스크럽합니다.
# /usr/cluster/lib/sc/pgre -c pgre_scrub -d /dev/did/rdsk/dids2
![]() | 주의 - 디스크에서 활성 쿼럼 장치 키를 스크럽할 경우 다음 번 재구성에서 클러스터 패닉이 발생하고 작동 중인 쿼럼 상실 메시지가 표시됩니다. |
# clresourcegroup evacuate -n node1
# clresourcegroup offline resourcegroupname
# clresource disable resourcename
# clresourcegroup unmanage resourcegroupname
# cldevicegroup offline cldevicegroupname
# cldevicegroup disable devicegroupname
# reboot -- -x
주 - 영역 경로에 대한 zpools가 있는 페일오버 영역을 패치하는 경우 다음 명령을 사용하십시오.
# reboot -- -xs
# svcs -x
주 - 영역 경로에 대한 zpools가 있는 페일오버 영역을 패치하는 경우 이 단계를 건너 뛰십시오.
# cluster status
디스크 세트의 모든 디스크에 대해 다음 명령을 실행합니다. /usr/cluster/lib/sc/scsi -c disfailfast -d /dev/did/rdsk/d#s2.
키가 나열되는 경우 다음 명령을 실행하여 해제합니다. /usr/cluster/lib/sc/scsi -c release -d /dev/did/rdsk/d#s2.
예약 키 해제를 마쳤으면 단계 12를 건너 뛰고 단계 13으로 이동합니다.
# /usr/cluster/lib/sc/scsi -c inkeys -d /dev/did/rdsk/didnames2
# /usr/cluster/lib/sc/scsi -c scrub -d /dev/did/rdsk/didnames2
# metaset -s disksetname -C take -f
주 - 영역 경로에 대한 zpools가 있는 페일오버 영역을 패치하는 경우 다음 명령을 사용하십시오.
# zpool import -R / pool_name
# mount device mountpoint
# init s
# zoneadm -z zonename halt
# zoneadm -z zonename boot -s
# reboot
# svcs -a
이제 첫번째 노드가 준비되었습니다.
# clresourcegroup evacuate -n node2
# zoneadm -z zonename detach
# init s
# zoneadm -z zonename halt
# zoneadm -z zonename boot -s
# zoneadm -z zonename attach -F
# reboot
# /usr/cluster/bin/scversions
다음 결과 중 하나가 나타납니다.
Upgrade commit is needed. Upgrade commit is NOT needed. All versions match.
# scversions -c
주 - scversions를 실행하면 상황에 따라 하나 이상의 CMM이 재구성됩니다.
클러스터에 적용한 Oracle Solaris Cluster 패치를 제거하려면 먼저 새 Oracle Solaris Cluster 패치를 제거한 다음 이전 패치나 업데이트 릴리스를 다시 적용해야 합니다. 새 Oracle Solaris Cluster 패치를 제거하려면 다음 절차를 참조하십시오. 이전 Oracle Solaris Cluster 패치를 다시 적용하려면 다음 절차 중 하나를 참조하십시오.
주 - Oracle Solaris Cluster 패치를 적용하기 전에 패치의 README 파일을 확인합니다.
# patchrm patchid
# patchrm patchid
# reboot