문서유형ㅣ기술정보
분야ㅣ관리/환경설정
적용제품버전ㅣTibero5, Tibero6 , Tibero7
문서번호ㅣTADTI214
개요
TAC 환경에서 이중화 기능의 정상 동작 여부를 검증하기 위한 BMT 시나리오를 기술한다.
방법
DBMS 장애 Failover
DBMS 인스턴스 장애에 대한 Failover 기능을 설명합니다.
수행
| 수행 순서 | 시나리오 |
|---|---|
| 1 | Client 접속 설정 ( tbdsn.tbr ) |
| 2 | Instance 접속 확인 |
| 3 | 쿼리수행을 위한 데이터 구성 |
| 4 | 쿼리수행 |
| 5 | 인스턴스 장애 ( process kill ) |
| 6 | Failover 확인 |
결과
| 수행 순서 | 시나리오 | |||
|---|---|---|---|---|
| 1 | Client 접속 설정 ( tbdsn.tbr ) | |||
| tta1=( (INSTANCE=(HOST=192.168.51.161) (PORT=8639) (DB_NAME=tta) ) (INSTANCE=(HOST=192.168.51.162) (PORT=8639) (DB_NAME=tta) ) (USE_FAILOVER=(TYPE=CURSOR) (RETRY=3) ) ) | ||||
| 2 | Instance 접속 확인 | |||
| tbsql sys/tibero@tta1 select instance_name from v$instance; INSTANCE_NAME ---------------------------------------- tta1 | ||||
| 3 | 쿼리수행을 위한 데이터 구성 | |||
| drop table tibero.test; drop table tibero.test1; create table tibero.test as select level as col1, level || '_test' as col2, trunc(level/100) as col3 from dual connect by level < 10000001; create table tibero.test1 as select level as col1, level || '_test' as col2, trunc(level/100) as col3 from dual connect by level < 10000001; | ||||
| 4 | 쿼리수행 | |||
| ||||
| 5 | 인스턴스 장애 ( process kill ) | |||
-- Node1 tbdown abnormal | ||||
| 6 | Failover 확인 | |||
-- Node2 select max(a.col1), max(b.col1) from tibero.test a , tibero.test1 b where a.col1= b.col1; MAX(A.COL1) MAX(B.COL1) ----------- ----------- |
DBMS 장애 Failback
DBMS 인스턴스 장애에 대한 Failback 기능을 설명합니다.
수행
| 수행 순서 | 시나리오 |
|---|---|
| 1 | 서비스 확인 |
| 2 | 인스턴스 기동 |
| 3 | tbsql로 접속 및 접속 된 instance 확인 |
결과
| 수행 순서 | 시나리오 |
|---|---|
| 1 | 서비스 확인 |
| [root@tech-tac0 cumulative]$ cmrctl show all Resource List of Node cm0 ===================================================================== CLUSTER TYPE NAME STATUS DETAIL ----------- -------- -------------- -------- ------------------------ COMMON network net0 UP (private) 10.10.10.231/29000 COMMON cluster cls0 UP inc: net0, pub: N/A cls0 file cls0:0 UP /share/tac/CMFILE/CMFILE cls0 service testdb UP Database, Active Cluster (auto-restart: OFF) cls0 db testdb0 DOWN testdb, /root/tibero_engine, failed retry cnt: 0 ===================================================================== Resource List of Node cm1 ===================================================================== CLUSTER TYPE NAME STATUS DETAIL ----------- -------- -------------- -------- ------------------------ COMMON network net1 UP (private) 10.10.10.232/29000 COMMON cluster cls0 UP inc: net1, pub: N/A cls0 file cls0:0 UP /share/tac/CMFILE/CMFILE cls0 service testdb UP Database, Active Cluster (auto-restart: OFF) cls0 db testdb1 UP(NRML) testdb, /root/tibero_engine, failed retry cnt: 0 ===================================================================== | |
| 2 | 인스턴스 기동 |
[root@tech-tac0 cumulative]$ tbboot Tibero 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. | |
| 3 | tbsql로 접속 및 접속 된 instance 확인 |
SQL> select instance_name from v$instance; INSTANCE_NAME 1 row selected. SQL> exit
|
네트워크(public) 장애 Failover
Public 네트워크 장애에 대한 Failover 기능을 설명합니다.
수행
| 수행 순서 | 시나리오 |
|---|---|
| 1 | client 접속 설정 ( tbdsn.tbr ) |
| 2 | Instance 접속 확인 |
| 3 | 쿼리 수행을 위한 데이터 구성 |
| 4 | 쿼리 수행 |
| 5 | 네트워크 (public) 장애 |
| 6 | Failover 확인 |
결과
| 수행 순서 | 시나리오 | |||
|---|---|---|---|---|
| 1 | client 접속 설정 ( tbdsn.tbr ) | |||
tta1=( (INSTANCE=(HOST=192.168.51.162) (SELF_KEEPINTVL=4) | ||||
| 2 | Instance 접속 확인 | |||
| tbsql sys/tibero@tta1 select instance_name from v$instance; INSTANCE_NAME ---------------------------------------- tta1 | ||||
| 3 | 쿼리 수행을 위한 데이터 구성 | |||
| drop table tibero.test; drop table tibero.test1; create table tibero.test as select level as col1, level || '_test' as col2, trunc(level/100) as col3 from dual connect by level < 10000001; create table tibero.test1 as select level as col1, level || '_test' as col2, trunc(level/100) as col3 from dual connect by level < 10000001; | ||||
| 4 | 쿼리 수행 | |||
| ||||
| 5 | 네트워크 (public) 장애 | |||
-- Node1 ifconfig en1 down | ||||
| 6 | Failover 확인 | |||
-- Node2 select max(a.col1), max(b.col1) from tibero.test a , tibero.test1 b where a.col1= b.col1; MAX(A.COL1) MAX(B.COL1) ----------- ----------- |
네트워크(Public) 장애 Failback 기능
네트워크(public) 장애에 대한 Failbak 기능을 설명합니다.
수행
| 수행 순서 | 시나리오 |
|---|---|
| 1 | 네트워크(Public) 복원 |
| 2 | 서비스 확인 |
| 3 | tbsql로 접속 및 접속된 Instance 확인 |
결과
| 수행 순서 | 시나리오 |
|---|---|
| 1 | 네트워크(Public) 복원 |
| ifconfig en1 up | |
| 2 | 서비스 확인 |
| cmrctl show all Resource List of Node cm0 ===================================================================== CLUSTER TYPE NAME STATUS DETAIL ----------- -------- -------------- -------- ------------------------ COMMON network net0 UP (private) 10.10.10.231/29000 COMMON cluster cls0 UP inc: net0, pub: N/A cls0 file cls0:0 UP /share/tac/CMFILE/CMFILE cls0 service testdb UP Database, Active Cluster (auto-restart: OFF) cls0 db testdb0 UP(NRML) testdb, /root/tibero_engine, failed retry cnt: 0 ===================================================================== Resource List of Node cm1 ===================================================================== CLUSTER TYPE NAME STATUS DETAIL ----------- -------- -------------- -------- ------------------------ COMMON network net1 UP (private) 10.10.10.232/29000 COMMON cluster cls0 UP inc: net1, pub: N/A cls0 file cls0:0 UP /share/tac/CMFILE/CMFILE cls0 service testdb UP Database, Active Cluster (auto-restart: OFF) cls0 db testdb1 UP(NRML) testdb, /root/tibero_engine, failed retry cnt: 0 ===================================================================== | |
| 3 | tbsql로 접속 및 접속된 Instance 확인 |
| select instance_name from v$instance; INSTANCE_NAME ---------------------------------------- tta2 1 row selected. |
네트워크(Interconnect) 장애 Failover 기능
네트워크(interconnect) 장애에 대한 Failover 기능을 설명합니다.
수행
| 수행 순서 | 시나리오 |
|---|---|
| 1 | client 접속 설정 ( tbdsn.tbr ) |
| 2 | Instance 접속 확인 |
| 3 | 쿼리수행을 위한 데이터 구성 |
| 4 | 쿼리수행 |
| 5 | 네트워크(interconnect) 장애 |
| 6 | 쿼리수행결과 확인 |
| 7 | 서비스 확인 |
결과
| 수행 순서 | 시나리오 | |||
|---|---|---|---|---|
| 1 | client 접속 설정 ( tbdsn.tbr ) | |||
| tta1=( (INSTANCE=(HOST=192.168.51.161) (PORT=8639) (DB_NAME=tta) ) (INSTANCE=(HOST=192.168.51.162) (PORT=8639) (DB_NAME=tta) ) (USE_FAILOVER=(TYPE=CURSOR) (RETRY=3) ) ) | ||||
| 2 | Instance 접속 확인 | |||
tbsql sys/tibero@tta1 select instance_name from v$instance; | ||||
| 3 | 쿼리수행을 위한 데이터 구성 | |||
| drop table tibero.test; drop table tibero.test1; create table tibero.test as select level as col1, level || '_test' as col2, trunc(level/100) as col3 from dual connect by level < 10000001; create table tibero.test1 as select level as col1, level || '_test' as col2, trunc(level/100) as col3 from dual connect by level < 10000001; | ||||
| 4 | 쿼리수행 | |||
| ||||
| 5 | 네트워크(interconnect) 장애 | |||
| ifconfig en4 down | ||||
| 6 | 쿼리수행결과 확인 | |||
MAX(A.COL1) MAX(B.COL1) ----------- ----------- | ||||
| 7 | 서비스 확인 | |||
| [root@tech-tac0 cumulative]$ cmrctl show all Resource List of Node cm0 ===================================================================== CLUSTER TYPE NAME STATUS DETAIL ----------- -------- -------------- -------- ------------------------ COMMON network net0 DOWN (private) 10.10.10.231/29000 COMMON cluster cls0 DOWN inc: net0, pub: N/A cls0 file cls0:0 DOWN /share/tac/CMFILE/CMFILE cls0 service testdb UP Database, Active Cluster (auto-restart: OFF) cls0 db testdb0 DOWN testdb, /root/tibero_engine, failed retry cnt: 0 ===================================================================== Resource List of Node cm1 ===================================================================== CLUSTER TYPE NAME STATUS DETAIL ----------- -------- -------------- -------- ------------------------ COMMON network net1 UP (private) 10.10.10.232/29000 COMMON cluster cls0 UP inc: net1, pub: N/A cls0 file cls0:0 UP /share/tac/CMFILE/CMFILE cls0 service testdb UP Database, Active Cluster (auto-restart: OFF) cls0 db testdb1 UP(NRML) testdb, /root/tibero_engine, failed retry cnt: 0 ===================================================================== |
네트워크(Interconnect) 장애 Failback 기능
네트워크(Interconnect) 장애에 대한 Failback 기능을 설명합니다.
수행
| 수행 순서 | 시나리오 |
|---|---|
| 1 | 네트워크(interconnect) 복원 |
| 2 | 인스턴스 기동 |
| 3 | tbsql 로 접속 및 접속된 instance 확인 |
결과
| 수행 순서 | 시나리오 |
|---|---|
| 1 | 네트워크(interconnect) 복원 |
| ifconfig en4 up | |
| 2 | 인스턴스 기동 |
tbcm -b TBCM 7.1.1 (Build 300983) TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. Tibero cluster manager started up.
tbboot Tibero 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. | |
| 3 | tbsql 로 접속 및 접속된 instance 확인 |
SQL> select instance_name from v$instance; INSTANCE_NAME 1 row selected. |