Background Image

FORUM

2014.01.07 00:42

c# asp.net HA및 브로커

조회 수 11877 추천 수 0 댓글 12
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
 CentOS 6.3_x64(가상화 서버)
CUBRID Ver.
8.4.3.3086
CUBRID TOOL Ver.
8.4.3.3086
응용 환경(API)
asp.net c# 4.0

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

c#  asp.net상에서 HA상에서 db가 죽거나 ha가 죽을경우 다른쪽 HA로의 이동은 어떻게 설정하나요

jdbc는host를 여러개 설정할수 있는 것으로 나옵니다.

c#은 이렇게 설정할수가 없는 것인가요?

그리고 브로커가 한개이상일 경우 컨넥션을 한쪽만 잡으면 한쪽으로 브로커만 사용되는 것인지도 알고 싶습니다.

 

  • ?
    이용미 2014.01.07 02:38

    HA 환경의 경우, 응용은 JDBC, CCI, PHP 환경에서 접근이 가능합니다.

    아래와 같이 사용하실 수 있으니 참고해 주세요.

    - JDBC : http://www.cubrid.org/manual/ko/8.4.4/ha.html#jdbc

    - CCI : http://www.cubrid.org/manual/ko/8.4.4/ha.html#cci

    - PHP : http://www.cubrid.org/manual/ko/8.4.4/ha.html#php


    Broker 서버가 여러대인 경우 또는 Broker가 하나의 서버에 여러개가 생성되어 있다고 하더라고, 응용에서 설정해준 Broker를 통하여만 응용과 통신하여 결과를 출력하게 됩니다. 그러므로 적절하게 응용에서 분배하여 사용하시는 것이 좋습니다.


    감사합니다.

  • ?
    알칸펠 2014.01.07 03:56

    c#용 connectionstring는 업나요?

  • ?
    이용미 2014.01.07 18:48

    C#을 포함한 Windows 프로그래밍 언어를 이용하는 경우, HA 구성 시 연결 스트링에 사용되는 althost를 사용하실 수 없습니다.

    참고 부탁 드립니다.

  • ?
    알칸펠 2014.01.07 19:13

    답변감사합니다.

    그럼 HA상에서 NODE A의  Broker/Server/heartbeat중 어느 것이 중지 되면 NODE B로 이동을 하나요?

    아니면 이것도 서버에서 자동을 이동되는 것은 불가능 한것인가요?

     

  • ?
    이용미 2014.01.07 20:25

    답변 추가합니다.

    cubrid.org의 QnA [http://www.cubrid.org/questions/719898]를 기반으로 확인한 결과, 해당 질문에 작성된 답변처럼 구성하시면 ADO.Net에서는 HA를 구성하여 사용이 가능합니다.


    NodeA의 프로세스 중, Broker/Server/Heartbeat 하나라도 정지가 되면, NodeB의 것을 이용하게 됩니다.

    NodeA의 Broker가 정지되는 경우는 설정값에 따라 달라지므로 아래 링크된 매뉴얼을 참고하여 주세요.

    [Broker PREFERRED_HOSTS 파라미터 관련 : http://www.cubrid.org/manual/ko/9.2.0/ha.html#broker-mode ]

    NodeA의 Server 혹은 Heartbeat이 정지되는 경우, 연결 스트링이 정상적인 경우, NodeB의 DB Server에 연결하게 됩니다.

    자세한 내용은 아래 링크된 매뉴얼을 참고하여 주세요.

    [failover와 failback : http://www.cubrid.org/manual/ko/9.2.0/ha.html#failover-failback ]

    [서버 이중화 - 서버 failover : http://www.cubrid.org/manual/ko/9.2.0/ha.html#id7 ]

  • ?
    알칸펠 2014.01.07 20:49

    위와 같이 설정은 이미 되어 있습니다.

    문제는  NodeA의 프로세스 중, Broker/Server/Heartbeat 를 명령어로 임으로 stop을 했을경우.

    NODE B로 넘어 는 가지만 NODE B가 cubrid changemode testdb@node B로 확인을 하면

     to-be-active상태로 멈춰 있다는 것입니다.

    싸이트는 띵겨 나오는 것도 아니고 계속 돌기만 하는 상황이 발생합니다.

    하지만 명령어로 Cubrid changemode -f -m testDB@node b라고 입력을 하면 active로 변하면서 정상적으로 작동을 한다는 것입니다.

    혹시 임으로 stop을 해서 node A와 node B로 정상적으로 이동을 하는 것을 확인하는 것은 안되는 것인가요?

  • ?
    이용미 2014.01.07 22:06

    Stop 명령어를 이용하여 Heartbeat을 중지하셔도 HA는 정상적으로 FailOver 됩니다.

    NodeB가 to-be-active 상태에서 active로 정상적으로 넘어가지 않는 상황은 다른 문제 같은데요.

    가능하시면, Slave를 재구성하신 후 재확인 하시는 것이 좋을 것 같습니다.


    참고로, changemode 유틸리티 사용 시, 강제로 현재 상태를 변경하는 것은 권장하지 않으니 참고해 주세요.

    감사합니다.

  • ?
    알칸펠 2014.01.07 22:41

    그럼 stop 명령으로 정지를 한 경우

    cubrid changemode node B를 확인 했는데

    The Server 'node B' 's current HA running mode is to-be-acive로 나온다면 기달려야하는 것인가요

    설정은 다시 확인을 해보아도 설명서에 나온대로 설정하였습니다.

  • ?
    알칸펠 2014.01.07 22:47

    to-be-active : 스탠바이 서버가 failover 등의 이유로 인해 액티브 서버가 되기 전의 상태이다. 기존의 마스터 노드로부터 받은 트랜잭션 로그를 자신의 서버에 반영하는 등 액티브 서버가 되기 위한 준비를 한다. 해당 상태의 노드에는 SELECT 질의만 수행할 수 있다.

    설명서에도 다음과 같이 설명되있지만 select를 할수가 업습니다.

  • ?
    이용미 2014.01.07 23:09

    HA 구성 후, Heartbeat을 구동하였었고, FailOver를 수동으로 수행하신 경우라면, NodeB가 active 상태가 될때까지 기다려 주셔야 합니다.

    다만, to-be-active 상태에서 active 상태로 변경되는 것을 그리 오랜 시간이 걸리지는 않을 것 입니다.


    to-be-active 상태에서 Select가 안된다고 하셨는데, 오류가 출력되는 것은 없는지요?

  • ?
    알칸펠 2014.01.08 18:28

    다른곳에는 오류가 업고 데이터베이스 오류에 다음과 같은 오류메세지가 있습니다.

    file ../../src/connection/server_support.c, line 2569 ERROR CODE =-4 Tran = 2, CLIENT = NODE B:emgr_server(27195), EID = 1 : Has been interrupted.

    file ../../src/connection/server_support.c, line 2569 ERROR CODE =-4 Tran = 3, CLIENT = NODE B:emgr_server(27540), EID = 2 : Has been interrupted.

    뭔가 중단되어 있다는거 같은대요 이것만 보고서는 무엇을 봐야할지 알수가 없습니다.

  • ?
    알칸펠 2014.01.08 19:14

    위의 상태는 cubrid hearbeat status로 확인하면 NODE B가 state master로 되어 있고

    cubrid changemode testdb@nodeB 로 확인하면 to-be-active로 되어 있습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 1158
1716 TIMEZONE 질문 1 은팔 2014.01.08 12400
» c# asp.net HA및 브로커 12 알칸펠 2014.01.07 11877
1714 매니저 오류 문의 4 file Kai 2014.01.06 10971
1713 큐브리드 매니저 connectio refused 1 Kai 2014.01.06 9797
1712 9.2 업그레이드 후 spread.datasource가 작동 안함!!!!! 한종희 2014.01.04 11145
1711 Java 저장 함수/프로시저 문의 1 초도한정 2014.01.03 10382
1710 함수/저장프로시저 타입 오류 관련 문의합니다.(ado.net한글깨짐 포함 수정) 2 file 아이쿠두야 2014.01.01 12411
1709 8.3.1 --> 9.2 업그레이드 후 한글 깨짐. ( vb6.0 + MS949 ) 2 한종희 2013.12.28 22863
1708 시스템 오류 코드 193 발생 1 file 규짱 2013.12.26 15608
1707 서버 연결중 연결 대기 시간이 초과하였습니다. 1 남자 2013.12.25 13735
1706 쿼리 브라우져 가져오기 오류 질문 1 joke7 2013.12.24 8791
1705 [연결정보]브로커포트설정 관련 문의. 1 file 씨큐 2013.12.20 11463
1704 Invalid buffer position! 오류 12 알칸펠 2013.12.20 12602
1703 큐브리드에서 제공되는 CUBRIDXADataSource 1 jobis 2013.12.18 9104
1702 lockdb 질문입니다. 1 오니오니 2013.12.17 10651
1701 큐브리드 이중화 관련하여 설정 내용 문의드립니다. 1 신나여 2013.12.17 12330
1700 cm_admin 으로 사용자를 추가해도 쿼리 브라우저에서 접속 불가합니다..도와주세요 1 asuraiv 2013.12.10 11876
1699 csql를 사용하여 스크립트를 돌리게 되면 에러가 납니다. 1 secret 애정결핍 2013.12.10 6
1698 쿼리 브라우져 가져오기 오류 질문 4 joke7 2013.12.08 10861
1697 SQL 인라인뷰 응답속도 개선 문의 6 knight 2013.12.07 13123
Board Pagination Prev 1 ... 81 82 83 84 85 86 87 88 89 90 ... 171 Next
/ 171

Contact Cubrid

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