Background Image

FORUM

조회 수 25770 추천 수 0 댓글 6
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

안녕하세요... CUBRID 4.0 HA 관련해서 질문드립니다.

 

개발 환경

Tools : STS(SpringSource Tool Suite) 2.5.1

Framework : Spring 3.0.4

DB : iBatis 2.3.4.726

 

지금 HA 구성을 위해 설정한 값은 밑에 HA 파일 설정.txt로 첨부하였습니다.

 

그리고 큐브리드 메니져 상에서 봤을때 문제가 되는 부분도 같이 올렸습니다...

 

저렇게 설정한후에...

 

Master에서

$cubird heartbeat start

$cubrid service start

실행후 30초후쯤 Slave에서 동일하게 실행했습니다...

구동은 이상없이 되었고요...

 

JDBC

database.url=jdbc:CUBRID:124.243.xxx.8:30000:test:::?althosts=124.243.xxx.20:30000&rctime=600&charset=UTF-8

 

이렇게 설정해주었습니다.

일단 Master/Slave 두개다 구동되고...

 

이상없이 웹에서 추가 등록 삭제가 됩니다...

 

그후에 Active를 죽인뒤...

SELECT는 이상없이 Slave에서 가져옵니다...

그후에 Insert를 하면 Insert한게 화면에 출력이 되지를 안습니다...

다시 그후에 Master를 살리고 웹을 다시 죽였다 살리면 Insert헀던게 이상없이 나타납니다...

 

여기서 다시 Master를 죽이면... Inster헀던게 사라집니다...

 

그리고 밑에 이미지에 첨부했듯이... 메니저상에서 저런 상태로 뜨는데...

뭐가 문제인지 찾지를 못하겠네요...

 

