Loading...
MySQL 9.5 Reference Manual 9.5의 20.1.2 Group Replication Use Cases의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
Group Replication은 서버 집합에 시스템 상태를 복제함으로써, 중복성을 가진 장애 허용 시스템을 만들 수 있게 해 줍니다. 일부 서버가 이후에 장애가 나더라도, 전체 또는 과반수가 아닌 한 시스템은 여전히 사용 가능합니다. 장애가 나는 서버의 수에 따라 그룹은 성능이나 확장성이 저하될 수 있지만, 여전히 사용 가능합니다. 서버 장애는 격리되고 독립적입니다.
이들은 분산 장애 감지기에 의존하는 그룹 멤버십 서비스에 의해 추적되며, 서버가 자발적으로 또는 예상치 못한 중단으로 그룹을 떠날 때 이를 신호할 수 있습니다. 서버가 그룹에 조인할 때 자동으로 최신 상태로 동기화되도록 보장하는 분산 복구 절차가 있습니다. 서버 페일오버가 필요 없으며, 어디서나 멀티소스 업데이트 특성 덕분에 단일 서버 장애가 발생하더라도 업데이트가 차단되지 않습니다. 요약하면, MySQL Group Replication은 데이터베이스 서비스가 지속적으로 사용 가능하도록 보장합니다.
데이터베이스 서비스는 사용 가능하지만, 예기치 않은 서버 종료가 발생하면, 해당 서버에 연결된 클라이언트들은 다른 서버로 리다이렉트되거나 페일오버되어야 한다는 점을 이해하는 것이 중요합니다. 이것은 Group Replication이 해결하려고 시도하는 부분이 아닙니다. 커넥터, 로드 밸런서, 라우터 또는 어떤 형태의 미들웨어가 이 문제를 처리하는 데 더 적합합니다. 예를 들어 MySQL Router 9.5를 참조하십시오.
요약하면, MySQL Group Replication은 고가용성, 고탄력성, 신뢰할 수 있는 MySQL 서비스를 제공합니다.
참고
여러 개의 MySQL 인스턴스를 배포하려면, InnoDB Cluster를 사용할 수 있으며, 이는 MySQL Shell에서 MySQL 서버 인스턴스 그룹을 쉽게 관리할 수 있게 해 줍니다. InnoDB Cluster는 MySQL Group Replication을 프로그래밍 환경으로 감싸, MySQL 인스턴스 클러스터를 쉽고 간편하게 배포하여 고가용성을 달성할 수 있게 해 줍니다. 추가로, InnoDB Cluster는 MySQL Router와 매끄럽게 연동되며, 이를 통해 자체 페일오버 프로세스를 작성하지 않고도 애플리케이션이 클러스터에 연결할 수 있습니다. 그러나 고가용성이 필요하지 않은 유사한 사용 사례의 경우에는 InnoDB ReplicaSet을 사용할 수 있습니다. MySQL Shell의 설치 방법은 여기에서 찾을 수 있습니다.
다음 예제들은 Group Replication의 전형적인 사용 사례입니다.
Elastic Replication - 복제 인프라가 매우 유동적이어야 하고, 가능한 한 부작용을 최소화하면서 서버 수를 동적으로 늘리거나 줄여야 하는 환경. 예를 들어, 클라우드용 데이터베이스 서비스가 이에 해당합니다.
Highly Available Shards - 샤딩은 쓰기 스케일 아웃을 달성하기 위한 일반적인 접근 방식입니다. 각 샤드가 복제 그룹에 매핑되도록 MySQL Group Replication을 사용하여 고가용성을 갖춘 샤드를 구현하십시오.
Alternative to asynchronous Source-Replica replication - 특정 상황에서는 단일 소스 서버를 사용하는 것이 단일 병목 지점이 될 수 있습니다. 전체 그룹에 쓰기를 수행하는 것이 특정 상황에서 더 뛰어난 확장성을 제공할 수 있습니다.
Autonomic Systems - 추가적으로, 복제 프로토콜(이미 이 장과 이전 장에서 설명됨)에 내장된 자동화만을 위해 MySQL Group Replication을 배포할 수도 있습니다.
20.1.1 Replication Technologies
20.1.3 Multi-Primary and Single-Primary Modes