Background Image

FORUM

2024.08.07 10:42

master-slave-replica 구성

조회 수 107 추천 수 0 댓글 4
?

단축키

Prev이전 문서

Next다음 문서

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


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


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

안녕하세요. master-slave-replica 구성을 해보려고 시도중인데요.

 

먼저 설정 상태를 말씀드리자면

 

- cubrid.conf

master : ha_mode=on

slave : ha_mode=on

replica : ha_mode=replica

 

- cubrid_ha.conf

master : 

#[common]
ha_port_id=59901
ha_node_list=cubrid@k8s-master:k8s-node1
ha_replica_list=cubrid@k8s-master:k8s-node2
ha_db_list=db1
ha_apply_max_mem_size=500
ha_copy_sync_mode=sync:sync:sync
#ha_copy_log_max_archives=1

 

slave : 

#[common]
ha_port_id=59901
ha_node_list=cubrid@k8s-master:k8s-node1
ha_db_list=db1
ha_apply_max_mem_size=500
ha_copy_sync_mode=sync:sync:sync
#ha_copy_log_max_archives=1

 

replica:

#[common]
ha_port_id=59901
ha_replica_list=cubrid@k8s-master:k8s-node2
ha_db_list=db1
ha_apply_max_mem_size=500
ha_copy_sync_mode=sync:sync:sync
#ha_copy_log_max_archives=1
 

 

- databases.txt

master :

#db-name        vol-path                db-host         log-path                lob-base-path
db1             /home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1      k8s-master:k8s-node1:k8s-node2          /home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1      file:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1/lob
 

slave:

#db-name        vol-path                db-host         log-path                lob-base-path
db1             /home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1      k8s-master:k8s-node1          /home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1      file:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1/lob

 

replica :

#db-name        vol-path                db-host         log-path                lob-base-path
db1             /home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1      k8s-master:k8s-node2          /home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1      file:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1/lob

 

로 설정되어 있습니다.

 

그런데 master와 slave는 정상적으로 동작이 되는데, replica 를 cubrid service start로 기동 시 @ cubrid master start 상태에서 아무 응답이 없으며

 

cubrid_utility.log 에는 24-08-06 21:31:42.997 (16397) FAILURE: Master does not exist. Try to start it again.
24-08-06 21:31:43.011 (16397) FAILURE: "ha_node_list": Unknown system parameter or bad value. 와 같은 에러가 떨어지고 있습니다.

 

처음 시도 시 replica의 cubrid_ha.conf에 ha_node_list로 적고 기동하였고 이후 ha_replica_list로 수정 후 재기동 하였지만 동일하게 위의 에러가 떨어지네요.

 

혹시 설정 중 잘못된 부분이 있을까요?

 

