db족은 무뇌한입니다.

짱짱맨   
   조회 1996   추천 0    

쪽팔리면 질문하지 맙시다. 소중한 답변 댓글을 삭제하는건 부끄러운 일 입니다 

현재 고객사에서 mysql 로 서비스중인데 이중화 구성이 아닌 싱글로 사용하고 있는거 같습니다

Mysql 을 A/S 구성하려면 mysql ent 로 가야하는걸로 알고있는데


마리아 db를 알아보니 A/S 구성이 아닌 3 노드 구성으로만 인터넷에 나오는데


마리아 디비를 A/S 구성으로 할수 없는것인가요?

짧은글 일수록 신중하게.
술이 2024-05
쉬워요.
윈도우 클러스터 쓰면 해결됩니다.
     
짱짱맨 2024-05
아 참고로.. 리눅스서버 입니당..
시도니 2024-05
라이선스로는 잘 모르겠는데,,,

replication 기능이 있긴 합니다.

문제는 이게 완전동기화 방식은 아니고 한쪽에서 insert / update 가 일어나면 그것이 완료되고 나서 복제 DB에 복제를 하게 되므로

Async 방식으로 기록됩니다.

Windows / Linux / Unix OS 에 Cluster S/W 를 이용해 공유볼륨을 구성해 DB를 구성하면  Active 에서 장비가 죽을 경우, Active 장비를 Fancing  처리하고

Standby 에서 공유 볼륭을 붙이고 서비스를 계속하게 하는 방식입니다.

앞서 3노드 구성은 galera cluster 구성을 이야기 하시는 것 같습니다.

galera cluster 는 Oracle RAC 처럼 실시간 RW/RO 를 동시에 처리하게 만든 cluster 구성입니다.

그래서 Insert/update 와 search 를 분산함으로써 성능을 높이는 구조입니다.

이것은 좀 연구가 필요합니다.
     
dateno1 2024-05
보통은 그정도로 충분하긴합니다

엄청나게 무거운 쿼리가 아닌 이상 일반적 지연 시간 1초 미만이므로 실질적으로 동시에 처리된다고 볼 수 있는 수준이니까요

다만 동시에 너무 많은 쓰기가 발생했을때 무결성같은게 문제될꺼같네요
올닉스 2024-05
대부분의 db가 log를 먼저 만들고 dbspace에 기록합니다.
그리고 log를 standby로 복제해서 다시 dbspace에 기록하는데 mariadb도 replication검색하니까 나오네요.
그리고 보통 a는 읽고쓰고/s는 읽기만
별해는아해 2024-05
방식 1 : 스토리지 공유방식을 이용한 HA 방식
--> 리눅스가 readhat 같은 상용 제품을 사용해야될거예요
스토리지 공유방식이라 스토리지가 san 이나 iscsi 같은 방식 필수
stand by 서버는 평소에는 사용할수 없죠
https://achchusnulchikam.medium.com/deploy-high-availability-cluster-on-rhel-8-using-shared-storage-b5af817784e2


방식 2 : mysql replication + 자동 fail over & proxy 방식
--> 몇가지 솔류션이 있으며, 무료/유료 각각 있지만, 이러한 방식은 손이 좀 많이 가는 방식이라, 신중히 생각하세요
stand by 서버를 평소에도 읽기 전용으로 사용 가능
공유하는게 전혀없고, 변경분을 active 서버(master)에서 stand by 서버(slave)로 전송해서, 반영하는 구조
그냥 mysql replication 만 적용해도 되긴하나, 장애시, 수동으로 전환해야되는 번거로움이 있고, ip 문제도 있어서,
보통 다운타임이 짧아야된다면, 자동 fail-over시켜주는 솔류션은 mysql 앞단에 구성하죠
https://severalnines.com/blog/how-to-automatically-manage-failover-mysql-database-moodle/


방식 3 : 클라우드로 전환
개인적으로는 이게 제일 속편한 방식이긴한데, 클라우드로 전환이라는 문제가 있긴하지만,
인프라 관리할 규모와 인력이 없고, 서비스 안정성이 중요하다면, 선택해볼만 하다고 보네요


방식 4 : 가상화 적용
유료 가상화 제품중에는 이런 장애 대응이 되는 라인업이 있을겁니다만,
이것도, 아마 비용이 들어 갈겁니다.
     
dateno1 2024-05
SQL계열이라면 별도의 소프트 설치해서 들어오는 쿼리를 동시에 여러대에 동일하게 해주는 솔루션이 있긴했습니다 (다만 비용이 억일뿐이죠)

