Background Image

FORUM

2012.02.10 23:33

브로커 HA 관련 문의

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

단축키

Prev이전 문서

Next다음 문서

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

안녕하세요.


cubrid 문서를 보면 [HA 환경 설정] 에서 구조도에 Broker 1과 Broker 2가 구성되어 있습니다.

문서를 보면 master slave 간의 HA 구성은 문서에 설명되어 있는데 브로커에 관련된 부분은 없는 것 같습니다.

브로커 이중화 기능은 없는 것인지가 궁금합니다.


추가적으로 데이터베이스 HA 구성으로 운영 중 데이터베이스 서버에 장애가 발생하여 master 혹은 slave의

디스크가 장애가 날 경우 MySQL처럼 데이터베이스 덤프 후 복구한 후에 특정 시점부터 동기화 시켜

사용할 수 있는 방법이 있는지 궁금합니다.

  • ?
    손승일 2012.02.11 08:30

    안녕하세요.

    큐브리드를 사용해 주셔서 감사합니다. 문의하신 내용에 대하여 빠른 시일 내에 확인하여 알려드리도록 노력하겠습니다.

  • ?
    이용미 2012.02.13 21:30

    안녕하세요. 질문 감사 드립니다.

     

    우선, HA 구성에서의 Broker 모드에 관한 참고 문서는 [http://www.cubrid.org/manual/ko/8.4.4/ha.html#broker-mode]를 참고하시면 됩니다.

    또한, CUBRID에서는 브로커 이중화 기능 또한 지원합니다. 이는 [http://www.cubrid.org/manual/ko/8.4.4/ha.html#duplexing-brokers]를 참고하시면 될 것 같습니다.

     

    기본적으로 HA 구성은 운영 중 하드웨어, 소프트웨어, 네트워크 등에 장애가 발생하여도 지속적인 서비스를 제공하는 기능입니다. 그러므로 장애가 발생되었던 서버가 복구가 되면 특정 시점이 아닌 장애 발생 후(동기화가 끊어진 이 후)부터 복구를 자동적으로 수행됩니다.

    더욱 자세한 사항은 [http://www.cubrid.org/manual/ko/8.4.4/ha.html]를 참고하시면 될 것 같습니다.

  • ?
    freemir 2012.02.15 19:21

    답변 고맙습니다.


    제가 문의드렸던 내용과는 다소 벗어나 있는 것 같아 다시 문의드립니다.


    1. 브로커에서 데이터베이스 서버 별로 DR이 되는 것은 이해가 되며 구성하여 테스트를 진행해봤습니다.

       브로커가 master, slave로 연결을 해주는 역활을 하니 브로커가 문제가 있으면 연결이 안되는 걸로 알고 있습니다.

       그래서 브로커 서버를 1대가 아닌 2대 이상으로 구성하게 된다면 브로커의 상태를 상호간에 확인 후 이상이 있을 시

        연결을 넘겨주는 부분이 있는가 해서 문의드렸습니다.

        웹 사이트 -> 브로커 -> Master/Slave 방식이니 브로커1, 브로커2 등의 서버를 구성해서 연결 시 웹 소스 부분에서 연결을

        처리하는 것 이외에 다른 부분이 있는지 문의드렸습니다.


    2. master, slave 동작 중 하나의 서버가 중지되면 상호간의 로그를 기반으로 다시 적용하여 동기화 되는 것은 이해했습니다.

      제가 문의드렸던 내용은 예를 들어 master, slave 동작 중 slave 서버의 하드디스크가 물리적으로 장애가 생겨 새로운 디스크에

      OS 및 큐브리드 설치를 한 후 데이터베이스를 복구해야 하는데, master 는 계속 서비스 중인 상태에서 unloaddb 등을 통해 데이터베이스를 slave에 loaddb 시켰을 경우 상호간의 동기화 부분이 궁금합니다.

       master는 계속 서비스 중이므로 unloaddb 한 자료로 slave에 loaddb 후 복구한 시점 이후의 변경된 master의 내용을 어떻게

       동기화 시킬 수 있는 것인지가 궁금합니다. mysql을 자꾸 예로 들게되는데 mysql의 경우 dump 후 restore 하게 되면 log position이 있어 위치 지정하여 그 이후로 변경 부분을 적용할 수 있게 되어있어서 큐브리드에서는 어떻게 처리하는지 궁금해서 문의드렸습니다.


      질문이 다소 많아 미안합니다;;

  • ?
    샤롱스판 2012.02.16 23:43

    질문에 답변 드립니다.

    1. 브로커 이중화는 가능하지만, 브로커 장비끼리 상태 확인을 하지 않습니다. 그냥 브로커 1에 연결을 실패하면(운영자가 지정한 타임아웃값 내에 연결 실패하면), 브로커 2로 연결을 시도하는 것이고. 응용에서는 connection_url에 althosts라는 속성값으로 브로커장비 1 및 2를 지정해줘야 합니다.

    JDBC url 등록: http://www.cubrid.org/manual/ko/8.4.4/ha.html#jdbc ,  

    CCI url 등록: http://www.cubrid.org/manual/ko/8.4.4/ha.html#cci

    PHP url 등록: http://www.cubrid.org/manual/ko/8.4.4/ha.html#php 

    2. 마스터는 정상이고, 슬레이브 DB가 이상이 생긴 경우. 슬레이브 DB에 복제를 재구축해야 합니다. 이를 위해 별도의 스크립트를 제공하고 있습니다. 슬레이브 장비에서 CUBRID만 설치하고, 마스터와 설정값을 동일하게 한 상태에서 이 복제재구축 스크립트를 돌리면, 마스터 장비를 온라인 백업하면서 마스터 DB와 동일한 DB를 슬레이브 장비에 구축합니다. 마스터에 의한 서비스는 정상 운영되구요..

    http://www.cubrid.org/manual/ko/8.4.4/ha.html#rebuilding-replication

  • ?
    freemir 2012.02.17 20:29

    친절한 답변 고맙습니다.

    많은 도움이 됐습니다.

  • ?
    windyhan 2012.02.24 23:38

    참고로 2번 사항에서 slave DB 의 재구축을 위해 master DB를 unload 후, slave DB 에 loaddb 를 하는 경우에

    master DB 에서 unloaddb 시 생성된 스키마 스크립트를 사용하면,

    master DB와 slave DB 의 레코드 이미지가 서로 달라 복제가 안될 수 있습니다.

     

    CUBRID HA 는 기본적으로 master DB 의 트랜잭션 로그를 사용하기 때문에 slave 와의 레코드 이미지가 달라지면  복제가 깨질 수 있습니다.

     

    * 따라서 Slave DB를 재구축을 하기 위해서 항상 제공되는 재구축 스크립트 등을 이용하여, slave DB 를 재구축 하기 바랍니다.

     

    감사합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4442
3827 전송 연결 현재 연결은 원격 호스트에 의해 강제로 끊겼습니다 1 바람바람 2013.04.12 20695
3826 java.lang.ClassNotFoundException: cubrid.jdbc.dirver.CUBRIDDriver 에러에 관한문의 4 삽질중 2009.05.12 20660
3825 윈도우7+iis(7.5)+php5+cubrid에 xe 설치 후에 초기하면에 빨간색 글들. 1 Hyuk-kwony 2009.12.26 20651
3824 MySQL의 LOAD DATA INFILE 기능은 CUBRID에 없나요? 4 공기청정기 2009.05.13 20624
3823 큐브리드 deb 패키징중... 8 강분도 2009.03.19 20578
3822 jdbc 사용중 테이블 데이터 입력문제 2 Dezert 2011.12.22 20502
3821 rownum은 order by에 영향을 안 받네요 2 안지민 2009.03.04 20484
3820 델파이 등 4GL 언어에서 사용할 수 있는 인터페이스는 없나요? 1 이상탁 2009.05.27 20386
3819 백업시 lgar 파일이 지워지지 않는 문제 6 동현 2011.06.11 20360
3818 attempt to exceed the maximum allowed nesting level(400) 에러 문의 finkle 2016.11.24 20340
3817 HA 문의 드립니다. 5 뽀로꾸 2011.05.26 20226
3816 큐브리드에 데이타 타입 지정문제 4 지니보이 2009.12.26 20202
3815 테이블 목록확인 (show tables) 방법 문의 3 mkengnr 2011.09.20 20174
3814 HTML 게시판 작성후 데이타베이스 연결 방법? 4 하늘과땅 2011.12.09 20150
3813 java.lang.ClassNotFoundException 에러가 납니다. 3 코딩셔틀 2010.11.03 20110
3812 C++(MFC 아님)에서 프로그래밍 작성을 하려면 어떤것을 사용해야 하나요? 6 나동호 2009.03.24 20053
3811 cannot communicate with the broker 7 차가워여 2009.09.28 20005
3810 에러 코드 질문 드립니다. 1 빵돌이 2009.05.02 19969
3809 select @@identity 1 펭귄 2009.06.27 19896
3808 MS949를 UTF-8 변경 방법 1 혀니짱 2011.03.25 19850
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 ... 200 Next
/ 200

Contact Cubrid

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