glusterfs 위에서 mysqld를 실행할 수 있습니까?


12

나는 최근에 glusterfs를 가지고 놀고있다.

내가 시도하고 싶은 것은 DRBD 위에서 MySQL 을 실행할 수있는 것과 비슷한 방식으로 glusterfs 위에서 mysqld를 실행하는 것입니다 .

나는 MySQL 복제 와이 접근법 대신 그것을 사용하는 이점에 익숙하며 MongoDB 및 기타 NoSQL 솔루션도 알고 있습니다.

그러나 MySQL을 그대로두고 기본 파일 시스템을 복제 할 수 있다면 몇 가지 특정 프로젝트에 대한 쉬운 솔루션이 될 것입니다.

이것이 가능하며 어디에서 어떻게 찾을 수 있습니까?

답변:


16

대답없이 합리적으로 오랜 지연으로 인해 시행 착오로 알았습니다.

대답은 : 예, glusterfs 위에서 mysqld를 실행할 수 있습니다.

우분투에서 이것을 설정하고 간단히 단계는 다음과 같습니다.

실제 문제는 MySQL이 잠금을 처리하는 방법에 있습니다.

그러나 많은 mysqld 프로세스 (별도의 노드에서 실행)가 / mnt / glusterfs의 동일한 데이터베이스 파일에 액세스 할 수 있도록이 모든 것을 glusterfs에 전달할 수 있습니다. 이 내용을주의 깊게 읽어야합니다 .


2
어떤 종류의 성능 문제가 있습니까?
CMCDragonkai

4
이것은 실제로 매우 흥미 롭습니다! 그러나 기록상 데이터가 중요한 상황에서는 이것을 사용하지 않는 것이 좋습니다. 그것이 효과가 있다고해서 그것이 안전하다는 것을 의미하지는 않습니다. 운이 좋으면서도 경쟁 조건에 도달하지 않아 데이터가 손실 될 수 있습니다.
jlh

한 번에 하나의 서버를 사용하게됩니다. 여러 서버에서 작동하지 않을 것이라고 확신합니다. 데이터를 잃게 될 것입니다
Diego Roccia

3

K8 클러스터에서이를 시도했습니다. 컨테이너 내부에서 실행되는 MySQL, GlusterFS는 노드에 직접 설치 (컨테이너가 아닌). MySQL 컨테이너는 K8의 기본 GFS 볼륨 드라이버를 사용하여 볼륨을 마운트하여 항상 GFS와 동일한 노드에서 실행되도록 선호도를 설정했습니다.

NGINX FastCGI (PHP-FPM) 캐싱이 활성화 된 경우에도 WordPress 사이트에 대해 임의의 높은 대기 시간이 발생했습니다. MySQL 컨테이너의 hostPath 볼륨으로 전환하면 대기 시간 문제가 해결되었습니다.


2

나는 그것이 가능하지 않다고 생각합니다. Richard, 당신이 제공 한 링크는 MyIsam에 관한 것입니다. 여러 노드에서 공유하는 innoDB 파일을 사용하면 데이터가 손상 될 수있는 어딘가를 읽습니다 (어디서 기억하지 못합니까).


2

다른 MySQL 서버 프로세스에서 동일한 DB 파일에 액세스하려는 이유를 모르겠지만 그 이유가 성능 인 경우 Galera를 살펴보십시오.

http://www.codership.com/content/using-galera-cluster

Maria DB 및 Percona XTRA DB 클러스터에 통합


GlusterFS에서 Master to Master 복제는 어떻습니까?
CMCDragonkai 2016 년

읽기 확장 성을 찾고 있지 않으면 Galera의 경우 -1입니다. Galera는 대용량 데이터베이스 또는 쓰기 성능이 중요한 데이터베이스에는 적합하지 않습니다. 나는 경험과 MariaDB와의 지원 계약의 권장 사항에 대해 이야기합니다.
로스 사람들

솔직히 @RossPeoples는 OP가 쓰기 성능을 위해 이것을하지 않을 것입니다. Gluster는 모든 트랜잭션에 대기 시간을 추가 할 수 있습니다. 그는 아마도 단일 dB 인스턴스가 실행되도록하기 위해 Kubernete을 사용하여 HA를 찾고있을 가능성이 높습니다.
Aron

1

이론적으로는 가능합니다. 실제로, 특히 성능과 관련하여 Gluster 매뉴얼은 DB 파일 또는 기타 세부적인 I / O 시스템 복제에 사용되지 않도록 제안합니다.

여기에서 Gluster 공식 개요를 참조하십시오.

http://docs.gluster.org/en/latest/Install-Guide/Overview/#is-gluster-going-to-work-for-me-and-what-i-need-it-to-do

Gluster가 저를 위해 일할 예정입니까?

... 반면에 충분한 Gluster 서버를 혼합에 추가하면 일부 사람들은 기술의 확장 특성으로 인해 다른 솔루션보다 더 나은 성능을 보았습니다. Gluster는 소위 "구조화 된 데이터"를 지원하지 않습니다. , SQL 데이터베이스. 물론, Gluster를 사용하여 데이터베이스를 백업 및 복원하는 것이 좋습니다. Gluster는 일반적으로 16KB 이상의 파일 크기 (약 128KB 정도의 스폿)를 사용할 때 더 좋습니다.

MySQL 복제를 원한다면 다음과 같이 제안합니다.

  1. 전통적인 MySQL 마스터 / 슬레이브 복제 사용 https://dev.mysql.com/doc/refman/5.7/en/replication.html

  2. 현재 Oracle MySQL 또는 MariaDB와 같은 모든 MySQL에서 구현되는 Codership Galera 클러스터 사용

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.