가상화라면 복수의 호스트에서 동일하게 VM돌려서 HA처리 되긴합니다
MySQL 계열 DB는 옛날부터 Master / Slave 방식 Replication 을 지원했습니다.
이미 아시다시피 Master 노드는 읽기/쓰기가 가능한 노드이고, Slave 는 읽기만 가능한 노드라서
제대로 사용해서 부하분산을 하려면 프로그램 레벨에서 읽기는 Slave 에서,
쓰기는 Master 에서 수행하도록 잘 설계해서 접속을 분산하도록 코딩해야 합니다.

그런데, 보통 프로그램에서 이런 부분을 지원하기 어렵기 때문에
대부분의 경우 Master 노드로만 연결해서 사용하고,
Slave 노드는 일종의 보험으로 데이타를 싱크하고 있다가
Master 가 죽으면 Slave 를 Master 복구용으로 사용하게 됩니다..
술이 2024-05
윈도우 방식을 답변 남긴 이유가 있어서입니다.
MSCS 처럼 쉽게 구현되고 안정성이 보장되는 솔루션이 그리 흔하지 않습니다. 리눅스 클러스터가 이론상은 전부 다된다고 말들은 많이 하지만 국내에서 그걸 지원해주고 리눅스(오픈소스라니까 다들 공짜라고 생각함) 유지관리와 장애시 지원받을수 있는 상황도 고려를 해봐야 합니다.

갤라라클러스터는 RDBMS에 사용될게 아니라 대량 접속과 시퀀스 안따지고 막 때려박는 DB일경우는 분산도 되고 아주 유용할거라고는 생각되지만 이것도 문제 발생시 지원받을수 있는 구조가 제대로 되어 있는가입니다.

리눅스로 할수있는건 많습니다. 그런데 현실은 그 비용에 누가 제대로 보장해줄것인가 이게 큰 장벽입니다.

복제방식도 제대로 고민해야 할게 이게 한번 틀어지면 저게 자동으로 맞춰주는가도 고민해봐야 되고 그걸 보장해주는 레퍼런스가 있는지가 생각해볼 문제입니다. 복제 이중화 솔루션이 제대로 보장 되는건 MSSQL AlwaysON이 현재로서는 대안이 이것뿐일겁니다.

MySQL 이나 MariaDB는 이중화 방식은 윈도우 클러스터를 선택하는것이 제일 안정적일겁니다.
엠브리오 2024-05
> 현재 고객사에서 mysql 로 서비스중인데 이중화 구성이 아닌 싱글로 사용하고 있는거 같습니다
> Mysql 을 A/S 구성하려면 mysql ent 로 가야하는걸로 알고있는데

엔터프라이즈 버전 아니어도 됩니다.

> 마리아 db를 알아보니 A/S 구성이 아닌 3 노드 구성으로만 인터넷에 나오는데
> 마리아 디비를 A/S 구성으로 할수 없는것인가요?

마리아DB로도 가능합니다.

오라클의 손아귀에 들어 있는 mysql을 별로 추천하고 싶지는 않지만,
고객사에서 쓰고 있다고 하니 DB 자체를 바꿀수는 없을테고..

초보자가 잘못 건드리면 DB 꼬이고 운영중인 DB를 날려먹을수도 있으니..
경험 많은 mysql dba 를 불러서 이중화 구성하면 되겠습니다.
그냥 auto failover 만 어느정도 포기하면 전통적인 방식으로도 충분히 이중화 운용 가능합니다.
장비 2대 세팅, master/slave 로 구성, slave 는 별도로 엑세스 하지 않음 (괜히 slave에 쿼리 날리다가 복제 깨먹는 경우가..)

대충 master 장애시
1. master 물리머신 off
2. slave 의 ip를 master ip 로 재설정 (ip관련해서는 가상ip 쓰면 편리합니다)
3. slave 의 role 을 master로 변경 (stop slave ... )
4. 서비스 재개
5. (구)master 장비 백업을 이용하여 재구성 및 slave 로 복제 시작

뭐 이런식으로 수십년전부터 하던 방식으로 하면됩니다. 그런데 dba불러서 작업하시는게 나으실 듯 합니다...
정진호군 2024-05
문 외 한 입니다요


QnA
제목Page 144/5729
2014-05   5260056   정은준1
2015-12   1784844   백메가
2013-10   7527   안형곤
2019-08   5000   굴렁쇠
2020-11   4657   Jgon
2019-08   3768   헌터D
2016-04   17664   재마
2013-10   5476   jake
2024-01   1843   뉴비덕후
2013-10   5980   무아
2020-12   2377   다가도
2022-06   2639   봉래
2013-10   5813   앵앵앵
2015-03   4841   v김호준v
2016-05   5138   김유중
2011-04   8050   무느미
2016-05   5443   김건우
2013-11   28998   행아범
2013-11   10781   comduck
2019-09   3344   트니아빠
2022-07   3431   포에버
2016-05   7712   Lucyed