2016-09-13 2 views
0

현재 MySQL 인스턴스를 호스팅하는 전용 머신이 하나 있습니다. 마스터/슬레이브 복제 설정으로 이동하고 있습니다. 필자는 일반적인 튜토리얼에 따라 테스트 마스터와 슬레이브를 구성했으며 정상적으로 작동합니다. 그러나 내 응용 프로그램은로드 밸런서 및 자동 배율 등을 사용하는 AWS에서 실행됩니다. 그래서 새 인스턴스가 추가되고 제거됩니다. 이들 각각은 읽기를위한 로컬 MySQL 인스턴스를 갖습니다. 자동 할당을 위해 my.cnf의 "server-id"를 구성 할 수 있습니까? 동적 인 크기 조정을하는 노예 노드 세트로 어떻게하면 좋을까요?MySQL 마스터/슬레이브 - 자동 서버 ID

감사

+0

_databases_의 동적 크기 조정은 재앙을 기다리고 있습니다. 마스터 노드 역시 성장해야합니다. 그래서 쉽게 자동화 될 수 없습니다. –

+0

부하 분산 스택에서 실행되는 MySQL 백업 응용 프로그램을 확장하는 최선의 방법은 무엇입니까? 예를 들어 CRUD 작업이 많은 RESTful 웹 서비스를 예로 들어 보겠습니다. 저는 Master/Slave의 아이디어에 결혼하지 않았습니다. 저는 그것이 금형에 맞을 것이라고 생각했습니다. – fatlog

+0

아, "스케일 아웃"이라고 말하고 있습니까? 더 많은 데이터? 아니면 더 많은 활동? –

답변

1

오토 스케일링을 사용할 때, 당신은 자동 스케일 인스턴스 떨어져 데이터베이스를 이동해야합니다. 각 자동 확장 인스턴스에는 자체 데이터베이스 사본이 없어야합니다.

대신 :

  1. 은 자동 스케일링 그룹의 일부가 아닌 마스터 데이터베이스가.
  2. 읽는 동안 데이터베이스로드를 완화하는 데 도움이되는 읽기 복제본이 0 개 이상 있어야합니다.
  3. 자동 확장 그룹의 일부인 EC2 인스턴스가 필요에 따라 자동 조정되지 않은 데이터베이스 노드를 참조하도록하십시오.

이렇게하면 EC2 인스턴스가 확대/축소/삽입/축소 될 때 데이터베이스는 해당 인스턴스와 분리 된 상태로 유지됩니다.

+0

감사합니다. Matt. 나는 일종의 중도 주택을 갈 생각이었습니다. 하나의 전용 마스터 인스턴스 (자동 스케일 그룹이 아님)와 각 자동 크기 조정 노드는보다 빠른 읽기를 위해 로컬 슬레이브 복사본을 갖습니다. 그러나 이것은 갈 길이 아닙니다. 내가 0 개 이상의 읽기 복제본을 가지고 있다면 부하를 어떻게 분산시킬 수 있습니까? 감사! – fatlog

+0

읽기 연결 만하면됩니다. 사실, 일부 MySql 커넥터에는 자동 읽기 복제본 밸런싱 (클라이언트 측 완료)이 있습니다. –

+0

Amazon RDS를 사용하고이 응답에서 제안한대로 Read-Replica 기능을 사용했습니다. – fatlog