Cloud SQL SLA 계약에서 'Google의 합리적인 통제 범위를 벗어난 요인으로 인해 발생하는' 중단은 제외됩니다. 이 페이지에서는 Cloud SQL 인스턴스가 중단될 수 있는 사용자 제어 구성 중 제외되어야 할 몇 가지 구성에 대해 설명합니다.
소개
Cloud SQL은 인스턴스 구성 방법을 사용자가 최대한 제어할 수 있도록 하기 위해 노력하고 있습니다. 여기에는 부하 및 기타 구성 매개변수에 따라 인스턴스 다운타임의 위험을 증가시킬 수 있는 몇 가지 구성이 포함됩니다. 인스턴스가 중단되었을 때 Cloud SQL에서 확인한 결과, 이 페이지에 설명한 작업 제한을 준수하지 않아 중단되었다고 판단될 경우 다운타임 기간은 Cloud SQL SLA 계약의 적용을 받지 못합니다(또는 계산에 포함되지 않음).
이 작업 제한 목록은 위와 같은 위험을 야기하는 구성, 그러한 구성 중 하나로 잘못 이동하지 않도록 예방하는 방법, 비즈니스 환경에 따라 그러한 구성이 꼭 필요할 경우 위험을 완화하는 방법을 알려주기 위한 것입니다.
제외되는 구성
제외되는 구성은 다음과 같은 카테고리로 분류됩니다.
- 일반적인 구성 요구사항
- 데이터베이스 플래그 값
- 리소스 제약조건
일반적인 구성 요구사항
하나 이상의 전용 CPU와 함께 고가용성으로 구성된 Cloud SQL 인스턴스만 SLA의 적용을 받습니다. 공유 코어 인스턴스와 단일 영역 인스턴스에는 SLA가 적용되지 않습니다.
데이터베이스 플래그 값
Cloud SQL에서는 데이터베이스 플래그를 사용하여 인스턴스를 구성할 수 있습니다. 이 플래그 중 일부는 인스턴스의 안정성이나 데이터의 내구성을 손상시킬 수 있는 방법으로 설정될 수 있습니다.
다음 표에는 SLA가 적용되지 않는 값이 들어 있는 플래그가 나와 있습니다.플래그 | 설명 | 제외되는 설정 | 잠재적인 영향 | 위험 완화 |
---|---|---|---|---|
general_log
|
MySQL 일반 로그를 사용 설정합니다. | On(log_output 플래그가 TABLE 로 설정된 상태에서) |
재시작이 느려집니다. | log_output 플래그를 FILE 로 설정합니다. |
slow_query_log
|
MySQL 느린 쿼리 로그를 사용 설정합니다. | On(log_output 플래그가 TABLE 로 설정된 상태에서) |
재시작이 느려집니다. | log_output 플래그를 FILE 로 설정합니다. |
max_heap_table_size
|
메모리 테이블의 크기를 결정합니다. | 기본값보다 큰 값 | 메모리 부족(OOM) 오류로 인한 인스턴스 중단 | 기본 설정을 유지합니다. |
tmp_table_size
|
임시 테이블의 크기를 결정합니다. | 기본값보다 큰 값 | 메모리 부족(OOM) 오류로 인한 인스턴스 중단 | 기본 설정을 유지하거나, 인스턴스 용량을 초과하지 않도록 워크로드를 신중하게 계획합니다. |
query_cache_size 및
query_cache_type
|
이 플래그는 함께 사용되어 쿼리 캐시의 크기를 결정합니다. | 기본값보다 큰 값 | 메모리 부족(OOM) 오류로 인한 인스턴스 중단 | 기본 설정을 유지하거나, 인스턴스 용량을 초과하지 않도록 워크로드를 신중하게 계획합니다. |
리소스 제약조건
SLA의 적용을 받으려면 다음 리소스 제약 조건을 피해야 합니다.
제약조건 | 설명 | 감지 | 해결 방법 | 예방 방법 |
---|---|---|---|---|
스토리지가 가득 참 | 스토리지 자동 증가 기능을 사용하도록 설정하지 않은 상태에서 인스턴스의 스토리지가 부족해지면 인스턴스가 오프라인으로 전환됩니다. 이러한 중단에는 SLA가 적용되지 않습니다. | Cloud Console의 인스턴스 세부정보 페이지에서 인스턴스가 사용하고 있는 스토리지를 확인할 수 있습니다.
자세히 알아보기
저장소 사용량을 모니터링하고 지정된 기준에 도달할 때 알림을 받으려면 Stackdriver 알림을 설정하세요. 자세히 알아보기 |
인스턴스의 스토리지 크기를 늘립니다. 스토리지의 크기를 늘릴 수는 있지만 줄일 수는 없습니다. | 인스턴스의 저장용량 자동 증가 기능을 사용 설정합니다. 자세히 알아보기 |
CPU 과부하 | CPU 사용량이 6시간 동안 98%를 초과하는 경우 인스턴스는 워크로드에 맞게 크기가 조정되지 않으며, SLA가 적용되지 않습니다. | Cloud Console의 인스턴스 세부정보 페이지에서 인스턴스가 사용하고 있는 가용 CPU 비율을 확인할 수 있습니다.
자세히 알아보기
CPU 사용량을 모니터링하고 지정된 기준에 도달할 때 알림을 받으려면 Stackdriver 알림을 설정하세요. 자세히 알아보기 |
인스턴스의 CPU 수를 늘립니다. 등급을 변경하려면 인스턴스를 다시 시작해야 합니다.
인스턴스가 이미 최대 CPU 수에 도달한 경우에는 데이터베이스를 여러 인스턴스로 샤딩하세요. |
CPU 사용량을 모니터링하고 필요한 경우 사용량을 늘립니다. 인스턴스 등급을 변경하려면 다시 시작해야 합니다. |
데이터베이스 테이블이 너무 많음 | 단일 인스턴스에 데이터베이스 테이블이 10,000개 이상 있으면 인스턴스가 응답하지 않거나 유지보수 작업을 수행하지 못할 수 있으며, 인스턴스가 SLA의 적용을 받지 못합니다. |
SELECT COUNT(*) FROM information_schema.tables;
를 사용해 인스턴스에 있는 테이블 수를 확인할 수 있습니다.
SELECT TABLE_SCHEMA,COUNT(*) FROM information_schema.tables group by TABLE_SCHEMA;
를 사용해 각 데이터베이스에 있는 테이블 수를 확인할 수 있습니다.
|
테이블 수를 10,000개 미만으로 줄입니다.
테이블 수를 즉시 줄일 수 없는 경우에는 |
데이터 아키텍처에 많은 테이블이 필요한 경우 여러 인스턴스에 데이터를 분할합니다. |