DB버전은 CUBRID 11.3 (11.3.1.1142-bee7aa8) (64bit release build for Linux) (May 18 2024 04:32:25) 이며 os 버전은 CentOS Linux release 7.9.2009 (Core) 입니다.

 

  • ?
    큐브02 2024.08.07 10:50

    안녕하세요 큐브리드입니다.
    현재 설정하시려는 호스트 정보가 아래와 같을까요?
    Master : k8s-master
    Slave : k8s-node1
    Replica : k8s-node2
    위 내용이 맞으시다면 ha_node_list와 ha_replica_list는 모두 동일하게 아래와 같이 작성해주셔야 합니다.(Matser,Slave,Replica 동일)
    ha_node_list=cubrid@k8s-master:k8s-node1
    ha_replica_list=cubrid@k8s-node2

     

    또한 ha_copy_sync_mode의 경우 ha_node_list에 지정한 노드의 수만큼 설정하는 것으로, 레플리카의 경우 작성하지 않으셔도 됩니다.

    따라서 ha_copy_sync_mode=sync:sync 와 같이 적어주셔도 무방할 것 같습니다.


    감사합니다.

  • ?
    초보자 2024.08.07 17:59
    설치 동작은 정상적으로 성공하였습니다 감사합니다.

    그런데 failover 테스트 후 replica와 slave에서 ha_status api를 조회해보면 master 노드의 정보가 조회되지 않습니다.

    결과는 다음과 같습니다.

    master :
    {
    "__EXEC_TIME" : "52 ms",
    "current_node" : "k8s-master",
    "current_node_state" : "master",
    "ha_info" : [
    {
    "applylogdb" : "db1@localhost:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-node1",
    "applylogdb_pid" : "32599",
    "applylogdb_state" : "registered",
    "copylogdb" : "db1@k8s-node1:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-node1",
    "copylogdb_pid" : "32597",
    "copylogdb_state" : "registered",
    "dbname" : "db1"
    }
    ],
    "nodeA" : "k8s-node2",
    "nodeA_state" : "replica",
    "nodeB" : "k8s-node1",
    "nodeB_state" : "slave",
    "note" : "none",
    "status" : "success",
    "task" : "ha_status"
    }

    slave :
    "current_node" : "k8s-node1",
    "current_node_state" : "slave",
    "ha_info" : [
    {
    "applylogdb" : "db1@localhost:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-master",
    "applylogdb_pid" : "2321",
    "applylogdb_state" : "registered",
    "copylogdb" : "db1@k8s-master:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-master",
    "copylogdb_pid" : "2318",
    "copylogdb_state" : "registered",
    "dbname" : "db1"
    }
    ],
    "nodeA" : "k8s-node2",
    "nodeA_state" : "replica",
    "nodeB" : "k8s-node1",
    "nodeB_state" : "slave",
    "note" : "none",
    "status" : "success",
    "task" : "ha_status"
    }

    replica :
    {
    "__EXEC_TIME" : "52 ms",
    "current_node" : "k8s-node2",
    "current_node_state" : "replica",
    "ha_info" : [
    {
    "applylogdb" : "db1@localhost:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-node1",
    "applylogdb_pid" : "18743",
    "applylogdb_state" : "registered",
    "copylogdb" : "db1@k8s-master:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-master",
    "copylogdb_pid" : "18737",
    "copylogdb_state" : "registered",
    "dbname" : "db1"
    },
    {
    "applylogdb" : "db1@localhost:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-master",
    "applylogdb_pid" : "18741",
    "applylogdb_state" : "registered",
    "copylogdb" : "db1@k8s-node1:/home/cubrid/CUBRID-11.3.1.1142-bee7aa8-Linux.x86_64/databases/db1_k8s-node1",
    "copylogdb_pid" : "18739",
    "copylogdb_state" : "registered",
    "dbname" : "db1"
    }
    ],
    "nodeA" : "k8s-node2",
    "nodeA_state" : "replica",
    "nodeB" : "k8s-node1",
    "nodeB_state" : "slave",
    "note" : "none",
    "status" : "success",
    "task" : "ha_status"
    }
  • ?
    kisoo 2024.08.08 11:25
    CUBRID Manager Server (CMS)의 원래 목적은 CUBRID Manager (CUBRID Admin)을 지원하는 것이었습니다.
    실행하신 'ha_status' CMS API는 서버에서 "cubrid hb status" 명령을 실행하여 client에게 전달합니다.

    이 명령이 'master/slave/replica'의 정보를 모두 제공하나,
    CMS가 이중 처음 2개의 Node 정보 만을 client에게 전달하도록 되어있습니다.
    'master' node의 정보가 3번째 위치하다보니 master node 정보가 전달되지 않은듯 합니다.
    API의 결과 정보 확장에 대해서는 내부적으로 논의하겠습니다.

    원하시는 정보가 제공이 안되는점 죄송하게 생각합니다.
  • ?
    초보자 2024.08.08 12:07
    네 감사합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 4 admin 2024.04.23 2399
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 6549
4086 kill transaction 문의드립니다 2 잘했어요 2024.09.05 31
4085 atomikos 관련 문의 드립니다. xlxm 2024.09.04 20
4084 구축한 db에 backup db 정보를 입력하고 싶습니다. 1 박성호_0403 2024.09.03 28
4083 큐브리드 getQueryplan() 추가 질문입니다. 2 초보자 2024.09.03 24
4082 rest api token 만료 기준 문의드립니다 3 잘했어요 2024.09.03 28
4081 MERGE INTO조건문 질문드립니다. 6 대청 2024.09.03 45
4080 큐브리드 recompile 힌트 질문입니다. 4 초보자 2024.09.02 39
4079 큐브리드 매니저 서버 OOM 관리 방법 문의드립니다. 2 newkr 2024.08.28 44
4078 위의 플랜 조회 추가 질문입니다. 4 초보자 2024.08.28 49
4077 Cubrid Manager Server 관련 OOM이 발생하는 버전 정보를 확인 요청드립니다. 4 newkr 2024.08.27 70
4076 restordb 1 박성호_0403 2024.08.27 38
4075 플랜조회 질문입니다. 4 초보자 2024.08.27 60
4074 replication 질문입니다. 1 초보자 2024.08.23 43
4073 cubrid heartbeat status -v 및 failover 질문입니다. 11 초보자 2024.08.22 102
4072 statdump api 질문 드립니다, 1 ijuru 2024.08.22 44
4071 파이선 드라이버 설치 3 코드보이 2024.08.21 65
4070 DB 용량 확인 쿼리 질문드립니다. 3 shl 2024.08.14 88
4069 Cubrid 사용 도중 한쪽 서버가 다운되어 그 이후 이중화 해제 후 한쪽만 가동중입니다. 3 로키 2024.08.08 90
4068 Dbeaver master, slave 11 초보자 2024.08.08 164
» master-slave-replica 구성 4 초보자 2024.08.07 107
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 205 Next
/ 205

Contact Cubrid

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