HA 구성오류 답변 부탁드립니다.

by 영길 posted Oct 23, 2013

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

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


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
리눅스에서 64bit를 사용하고 있구요 9.2버전에서 ha구성을 하려고 하고있습니다. 장비는 두대이구요

튜토리얼 그대로 따라서 해보고있는데요. 잘안되네요


일단 설정후 cubrid heartbeat start 명령을 하면

@ cubrid heartbeat status  이란 말 이외에 아무것도 표시되지 않습니다.


cubrid changemode yggg@localhost 명령을 하면

The server 'yggg@localhost''s current HA running mode is standby.

메세지가 뜨는데 마스터 노드의 경우도 standby가 뜨구요 더이상 진행이 안되는군요


그리고 두번째 cubrid heartbeat start 명령을 했을때,  HA processes 가 fail  뜨는군요.

첫번째 실행에는 cubrid heartbeat start 명령에는 success가 나왔지만  계속 standby여서 다시 실행해보니 fail이 뜨더군요.


@ cubrid heartbeat start

@ cubrid master start

++ cubrid master is running.

@ HA processes start

@ cubrid server start: yggg

++ cubrid server 'yggg' is running.

@ copylogdb start

++ copylogdb start: success

@ applylogdb start

++ applylogdb start: success

++ HA processes start: fail

++ cubrid heartbeat start: fail


설정은


cubrid.conf

[service]


service=server,broker,manager


[common]

data_buffer_size=512M

log_buffer_size=4M

sort_buffer_size=2M

max_clients=100

cubrid_port_id=1523

db_volume_size=10240M

log_volume_size=512M

log_max_archives=100

force_remove_log_archives=no

ha_mode=on


cubrid_ha.conf

[common]

ha_port_id=59901

ha_node_list=cubrid@xxx:xxx                                  <---xxx는 ip메칭했습니다. etc/hosts에 매칭 잘 되어있구요~

ha_replica_list=cubrid@xxx

ha_db_list=yggg

ha_copy_sync_mode=sync:sync

ha_apply_max_mem_size=500


copylogdb.err

- ERROR *** file ../../src/transaction/log_writer.c, line 1335 ERROR CODE = -1039 Tran = 2, EID = 1

log writer: log writer started. mode: 3.


 - ERROR *** file ../../src/communication/network_cl.c, line 190 ERROR CODE = -199 Tran = 2, EID = 2

Server no longer responding.... Invalid argument


- ERROR *** file ../../src/transaction/transaction_cl.c, line 674 ERROR CODE = -111 Tran = 2, EID = 3

Your transaction has been aborted by the system due to server failure or mode change.


- ERROR *** file ../../src/communication/network_cl.c, line 190 ERROR CODE = -199 Tran = -1, EID = 4

Server no longer responding.... Invalid argument


*** The previous error message is the last one. ***



 - ERROR *** file ../../src/transaction/log_writer.c, line 1335 ERROR CODE = -1039, Tran = 2, EID = 5

log writer: log writer started. mode: 3.


*** The previous error message is the last one. ***


~                                                                       


그리고 

database.txt 에서 yggg의 host명에 xxx:xxx로 잘 고쳐주었습니다.

답변 부탁드립니다.


또 하나 궁금한건 ha_port_id 말인데요...내부 장비들간 네트웤에서 ha_port_id 방화벽이 문제가 될수 있나요?

장비들끼리는 내부에서는 장비들끼리 통신하는데 port방화벽은 문제가 되지 않거든요.내부에 같이 있는 장비기 때문에 방화벽을 풀지는 않았구요 방화벽을 함부로 풀수없는 상황이여서요~~만약 방화벽때문에 문제라면 방화벽풀지 않고는 방법이 없나요?

같은장비에서 다른 DB 레플리카 설정하는데 방화벽문제가 된 적은 한번도 없었거든요.

실제 방화벽을 풀어노코 큐브리드의 ha mode를 사용해야한다면 실제 보안이 중요하게 생각되는 장비에서 사용이 불가능한건가요?



Articles