그럼 좋은 답변 부탁드리겠습니다~

  • ?
    tigger 2011.05.16 21:22

    안녕하세요~

    혹시 master 를 죽이셨다는게 어떻게 죽이신 것인지 알 수 있을까요?

    가령 CM을 통해 죽였다던가, 아니면 Master 장비에서 cubrid 유틸리티를 통해 죽이셨나요?

     

    CUBRID의 HA 환경에서 failover 가 되기 위해서는 Master에서 cubrid service stop으로 내리셔야 합니다.

    만약 cubrid server stop 등으로 해당 DB만을 내리신 경우 failover 가 되지 않으므로,

    원하셨던 동작이 안될 수 있습니다.

     

  • ?
    반짝이 2011.05.16 22:05
    cubrid service stop 으로 죽였습니다...

    cubrid service stop 후에 메니져에서 확인하면 Master는 Disconnect 상태가 되고...

    Slave는 Active 상태로 변합니다...

    Master가 죽은 상태에서...

    JDBC가 Slave로 접속되는거까지는 됩니다... 이상황에서 SELECT 까진 되는데

    INSERT 했을경우에... 문제가 있습니다...

    SLAVE 상에서는 INSERT 후에 DATA가 안들어 간걸로 보이는데...

    MASTER를 살린후에 확인하면 MASTER에는 이상없이 들어갑니다...

    그리고, 위에 그림파일 첨부한거에서 보시면... 느낌표가 있는데 왜그런지 모르겠습니다...

  • ?
    반짝이 2011.05.16 22:27

    질문 추가 사항입니다...

    기존에 R3.1 버젼에서 4.0 버젼으로 옮겼습니다...

    csql -S -u dba -p password -i /usr/local/CUBRID/share/scripts/check_reserved.sql test

    ...

    There are no results.

    특별히 변경해줘야할사항이 없는것으로 판단하고...

    3.1 메니져를 통해서 데이터베이스 언로드 실행

    그후에 4.0 설치후에 Manager로 Master와 Slave에 똑같이 test로 DB 생성해주고...

    페이지 크기 및 기타설정 똑같이 잡아주고 Load를 해주었습니다...

     

    Master가 Active 상태일때는 INSERT/UPDATE/DELETE/SELECT 이상없이 수행됐습니다...

    Master를 cubrid service stop로 서비스를 죽이면

    Standby HA 상태이던 Slave가 Active 상태가 되고...

    여기서 INSERT 작업을 실행하면... 데이터 추가된게 적용이 안됩니다...

    그리고 다시 Master에

    cubrid heartbeat start

    cubrid service start

    한뒤...

    CUBRID에서는 Master 복구시 현재 failover가 자동으로 안일어 난다고 메뉴얼에 나와있어서

    Slave에

    cubrid service stop을 실행했습니다...

    그럼

    standby 이던 master가 Active가 되고... 기존에 Slave에서 Insert 했던 데이터들이 보입니다...

  • ?
    tigger 2011.05.16 23:20

    Node 1 : Master,  Node 2 : Slave 라고 가정을 하고 아래 말씀 드리겠습니다.

     

    정리해 보면,

    맨 처음 failover 되어 Node 2가 Master 가 되었을때,

    insert는 수행이 되지만, Node2를 통해 select 결과가 보이지 않다가,

    Node 1을 start 후 Node 2를 재시작 하여 Node 1 이 Master, Node 2가 Slave 상태로 되었을 때는

     Node 2를 통해 select 결과가 보인다는 뜻이죠?

     

    위의 상황이라면, 맨 처음 failover 시에 insert 된 데이터는 기존의 Slave 장비와 기존의 Master장비에 모두 insert 된 데이터가 있는 것입니다.

    따라서 왜 INSERT는 되었는데 SELECT는 되지 못하였는가?? 를 생각해 보아야 합니다.

     

    1.  csql을 통한 insert 결과 확인

    ==> Node1이 Down 되었고, Node2가 Master가 된 상황에서 csql dbname@Node_1_node_name 으로 접속하여 select 한 결과를 확인 부탁드립니다.

    ==> 이 이유는 select 값을 가져오지 못한 이유가 어디에 있는지 좀 더 확인해 보기 위함입니다.

     

    2. Broker 의 log 확인

    ==> Node1이 Down 되었고, Node2가 Master가 된 상황에서, JDBC 가 접속한 Broker 의 log 를 첨부해 주실 수 있나요?

    ==> 이는 Broker쪽의 INSERT/SELECT의 리턴을 확인하여 SELECT만 실패한 이유를 확인해 보고자 합니다.

     

    3. broker 장비(124.243.xxx.8과 124.243.xxx.20)의 databases.txt 정보

    ==> 이것을 확인하는 이유는, Node 1이 Down 되었고, Node 2가 Master 가 된 상황에서 Broker 가 어떤 DB를 찾아가는지에 대한 설정이 databases.txt에 있기 때문입니다.

  • ?
    반짝이 2011.05.17 00:58

    지금 브로커쪽으로해서 다시 테스트 해보고 있습니다...

     

    아 추가적으로 메니져에서 보면 느낌표나오는거랑... HA 데이터베이스 추가 활성화 안되는거...

     

    Unknown 뜨는거 왜그런지 알수있을까요?

  • ?
    샤롱스판 2011.05.17 01:33

    일단, HA기능은 정상적으로 동작하는 것 같습니다. 다만 CM이 내부적으로  JDBC를 이용하여 연결 정보를 구성하는데, HA 구성 환경의 슬레이브 노드에 대해 연결 정보 구성에 오류가 있는 것으로 추측하고 있습니다. 개발부서에서 분석하고 있으며, 추가 정보 있으면 알려 드리겠습니다. 감사합니다~


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID를 사용해 보시기 바랍니다!!! file admin 2019.07.31 492
3031 Java sp에서 Sybase DB연결시 오류. 2 young 2010.01.12 25962
3030 오라클과의 호환성과 대용량 검색 속도 1 오004 2009.12.16 25932
3029 Cannot connect to a broker 1 sjnoh 2010.08.10 25923
» CUBRID 2008 R4.0 Beta HA 관련 질문입니다. 6 file 반짝이 2011.05.16 25770
3027 CUBRID 2008 데이터베이스 사용자 권한상속 에러. 6 윤희서 2009.01.17 25712
3026 HA관련 CUBRID Manager 에서 대시보드 문의드립니다... 2 file 반짝이 2011.07.13 25671
3025 VARCHAR 타입에 관한 질문. 2 김우람 2009.02.26 25505
3024 cubrid.jdbc.driver.CUBRIDException: 4 아르미 2009.04.03 25435
3023 프로그램 개발 후 배포 관련 3 늘푸른거북이 2009.02.12 25238
3022 중복데이터 제거 방법 좀 알려주세요. 11 김경아 2009.05.26 25155
3021 HA 구성에서 Manager로 대량등록(데이터 올리기) 확인 부탁드립니다... 5 반짝이 2011.05.19 24943
3020 ROW_NUMBER() OVER(PARTITION BY 어떻게..해야 할까요??? 5 초식곰 2011.09.09 24922
3019 datetime 값을 to_date 로 형변환 방법좀 알려주세요 1 황선욱 2013.08.20 24793
3018 mssql2005 --> cubrid 로 마이그레이션 오류 답변 부탁 드립니다. 2 Philip Park 2010.01.14 24686
3017 varchar의 최대길이가 어떻게 되나요? 2 미스트 2009.09.07 24675
3016 오라클의 Aggregation Function(집합 함수) 관련 문의 2 샤방석이 2013.11.14 24459
3015 HA구성에서 백업시 보관 로그 제거(lgar) 관련 문의드립니다. 2 반짝이 2012.01.09 24392
3014 4.0 HA ha_db_list 설정 관련 질문드립니다. 7 반짝이 2011.07.08 24265
3013 Cubrid에 iBATIS를 붙이고 있는중인데요... 2 미야프 2010.05.04 24160
3012 HA관련 추가 문제 답변부탁립니다... 3 file 반짝이 2011.12.29 24087
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 155 Next
/ 155

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2147 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales