Skip to content

2009.11.19 17:06

MySQL 클러스터

조회 수 10077 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

특징
99.999%의 고가용성의 무정지 시스템 구축과 운영
메인 메모리 또는 하드디스크 기반의 고성능 데이터베이스 구현
매우 빠르고 자동적인 FailOver 시스템
유동적이고 병렬적인 분배구조 시스템
별도의 라이센스 및 제반비용이 필요없는 저렴한 구축비와 유지비

MySQL 클러스터의 필요성
MySQL-Replication 확장의 제약 : 데이터 입력 및 업데이트가 마스터서버에 의존적이기 때문에 시스템 확장시 슬레이브서버의 증설은 용이하지만 마스터서버의 증설에는 어느정도 제약이 따르게 됩니다.
클러스터 구현시 SQL-Node 의 서버군은 각 서버가 데이터 입/출력을 모두 처리하는 형태로 구현됩니다.

구현방법
MySQL 클러스터 서버 구성을 위해서 총 3개의 서버군(Node)을 필요로 합니다.

1. MGM-Node
클러스터 구성의 전체적 관리를 담당합니다.
 - 클러스터상태 모니터링(각 노드들 상태확인)
 - 구성된 데이터베이스의 백업 관리
Management Server 중 한대는 Primary Server로서 기능을 하다가 Fail 시 Standby Server가 임무를 수행합니다.

2. Data-Node
입력된 데이터베이스를 저장하는 역할을 수행합니다.
각 Data-Node 에 저장되는 모든 데이터베이스는 메모리에 유지시켜 신속한 응답을 지원합니다.
(한비로는 적정한 메모리를 제시할 것입니다.)
새로 출시된 MySQL5.1 버전부터는 하드디스크를 기반으로 저장하는 것이 가능합니다.
(ndb를 디스크 기반으로 생성하더라도,인덱스(index)를 포함하는 컬럼은 메모리에 저장됩니다.)
 - 실제 데이터 스토리지 담당.
 - 복제/파티셔닝/Fail-over 애플리케이션 처리.
 - Data Node 는 Online 상에서 추가 및 제거가 불가능(필요시 클러스터 재시작)

3. SQL-Node
Data-Node로 저장될 데이터를 전달하거나, Data-Node의 데이터를 Application의 요청에 응답하는 역할을 수행합니다.


구성을 위한 최소사양은 3대의 서버로 가능하며, 무정지 시스템을 위한 최소권장사양은 총6대 이상의 서버가 필요합니다.
· 최소사양 : Management-Node 1대, Data-Node 1대, SQL-Node 1대
· 권장사양 : Management-Node 2대, Data-Node 2대, SQL-Node 2대
 (사용규모에 따라서 Data-Node 및 SQL-Node 서버군의 추가 증설이 가능합니다.)


Mysql-Dual-Master-Replication
Mysql-Replication은 마스터로 설정된 MySQL서버의 데이터를 슬레이브로 설정된 다수의 MySQL서버의 데이터와 동기화시켜 실시
   간 백업 및 부하 분산을 위해서 사용하는 것입니다.
이를 이용해 2대의 마스터 서버를 구성해 데이터 업데이트시 각 마스터 서버에 동일하게 적용될 수 있도록 하는 기술입니다.

Dual-Master-Replication의 필요성
단일 Master&Slave-Replication의 취약점 : Master서버의 장애시 마스터서버를 재구성하는 작업이 수동으로 진행됩니다.
Mysql-Cluster에 비해 직관적인 사용환경 : 명시적인 파일로서 데이터가 존재하기 때문에 일부데이터를 복원 또는 기타작업시 보다
   빠르고 상황에 따른 유연한 작업수행이 가능합니다.

구현방법 1
Master-Server 두대가 동일하게 작동하므로 서버중 한대가 Fail시 나머지 서버가 계속해서 임무 수행 각 서버에 동일한 데이터가
   저장되므로 어플리케이션 접근에 의한 부하를 분산시킬 수 있습니다.

구현방법 2
Master-Server 중 한대는 Primary Server로서 기능을 하다가 Fail시 Standby Server가 임무를 수행 데이터 입력(Insert, Update,
   Delete)은 모두 마스터 서버에서 이루어지고, 데이터 불러오기(Select)는 슬레이브 서버들이 담당하게 되어 Select 쿼리가 많은
   사이트에서 최적의 성능을 발휘할 수 있습니다.
실시간으로 데이터 복제가 가능하며, 서버에 거의 영향을 주지 않습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
46 MySQL 4.1 이상에서 한글 사용 ADMINPLAY 2009.09.28 7455
45 mysql 초간단 설치 ADMINPLAY 2009.10.15 6820
44 mysqli 동적모듈 추가 file ADMINPLAY 2009.11.01 9545
43 Mysql 5.0.67 Cluster 소스설치 구성하기 ADMINPLAY 2009.11.19 10032
42 HeartBeat를 이용한 MySQL HA 구성 ADMINPLAY 2009.11.19 10486
» MySQL 클러스터 ADMINPLAY 2009.11.19 10077
40 Mysql Replication(Master, Slave) 설정 ADMINPLAY 2009.11.19 9863
39 MySQL Replication ADMINPLAY 2009.11.19 8245
38 MySQL Replication(복제) ADMINPLAY 2009.11.19 7951
37 리눅스를 이용한 클러스터링 구축법 ADMINPLAY 2009.11.19 10888
36 Mysql bin log 로테이션 방법 ADMINPLAY 2009.11.26 9714
35 MySQL 데이터 정리후에도 용량변동이 없을 경우 ADMINPLAY 2009.12.31 8784
34 Starting MySQL.Manager of pid-file quit without updating fi[실패] ADMINPLAY 2010.01.28 20024
33 Redmine database를 복구 하고자 할 때 file l2zeo 2010.03.06 15806
32 MySQL Error 2006 : MySQL server has gone away 해결하기 l2zeo 2010.03.08 12783
31 PHP5와 MySQL5 연동시 한글 인코딩 문제 해결방법 (UTF-8으로의 변환) 1 l2zeo 2010.03.08 12765
30 Another app is currently holding the yum lock; waiting for it to exit 해결법 l2zeo 2010.03.08 18425
29 MySQL 명령어 정리 1 l2zeo 2010.03.08 10412
28 lower_case_table_names=1 ADMINPLAY 2010.04.02 18210
27 mySQL 설치 ADMINPLAY 2010.05.03 13083
Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234