MariaDB Server vs MariaDB Galera 클러스터 HA 리플리케이션
kubernetes 클러스터에 HA 데이터베이스 클러스터를 배포할 예정입니다.저는 데이터베이스를 처음 사용하는데다 다양한 데이터베이스 용어 때문에 혼란스럽습니다.MariaDB를 결정하고 MariaDB와 MariaDB Galera Cluster 두 개의 차트를 찾았습니다.
같은 목표를 달성할 수 있는 것은 알고 있습니다만, 그 둘의 주된 차이점은 무엇입니까?어떤 시나리오에서 또는 어떤 것을 사용해야 합니까?
잘 부탁드립니다!
저는 전문가가 아니므로 주의해서 설명을 듣습니다(다시 확인해 주세요).
MariaDB's Chart와 MariaDB Galera Cluster's Chart의 주요 차이점은 첫 번째 데이터베이스는 표준 마스터 슬레이브(또는 프라이머리-세컨더리) 데이터베이스를 도입하고 두 번째 데이터베이스는 복원력이 뛰어난 마스터 마스터(또는 프라이머리-프라이머리) 데이터베이스 클러스터를 도입한다는 것입니다.
보다 자세한 의미는 다음과 같습니다.
MariaDB Chart는 마스터 스테이트풀셋과 슬레이브 스테이트풀셋을 전개하여 마스터 포드 1개와 슬레이브 포드 2개를 (기본값으로) 생성합니다.데이터베이스가 가동되면 마스터에 접속하여 데이터를 쓰거나 읽을 수 있습니다.데이터는 슬레이브에 복제되어 데이터의 안전한 복사를 이용할 수 있습니다.
복사본을 사용하여 데이터를 읽을 수 있지만 마스터 포드만 데이터베이스에 새 데이터를 쓸 수 있습니다.팟이 충돌하면..또는 Pod가 오작동하고 있는 Kubernetes 클러스터 노드에서는 마스터의 Pod가 다시 가동될 때까지 새 데이터를 쓸 수 없습니다(수동 개입이 필요할 수 있습니다).또는 페일오버를 실행하는 경우 다른 팟 중 하나를 새로운 임시 마스터로 승격합니다(수동 조작 또는 프록시 또는 가상 IPS 설정 필요).
대신 Galera 클러스터 차트는 보다 탄력적인 것을 도입합니다.기본값을 사용하면 3개의 포드를 가진 단일 StatefulSet이 생성됩니다.이러한 팟은 각각 데이터를 읽고 쓸 수 있게 되어 사실상 마스터 역할을 하게 됩니다.
즉, 어떤 이유로든 Pod 중 하나가 작동을 멈추면 나머지 2개는 아무 일도 없었던 것처럼 데이터베이스를 계속 제공하므로 모든 것이 훨씬 회복됩니다.Pod(작동 중지)가 다시 작동하여 실행되면 다른 Pod에서 새로운/다른 데이터를 가져와 동기화됩니다.
전체 인프라스트럭처의 복원력(Galera Cluster 솔루션이 단점 없이 뛰어난 복원력을 제공한다면 너무 쉬울 수 있음)을 얻기 위해 멀티 마스터 애플리케이션에는 몇 가지 단점이 있습니다.동기와 일관성을 유지하기 위해 필요한 작업 지연 시간이 많아질수록 공통성이 높아집니다.복잡성이 더해져 자주 두통을 일으킬 수 있습니다.
Galera 클러스터에는 테이블의 명시적 LOCK이 작동하지 않거나 모든 테이블이 프라이머리 키를 선언해야 하는 등 몇 가지 제한이 있습니다.자세한 리스트는 이쪽(https://mariadb.com/kb/en/mariadb-galera-cluster-known-limitations/))에서 보실 수 있습니다.
두 솔루션 중 어느 쪽을 선택할지는 주로 다음 질문에 따라 결정됩니다.
- Kubernetes 클러스터 노드 중 하나에 장애가 발생하더라도 해당 Pod 중 하나가 특정 노드에서 실행되고 있더라도 아무 일도 없었던 것처럼 데이터베이스가 계속 작동(및 애플리케이션에서 사용 가능)해야 합니까?
언급URL : https://stackoverflow.com/questions/66113297/mariadb-server-vs-mariadb-galera-cluster-ha-replication
'programing' 카테고리의 다른 글
JSON 키가 존재하는지 확인하는 방법 (0) | 2023.02.01 |
---|---|
여러 축에서 시계열 데이터를 집계하고 있습니까? (0) | 2023.02.01 |
액티비티는?finish()는 Android에서 작동합니까? (0) | 2023.02.01 |
MySQL에서 SELECT 문을 사용하여 테이블 이름 가져오기 (0) | 2023.02.01 |
Seaborn 플롯을 파일에 저장하는 방법 (0) | 2023.02.01 |