작업 시나리오
클라우드 데이터베이스 MySQL은 사용자가 하나 이상의 읽기 전용 인스턴스를 생성하여 읽기/쓰기 분리 및 일대다 복제 애플리케이션 시나리오를 지원할 수 있도록 하여, 사용자 데이터베이스의 읽기 부하 처리 능력을 현저히 향상시킬 수 있습니다.
읽기 전용 인스턴스 생성 시 InnoDB 엔진과 LibraDB 엔진 두 가지 다른 엔진을 선택할 수 있습니다. InnoDB 엔진은 기존 주 인스턴스가 감당하기 어려운 대량의 동시 읽기 요청을 처리할 수 있습니다. LibraDB 엔진은 컬럼 기반 스토리지와 병렬 엔진을 통해 다중 테이블 조인(Join), 대용량 데이터 그룹화(Group by), 서브쿼리 등 업무에서 발생하는 복잡한 SQL을 처리합니다.
현재 데이터베이스 프록시를 지원합니다. 읽기 전용 인스턴스 생성 후 데이터베이스 프록시를 구매하여 읽기/쓰기 분리 기능을 활성화할 수 있습니다. 애플리케이션에서 데이터베이스 프록시 주소를 구성하면 쓰기 요청은 자동으로 주 인스턴스로 전달되고 읽기 요청은 각 읽기 전용 인스턴스로 자동 전달됩니다.
설명:
읽기 전용 인스턴스 요금은 제품 가격을 참조하세요. 읽기 전용 인스턴스는 인스턴스 상세 정보 페이지에서 독립 내부 네트워크 주소 활성화를 지원하며, 내부 네트워크 IP 및 포트 사용자 정의 수정도 지원합니다.
클라우드 디스크 버전 인스턴스 배포 아키텍처는 하나의 읽기/쓰기 노드와 최대 5개의 읽기 전용 노드로 구성됩니다. 클라우드 디스크 버전 인스턴스를 구매한 경우 읽기 전용 노드 추가 및 삭제 작업은 인스턴스 노드 추가 및 인스턴스 노드 삭제를 참조하십시오. 클라우드 디스크 버전은 1~15개의 독립형 읽기 전용 인스턴스 추가를 지원하며, 본문 방법을 참조하여 생성할 수 있습니다. 단, 독립형 읽기 전용 인스턴스는 읽기/쓰기 노드로 전환하는 기능을 지원하지 않습니다. 기본 개념
RO 그룹: 로드 밸런싱 기능이 있는 읽기 전용 인스턴스 그룹입니다. RO 그룹에 여러 개의 읽기 전용 인스턴스가 있는 경우, 사용자의 읽기 요청량을 그룹 내 각 읽기 전용 인스턴스에 균등하게 분배할 수 있습니다. 또한 RO 그룹은 외부에 IP와 PORT를 제공하여 데이터베이스 접근을 가능하게 합니다.
읽기 전용 인스턴스: 읽기 요청을 지원할 수 있는 단일 노드(슬레이브 없음) 인스턴스입니다. 이중 노드/삼중 노드 아키텍처의 읽기 전용 인스턴스는 단독으로 존재할 수 없으며, 각 읽기 전용 인스턴스는 특정 RO 그룹에 속합니다. 반면에 클라우드 디스크 버전 인스턴스의 읽기 전용 노드와 독립형 읽기 전용 인스턴스는 특정 RO 그룹에 속하지 않습니다.
프록시 순수 네트워크 모드: 클라이언트의 데이터베이스 요청을 순수 네트워크 방식으로 목표 읽기 전용 인스턴스로 정확하게 전달하는 기능입니다. 이중 노드/삼중 노드 아키텍처의 주 인스턴스 하위 RO 그룹이 프록시 순수 네트워크 모드로 업그레이드된 경우, 해당 주 인스턴스에 읽기 전용 인스턴스를 추가할 때 프록시 순수 네트워크 모드 선택이 지원됩니다. 업그레이드 관련 작업은 네트워크 전달 기능을 참조하십시오. 기반 아키텍처
읽기 전용 인스턴스는 MySQL binlog 마스터-슬레이브 동기화 기능을 사용하여 주 인스턴스(소스 데이터베이스)의 변경 사항을 모든 읽기 전용 인스턴스에 동기화합니다. 읽기 전용 인스턴스는 모두 단일 노드(예비 머신 없음) 아키텍처를 사용합니다. 읽기 전용 인스턴스가 다운되면 지속적으로 복구를 시도합니다. 더 높은 가용성이 필요한 경우 RO 그룹을 선택할 수 있습니다.
주의:
RO 그룹에 읽기 전용 인스턴스가 하나만 있는 경우 단일 장애점(Single Point of Failure) 위험이 존재하며, 해당 RO 그룹은 클라우드 데이터베이스 MySQL 서비스의 전체 가용성 계산에 포함되지 않습니다. 단일 읽기 전용 인스턴스는 가용성 SLA 보장을 제공하지 않으므로, RO 그룹의 가용성을 보장하기 위해 최소 2개의 읽기 전용 인스턴스를 구매할 것을 권장합니다.
기능 제한
단일 노드 클라우드 디스크 버전 인스턴스는 읽기 전용 인스턴스 생성을 지원하지 않습니다.
1GB 메모리, 50GB 하드 디스크 이상 사양이며 MySQL 5.6 이상 버전, InnoDB 엔진의 이중 노드 및 삼중 노드 주 인스턴스/재해 복구 인스턴스, 클라우드 디스크 버전 주 인스턴스<1>만 읽기 전용 인스턴스 구매를 지원합니다. 인스턴스가 이 사양보다 낮은 경우 인스턴스 사양을 먼저 업그레이드하십시오.
읽기 전용 인스턴스의 최소 사양 요구사항은 1GB 메모리, 50GB 하드 디스크이며, 반드시 주 인스턴스의 구매된 스토리지 사양보다 크거나 같아야 합니다.
이중 노드 및 삼중 노드 주 인스턴스는 최대 5개의 읽기 전용 인스턴스를 생성할 수 있으며, 클라우드 디스크 버전 인스턴스는 최대 15개의 읽기 전용 인스턴스를 생성할 수 있습니다.
백업 및 복원 기능을 지원하지 않습니다.
데이터 마이그레이션을 읽기 전용 인스턴스로 전송하는 기능은 지원하지 않습니다.
데이터베이스 생성/삭제를 지원하지 않으며 phpMyAdmin(PMA)을 지원하지 않습니다.
계정 생성/삭제를 지원하지 않으며, 계정 권한 부여 및 계정과 비밀번호 수정을 지원하지 않습니다.
주의 사항
읽기 전용 인스턴스는 계정과 데이터베이스에 대한 유지 관리를 필요로 하지 않으며, 모두 주 인스턴스에서 동기화됩니다.
MySQL 버전이 5.6이지만 GTID가 활성화되지 않은 경우, 콘솔에서 GTID를 활성화한 후 읽기 전용 인스턴스를 추가할 수 있습니다.
GTID 활성화 과정은 시간이 오래 걸리며 인스턴스에 몇 초간 순간적 연결 끊김이 발생할 수 있으므로, 업무량이 적은 시간대에 작업을 수행하고 데이터베이스에 접근하는 프로그램에 재연결 메커니즘을 추가하는 것이 좋습니다.
읽기 전용 인스턴스는 InnoDB 엔진만 지원합니다.
데이터 동기화에 지연이 발생할 수 있으므로 여러 읽기 전용 인스턴스 간에 소량의 데이터 불일치가 발생할 수 있습니다. 각 읽기 전용 인스턴스와 주 인스턴스 간의 동기화 지연 시간은 콘솔에서 확인할 수 있습니다.
읽기 전용 인스턴스의 인스턴스 사양은 주 인스턴스와 다를 수 있어 사용자가 로드 상황에 따라 업그레이드할 수 있습니다. 동일한 RO 그룹 내의 읽기 전용 인스턴스 사양은 일치하도록 유지하는 것이 좋습니다.
작업 단계
1. MySQL 콘솔에 로그인한 후 인스턴스 목록에서 인스턴스 ID를 클릭하거나 작업 열의 관리를 클릭하면 인스턴스 세부 정보 페이지로 이동합니다. 2. 인스턴스 세부 정보 페이지에서 인스턴스 아키텍처 다이어그램의 +읽기 전용 인스턴스 또는 +읽기 전용 분석 엔진을 클릭하거나, 읽기 전용 인스턴스 페이지에서 생성을 클릭하여 구매 페이지로 이동합니다.
설명:
+읽기 전용 인스턴스를 클릭하면 InnoDB 엔진 기읽기 전용 인스턴스가 생성되며, +읽기 전용 분석 엔진을 클릭하면 읽기 전용 분석 엔진 LibraDB가 생성됩니다.
3. 구매 페이지에서 읽기 전용 인스턴스의 해당 구성을 선택하고, 문제가 없는지 확인한 후 즉시 구매를 클릭하십시오.
설명:
읽기 전용 인스턴스와 주 인스턴스의 만료 시간을 통일하려면 갱신 관리 콘솔에서 통일 만료일을 설정할 수 있습니다. 구체적인 작업 단계는 통일 만료일을 참조하십시오. 클라우드 디스크 버전 인스턴스에 추가된 독립형 읽기 전용 인스턴스는 특정 RO(읽기 전용) 그룹 관련 작업을 지원하지 않습니다.
|
인스턴스 엔진 | 현재 읽기 전용 인스턴스의 엔진을 선택하십시오. 현재 InnoDB와 LibraDB 엔진을 지원하며, 여기서는 InnoDB 엔진을 선택합니다. LibraDB 엔진의 생성 및 설명에 대한 자세한 내용은 읽기 전용 분석 엔진 활성화를 참조하십시오. |
유형 | RO 그룹: 일반 RO 그룹을 나타내며, 이 항목을 선택할 경우 RO 그룹을 지정해야 합니다. 프록시 순수 네트워크 모드: SQL을 순수 네트워크 모드로 전달하는 것을 의미합니다. 주 인스턴스 하위에 이미 프록시 순수 네트워크 모드가 존재할 경우에만 이 항목을 선택할 수 있으며, 기존 프록시 순수 네트워크 모드에서만 읽기 전용 인스턴스 추가가 지원됨을 나타냅니다. 이 항목 선택 후 프록시 순수 네트워크 주소를 지정해야 합니다. |
RO 그룹 지정 | 유형이 RO 그룹인 경우, 이 항목을 설정해야 하며 시스템 자동 할당, 새 RO 그룹 생성, 기존 RO 그룹 지정을 지원합니다. 시스템 자동 할당: 여러 인스턴스를 한 번에 구매할 경우 각 인스턴스에 독립적인 RO 그룹이 할당되며, 가중치 할당 방식은 기본적으로 시스템 자동 할당으로 설정됩니다. 새 RO 그룹 생성: 새로운 RO 그룹을 생성하며, 여러 인스턴스를 한 번에 구매할 경우 모두 이 RO 그룹에 할당됩니다. 가중치 할당 방식은 기본적으로 시스템 자동 할당으로 설정됩니다. 기존 RO 그룹: 기존 RO 그룹을 지정하며, 여러 인스턴스를 한 번에 구매할 경우 모두 이 RO 그룹에 할당됩니다. 가중치 할당 방식은 RO 그룹 설정과 동일합니다: RO 그룹이 시스템 자동 할당으로 설정된 경우 구매 사양에 따라 자동으로 RO 그룹이 추가됩니다. 사용자 정의 할당인 경우 기본 가중치는 0으로 설정됩니다. 동일한 RO 그룹의 내부 네트워크 주소가 동일하므로 VPC 네트워크인 경우 동일한 보안 그룹 설정을 공유하게 됩니다. 기존 RO 그룹을 선택할 경우 구매 시 보안 그룹을 사용자 정의할 수 없습니다. |
RO 그룹 이름 설정 | 새 RO 그룹 생성 시 새 RO 그룹의 이름을 설정해야 하며, 60자 미만의 한자/영문/숫자/"-"/"_"/"."를 지원합니다. |
프록시 순수 네트워크 주소 지정 | 유형이 프록시 순수 네트워크 모드일 경우, 이 항목을 설정해야 하며 현재 주 인스턴스 하위에 기존 프록시 순수 네트워크 주소가 기본 선택됩니다. |
지연 초과 제거 | 제외 정책 활성화 여부를 선택합니다. 활성화할 경우 지연 임계값과 최소 유지 인스턴스 수를 설정해야 하며, 제외된 인스턴스의 가중치는 자동으로 0으로 설정됩니다. 읽기 전용 인스턴스의 지연이 임계값을 초과하여 제거될 경우 사용자에게 알람이 전송됩니다(읽기 전용 인스턴스 제거 알람 구성 및 수신 대상 설정은 알람 기능 참조). 이때 인스턴스 상태는 '서비스 중지 동기화 중'으로 가중치는 0이 됩니다. 읽기 전용 인스턴스의 지연 시간이 임계값 미만으로 감소하면 RO 그룹에 다시 추가됩니다. 또한 인스턴스에 지연 초과 제거 기능이 활성화되었는지 여부와 관계없이, 읽기 전용 인스턴스 오류로 인해 제거된 경우 인스턴스가 복구되면 RO 그룹에 다시 추가됩니다. 설명: 유형이 RO 그룹이고 지정된 RO 그룹이 시스템 자동 할당인 경우 지연 제거가 활성화되지 않으며 최소 하나의 인스턴스가 유지됩니다. 유형이 RO 그룹이고 지정된 RO 그룹이 새 RO 그룹 생성인 경우 제외 정책 활성화 여부를 선택해야 합니다. 유형이 RO 그룹이고 지정된 RO 그룹이 기존 RO 그룹인 경우, 이 항목의 설정은 기존 RO 그룹과 동일합니다. 유형이 프록시 순수 네트워크 모드일 경우, 이 항목의 설정은 기존 프록시 순수 네트워크 모드와 동일합니다. |
과금 모드 | 연간/월간 선불 및 종량제 과금을 지원합니다. |
리전 | 읽기 전용 인스턴스의 리전을 선택합니다. 유형이 RO 그룹인 경우 주 인스턴스와 동일하거나 다른 리전 선택이 지원됩니다. 유형이 프록시 순수 네트워크 모드인 경우 기본적으로 주 인스턴스와 동일한 리전만 선택할 수 있습니다. 구체적인 선택 가능 리전은 실제 페이지 표시를 기준으로 합니다. |
아키텍처 | 기본값은 단일 노드입니다. |
가용 영역 | 주 인스턴스와 동일한 가용 영역 또는 다른 가용 영역(교차 가용 영역) 선택이 지원되며, 구체적인 선택 가능 가용 영역은 실제 페이지 표시를 기준으로 합니다. 서로 다른 가용 영역 간에는 실질적 차이가 없으며, 교차 가용 영역 RO 그룹 또는 프록시 순수 네트워크 모드 생성 선택 시 데이터 재해 복구 능력이 향상되지만 수 밀리초(millisecond)의 네트워크 지연이 발생할 수 있습니다. |
인스턴스 사양 | 읽기 전용 인스턴스의 인스턴스 사양을 선택하십시오. 비즈니스 실제 상황에 따라 사양을 선택하십시오. |
디스크 | 하드 디스크 공간을 선택하십시오. 하드 디스크 사양의 상한선 및 하한선은 선택한 인스턴스 사양과 관련이 있으며, 실제 구매 페이지를 기준으로 하십시오. |
네트워크 | 기본 VPC는 클라우드 데이터베이스 MySQL 주 인스턴스와 동일하게 설정되며, 서브넷은 지정된 가용 영역 내 선택 가능한 서브넷입니다. 또한 주 인스턴스와 동일한 VPC 네트워크에 있지 않은 경우도 지원합니다. |
사용자 정의 포트 | 기본값은 3306이며, 사용자 정의 수정이 지원되며 범위는 1024 - 65535입니다. |
보안 그룹 | 읽기 전용 인스턴스에 대해 해당 클라우드 데이터베이스 MySQL 인스턴스와 다른 보안 그룹을 선택하여 인스턴스 액세스 정책을 제어할 수 있습니다. |
태그 | 읽기 전용 인스턴스에 태그를 추가합니다. |
경고 정책 | |
인스턴스 이름 | 인스턴스 이름을 사용자 정의할 수 있으며, 생성 후 명명 또는 즉시 명명을 지원합니다. |
데이터 복제 방식 | 기본값은 비동기 복제입니다. |
인스턴스 삭제 보호 | 인스턴스 삭제 보호는 기본적으로 선택되지 않음(즉, 기본적으로 활성화되지 않음). 실제 요구 사항에 따라 설정할 수 있으며, 인스턴스 삭제 보호를 활성화한 후에는 콘솔 또는 API를 통해 인스턴스를 삭제할 수 없습니다. |
수량 | 비즈니스 실제 상황에 따라 구매 수량을 선택하십시오. |
4. 구매 완료 후 인스턴스 목록으로 돌아가서 인스턴스 상태가 실행 중으로 변경될 때까지 대기하면 정상적으로 사용할 수 있습니다.
자주 묻는 질문
읽기 전용 인스턴스 제외 규칙은 무엇인가요?
지연 초과 제거 기능을 활성화하면 RO 그룹은 지연 임계값과 최소 유지 인스턴스 수를 기준으로 제거할 인스턴스를 판단합니다. 제거된 인스턴스의 가중치는 자동으로 0으로 설정됩니다. 읽기 전용 인스턴스의 지연이 임계값을 초과하여 제거될 경우 사용자에게 알람이 전송되며, 인스턴스 상태는 '서비스 중지 동기화 중'으로 가중치는 0이 됩니다. 읽기 전용 인스턴스의 지연 시간이 임계값 미만으로 감소하면 RO 그룹에 다시 추가됩니다.
지연 임계값: 읽기 전용 인스턴스에 대해 지연 초과 임계값을 설정합니다. 임계값을 초과하는 읽기 전용 인스턴스는 RO 그룹에서 제거됩니다.
최소 보유 인스턴스 수: 그룹 내에서 보장해야 하는 인스턴스의 최소 수입니다. 기존 읽기 전용 인스턴스 수가 이 최소값 이하이고 지연 시간이 임계값을 초과할 경우, 기존 읽기 전용 인스턴스는 모두 제거되지 않습니다.
읽기 전용 인스턴스를 파기/반품할 경우 주 인스턴스에 어떤 영향이 있을까요?
읽기 전용 인스턴스 폐기/반품은 주 인스턴스에 영향을 미치지 않습니다.
읽기 전용 인스턴스를 생성할 때 특정 가용 영역을 선택할 수 없는 이유는 무엇인가요?
특정 가용 영역을 선택할 수 없는 경우, 해당 가용 영역에 일시적으로 리소스가 부족함을 의미합니다. 실제 구매 페이지에서 다른 가용 영역을 선택하더라도 읽기 전용 인스턴스 사용에는 영향을 미치지 않습니다.
읽기 전용 인스턴스를 생성할 때 주 인스턴스와 다른 가용 영역에 분산 배치할 수 있습니까?
가능합니다. 읽기 전용 인스턴스를 생성할 때 새 RO 그룹 또는 프록시 순수 네트워크 모드를 선택하는 경우, 주 인스턴스와 다른 가용 영역 선택이 지원됩니다. 그러나 읽기 전용 인스턴스 생성 시 기존 RO 그룹을 선택한 경우, 해당 읽기 전용 인스턴스의 가용 영역은 선택한 기존 RO 그룹의 가용 영역과 일치해야 하며, 반드시 주 인스턴스와 동일한 가용 영역에 분포할 필요는 없습니다.