반응형
MC/LockManager는 HP-UX OS를 갖는 HP9000 의 high availability cluster상에서 Oracle Paralle Server RDBMS가 돌도록 해 준다.
서로 다른 server에서 같은 자원을 동시에 access 하는 issue와
data integrity를 보장해 준다.
Redundant LAN, disk mirroring 등을 통해 H/W fail 시에도 계속적인 운영을 가능하게 하는 high available database 기능을 제공한다.
서로 다른 server에서 같은 자원을 동시에 access 하는 issue와
data integrity를 보장해 준다.
Redundant LAN, disk mirroring 등을 통해 H/W fail 시에도 계속적인 운영을 가능하게 하는 high available database 기능을 제공한다.
DLM을 위한 H/W,S/W check
1. H/W configuration check
- card address
- lan
1. H/W configuration check
- card address
- lan
2. S/W configuration check
- /etc/hosts file
- /.rhosts
- /etc/lvmrc AUTO_VG_ACTIVATE=1
DLM configuration(1)
cd /etc/cmcluster
cmquerycl -n hp10361 -n hp10362 -C cluster.asc
vi cluster.asc
cmcheckconf -v -C cluster.asc
cmmakepkg -p pkg1/pkg1.conf
cmmakepkg -s pkg1/pkg1.cntl
cmmakepkg -p pkg2/pkg2.conf
cmmakepkg -s pkg2/pkg2.cntl
cmapplyconf -v -C cluster.asc
- /etc/hosts file
- /.rhosts
- /etc/lvmrc AUTO_VG_ACTIVATE=1
DLM configuration(1)
cd /etc/cmcluster
cmquerycl -n hp10361 -n hp10362 -C cluster.asc
vi cluster.asc
cmcheckconf -v -C cluster.asc
cmmakepkg -p pkg1/pkg1.conf
cmmakepkg -s pkg1/pkg1.cntl
cmmakepkg -p pkg2/pkg2.conf
cmmakepkg -s pkg2/pkg2.cntl
cmapplyconf -v -C cluster.asc
DLM configuration(2)
cd /etc/opt/dlm
dlmquery -v -C dlm.asc
vi dlm.asc
dlmcheckconf -v -C dlm.asc
dlmapplyconf -v -C dlm.asc
vi /etc/opt/dlm/rc/runhalt.sh
cmruncl -v
Cluster start/stop
Cluster의 모든 node를 start 시킬 때
# cmruncl -v
특정 node만으로 cluster를 start 시킬 때
# cmruncl -v -n hp10361
cluster를 전체를 stop 시킬 때
# cmhaltcl -v
package가 running 중일 때 cluster stop
# cmhaltcl -v -f
Cluster start/stop
Cluster의 모든 node를 start 시킬 때
# cmruncl -v
특정 node만으로 cluster를 start 시킬 때
# cmruncl -v -n hp10361
cluster를 전체를 stop 시킬 때
# cmhaltcl -v
package가 running 중일 때 cluster stop
# cmhaltcl -v -f
Cluster status/node
Cluster의 상태를 확인할 때
# cmviewcl -v
한 node를 cluster에서 잠시 제외 시킬 때
# cmhaltnode -f hp10361
제외된 node를 다시 cluster에 합류 시킬 때
# cmrunnode hp10361
Package & switching
Package를 start 시킬 때
# cmrunpkg pkg1
package를 stop 시킬 때
# cmhaltpkg pkg1
package를 특정 node에서 start 시킬 때
# cmrunpkg -n hp10361 pkg1
stop된 package의 switching을 하려면
# cmmodpkg -e pkg1
Package를 start 시킬 때
# cmrunpkg pkg1
package를 stop 시킬 때
# cmhaltpkg pkg1
package를 특정 node에서 start 시킬 때
# cmrunpkg -n hp10361 pkg1
stop된 package의 switching을 하려면
# cmmodpkg -e pkg1
Package switching
Node package switching을 enable 시킬 때
# cmmodepkg -e -n hp10361 pkg1
다른 node로 넘어간 package를 원래 node로
다시 넘길 때
# cmhaltpkg pkg1 -n hp10361
# cmrunpkg -n hp10361 pkg1
# cmmodpkg -e pkg1
Log file들
cluster/package의 message
/var/adm/syslog/syslog.log
package control script의 message
/etc/cmcluster/pkg1/pkg1.cntl.log
/etc/cmcluster/pkg2/pkg2.cntl.log
DLM Log Files
/var/opt/dlm/
Node package switching을 enable 시킬 때
# cmmodepkg -e -n hp10361 pkg1
다른 node로 넘어간 package를 원래 node로
다시 넘길 때
# cmhaltpkg pkg1 -n hp10361
# cmrunpkg -n hp10361 pkg1
# cmmodpkg -e pkg1
Log file들
cluster/package의 message
/var/adm/syslog/syslog.log
package control script의 message
/etc/cmcluster/pkg1/pkg1.cntl.log
/etc/cmcluster/pkg2/pkg2.cntl.log
DLM Log Files
/var/opt/dlm/
DLM parameters(1)
Resources
the total number of distributed locks for which memory must be allocated in an OPS on HP-UX systems. (6000)
processes
the maximum number of DLM processes that may
run on the cluster. This is roughly equivalent to the number
of Oracle processes that run concurrently on all nodes
Resources
the total number of distributed locks for which memory must be allocated in an OPS on HP-UX systems. (6000)
processes
the maximum number of DLM processes that may
run on the cluster. This is roughly equivalent to the number
of Oracle processes that run concurrently on all nodes
DLM parameters(2)
Locks
The size of the DLM lock database.
This is a value based on an Oracle configuration parameter known as DLM_RSRCS.
(2*(Resources) or 12000 )
DLM상에서 Volume 변경
Volume내의 lvol size변경(vg18의 lvol1을 500mb -> 1G)
hp10361 # cmhaltcl -f /* cluster 종료 */
hp10361 # vgchange -c n -S n vg18 /* volume을 cluster mode에서 해제 */
hp10361 # vgchange -a y vg18 /* volume을 Active */
hp10361 # lvextend -L 1000 /dev/vg18/lvol1 /* volume Size를 1G로 늘림 */
hp10361 # vgchange -a n vg18 /* volume을 Inactive */
hp10361 # vgexport -p -m vg18.map vg18 /* create map file */
hp10361 # rcp vg18.map hp10362:/tmp
hp10361 # remsh hp10362 /* hp10362로 Login */
hp10362 # vgexport vg18 /* 기존의 Volume Group을 삭제 */
hp10362 # mkdir /dev/vg18 /* import volume group */
hp10362 # mknod /dev/vg18/group c 64 0x180000
hp10362 # vgimport -m /tmp/vg18.map vg18 /dev/dsk/c7t2d3 /dev/dsk/c9t2d3
hp10362 # cmruncl /* Cluster를 기동 */
DLM상에서 Volume Group추가(1)
Volume Group 추가(vg19를 추가)
hp10361 # cmhaltcl -f /* cluster 종료 */
hp10361 # mkdir /dev/vg19 /* create new volume group */
hp10361 # mknod /dev/vg19/group c 64 0x190000
hp10361 # vgcreate vg19 /dev/dsk/c7t3d3 /dev/dsk/c9t3d3
hp10361 # lvcreate -L 1000 -n newvol vg19 /* create newvol size 1G */
hp10361 # vgchange -a n vg19 /* volume을 Inactive */
hp10361 # vgexport -p -m vg19.map vg19 /* create map file */
hp10361 # rcp vg19.map hp10362:/tmp
hp10362 # mkdir /dev/vg18 /* import volume group */
hp10362 # mknod /dev/vg18/group c 64 0x180000
hp10362 # vgimport -m /tmp/vg18.map vg18 /dev/dsk/c7t2d3 /dev/dsk/c9t2d3
hp10362 # cmruncl /* Cluster를 기동 */
DLM상에서 Volume Group추가(1)
Volume Group 추가(vg19를 추가)
hp10361 # cmhaltcl -f /* cluster 종료 */
hp10361 # mkdir /dev/vg19 /* create new volume group */
hp10361 # mknod /dev/vg19/group c 64 0x190000
hp10361 # vgcreate vg19 /dev/dsk/c7t3d3 /dev/dsk/c9t3d3
hp10361 # lvcreate -L 1000 -n newvol vg19 /* create newvol size 1G */
hp10361 # vgchange -a n vg19 /* volume을 Inactive */
hp10361 # vgexport -p -m vg19.map vg19 /* create map file */
hp10361 # rcp vg19.map hp10362:/tmp
hp10362 # mkdir /dev/vg19 /* hp10362에 Volume Group import */
hp10362 # mknod /dev/vg19/group c 64 0x190000
hp10362 # vgimport -m /tmp/vg19.map vg19 /dev/dsk/c7t3d3 /dev/dsk/c9t3d3
DLM상에서 Volume Group추가(2)
Volume Group 추가(vg19를 추가)
hp10361 # vi /etc/cmcluster/cluster.asc /* 다음의 내용을 추가 */
DLM_VOLUME_GROUP /dev/vg19
hp10361 # vi /etc/opt/dlm/rc/runhalt.sh /* SHARED_VGS에 vg19추가 */
SHARED_VGS="vg03 vg04 vg18 vg19”
hp10362 # vi /etc/opt/dlm/rc/runhalt.sh /* SHARED_VGS에 vg19추가 */
SHARED_VGS="vg03 vg04 vg18 vg19”
hp10362 # mknod /dev/vg19/group c 64 0x190000
hp10362 # vgimport -m /tmp/vg19.map vg19 /dev/dsk/c7t3d3 /dev/dsk/c9t3d3
DLM상에서 Volume Group추가(2)
Volume Group 추가(vg19를 추가)
hp10361 # vi /etc/cmcluster/cluster.asc /* 다음의 내용을 추가 */
DLM_VOLUME_GROUP /dev/vg19
hp10361 # vi /etc/opt/dlm/rc/runhalt.sh /* SHARED_VGS에 vg19추가 */
SHARED_VGS="vg03 vg04 vg18 vg19”
hp10362 # vi /etc/opt/dlm/rc/runhalt.sh /* SHARED_VGS에 vg19추가 */
SHARED_VGS="vg03 vg04 vg18 vg19”
hp10361 # rcp -p /etc/cmcluster/cluster.asc hp10362:/etc/cmcluster
/* Compile cluster configuration */
hp10361 # cmapplyconf -C /etc/cmcluster/cluster.asc
-P /etc/cmcluster/pkg1/pkg1.conf
-P /etc/cmcluster/pkg2/pkg2.conf
hp10361 # cmruncl /* Cluster를 기동 */
/* Compile cluster configuration */
hp10361 # cmapplyconf -C /etc/cmcluster/cluster.asc
-P /etc/cmcluster/pkg1/pkg1.conf
-P /etc/cmcluster/pkg2/pkg2.conf
hp10361 # cmruncl /* Cluster를 기동 */
반응형