인스턴스 관리
MySQL 서비스에서 가동 중인 인스턴스를 관리하는 방법은 다음과 같습니다.
인스턴스 목록 보기
가동 중인 MySQL 인스턴스 그룹에 포함된 인스턴스들의 목록을 확인할 수 있습니다. 인스턴스 그룹과 인스턴스의 관계는 주요 개념을 참고하시기 바랍니다.
-
카카오클라우드 콘솔 > Data Store > MySQL 메뉴로 이동합니다.
-
Instance Group 메뉴에서 인스턴스 목록을 확인할 MySQL 인스턴스 그룹을 선택합니다.
-
인스턴스 메뉴로 이동합니다.
- kr-central-1
- kr-central-2
항목 설명 인스턴스 이름 생성할 때 입력한 MySQL 인스턴스 이름 상태 MySQL 인스턴스 상태 확인
- 인스턴스 생명 주기 및 상태값 참고가용 상태 MySQL 인스턴스 간 데이터 복제에 관한 상태를 의미로, 고가용성
을 선택한 경우에만 해당
- 인스턴스 가용 상태 참고역할 인스턴스의 역할
- 자세한 설명은 인스턴스 가용성 구성 및 역할 참고인스턴스 유형 생성할 때 선택한 MySQL 인스턴스 유형 스토리지 크기 생성할 때 입력한 스토리지 크기 가동 시간 인스턴스가 생성되고 종료(삭제)되기까지의 가동시간 생성일 인스턴스의 생성일시 [더 보기] 아이콘 Standby 인스턴스 삭제 항목 설명 인스턴스 이름 생성할 때 입력한 MySQL 인스턴스 이름 AZ 인스턴스가 생성된 AZ 정보 상태 MySQL 인스턴스 상태 확인
- 자세한 설명은 인스턴스 생명 주기 및 상태값 참고가용 상태 MySQL 인스턴스 간 데이터 복제에 관한 상태를 의미로, 고가용성
을 선택한 경우에만 해당
- 자세한 설명은 인스턴스 가용 상태 참고역할 인스턴스의 역할
- 자세한 설명은 인스턴스 가용성 구성 및 역할 참고인스턴스 유형 생성할 때 선택한 MySQL 인스턴스 유형 스토리지 크기 생성할 때 입력한 스토리지 크기 가동 시간 인스턴스 생성 및 restart, failover 동작으로 인스턴스가 업데이트된 시점으로부터 경과된 시간 생성일 인스턴스의 생성일시
인스턴스 모니터링하기
모니터링 탭에서는 MySQL 인스턴스 그룹의 모니터링 결과를 확인할 수 있습니다.
-
카카오클라우드 콘솔 > Data Store > MySQL 메뉴로 이동합니다.
-
Instance Group 메뉴에서 모니터링할 MySQL 인스턴스 그룹을 선택합니다.
-
모니터링 탭을 선택합니다.
인스턴스 모니터링
구분 설명 모니터링 인스턴스 모니터링할 인스턴스 선택 조회 항목 모니터링을 조회할 항목 선택
- 항목: MySQL / CPU / Memory / FileSystem / Disk / 네트워크
- 전체 항목 기본 조회
- 항목 복수 선택 가능데이터 기간 모니터링 그래프에 보일 데이터의 기간
- 기간: 1시간(기본값) / 3시간 / 12시간 / 1일 / 7일뷰 모드 모니터링 그래프 뷰 모드 설정
- 1단, 2단, 3단 제공자동 새로고침 주기 자동 새로고침 주기 설정
- 주기: 자동 새로고침 안 함(기본값) / 10초 / 30초 / 1분 / 5분수동 새로고침 클릭 시 모니터링 결과 새로고침
모니터링 제공 데이터
항목 모니터링 데이터 설명 MySQL 초당 수행 쿼리 (QPS) 시간에 따른 초당 수행 쿼리 MySQL Connections (개수) 시간에 따른 Connections 개수
- 최대 Connections: 최대 연결 개수
- 활성 Connections: 설정한 데이터 기간의 최대, 현재, 평균 연결 개수MySQL Slow Query (개수) 시간에 따른 Slow Query 개수 MySQL 유형별 5분 간 쿼리 횟수 (개수) 시간에 따른 유형별 쿼리 횟수 MySQL Row Lock Wait (개수) 시간에 따른 Row Lock Wait 개수 MySQL Binary Log (Bytes) 시간에 따른 Binary Log 용량
- 활성 Binary Log: 설정한 데이터 기간의 최대, 현재, 평균 용량CPU 총사용량 (%) 시간에 따른 CPU의 총사용량 Memory 총사용량 (%) 시간에 따른 Memory의 총사용량 Memory 유형별 사용량 (Bytes) 시간에 따른 Memory의 유형별 사용량 FileSystem 총사용량 (%) 시간에 따른 FileSystem의 총사용량 FileSystem 총사용량 (Bytes) 시간에 따른 FileSystem의 총사용량 FileSystem 마운트별 inode 사용량 (%) 시간에 따른 FileSystem의 마운트별 inode 사용량 Disk Read Bytes (Bytes/sec) 시간에 따른 Disk IO Read 사용량 Disk Write Bytes (Bytes/sec) 시간에 따른 Disk IO Write 사용량 Disk Read IOPS (IO/sec) 시간에 따른 Disk IO Read 사용량 Disk Write IOPS (IO/sec) 시간에 따른 Disk IO Write 사용량 Network 인터페이스별 RX (Bytes) 시간에 따른 네트워크 RX 사용량 Network 인터페이스별 TX (Bytes) 시간에 따른 네트워크 TX 사용량 Network 인터페이스별 RX (PPS) 시간에 따른 네트워크 RX 사용량 Network 인터페이스별 TX (PPS) 시간에 따른 네트워크 TX 사용량
인스턴스 삭제하기
더 이상 사용하지 않는 MySQL Standby 인스턴스를 삭제할 수 있습니다. MySQL 인스턴스를 삭제할 때 모든 인스턴스의 동작을 종료하고 사용자의 인스턴스를 완전히 반납합니다.
삭제한 MySQL 인스턴스 리소스는 삭제 후 완전히 반납되며, 복구할 수 없습니다.
- kr-central-1
- kr-central-2
- 카카오클라우드 콘솔에서 Data Store > MySQL 메뉴로 이동합니다.
- Instance Group 메뉴에서 삭제할 인스턴스가 있는 인스턴스 그룹을 선택합니다.
- 인스턴스 메뉴에서 삭제하려는 인스턴스의 [더 보기] 아이콘 > 인스턴스 삭제를 선택합니다.
- 인스턴스 삭제 팝업창에서 정보를 입력하고, [삭제] 버튼을 클릭합니다.
추후 지원 예정입니다.
MySQL 인스턴스 설정하기
MySQL 서비스에서의 인스턴스 설정은 다음과 같습니다.
MySQL 인스턴스란 인스턴스 그룹이 관리하는 가상 머신(Virtual Machine)으로, 가용성에 따라 Primary
, Standby
로 역할이 결정됩니다. MySQL 인스턴스의 설정값은 다음과 같습니다. MySQL 인스턴스 설정을 변경하는 기능은 추후 지원 예정입니다.
- kr-central-1
- kr-central-2
MySQL 인스턴스 유형 | innodb_buffer_pool_size | max_connections |
---|---|---|
A1-4-STD | 12G | 9999 |
A1-8-STD | 24G | 9999 |
A1-16-STD | 48G | 9999 |
A1-2-CO | 3G | 9999 |
A1-4-CO | 6G | 9999 |
A1-8-CO | 12G | 9999 |
MySQL 인스턴스 유형 | innodb_buffer_pool_size | max_connections |
---|---|---|
m2a.large | 5G | 680 |
m2a.xlarge | 11G | 1360 |
m2a.2xlarge | 22G | 2730 |
m2a.4xlarge | 44G | 5460 |
m2a.8xlarge | 88G | 10920 |
m2a.12xlarge | 132G | 16380 |
m2a.16xlarge | 176G | 21840 |
m2a.24xlarge | 264G | 32760 |
r2a.large | 11G | 1360 |
r2a.xlarge | 22G | 2730 |
r2a.2xlarge | 44G | 5460 |
r2a.4xlarge | 88G | 10920 |
r2a.8xlarge | 176G | 21840 |
r2a.12xlarge | 264G | 32760 |
r2a.16xlarge | 352G | 43690 |
r2a.24xlarge | 528G | 65530 |
인스턴스의 역할 및 유형에 대한 자세한 설명은 인스턴스를 참고하시기 바랍니다.
Slow Query 조회하기
모니터링 서비스 이용하기
카카오클라우드 모니터링 서비스에서 제공하는 로그 탐색기를 통해 MySQL의 Slow Query를 조회할 수 있습니다.
- kr-central-1
- kr-central-2
-
카카오클라우드 콘솔에서 Monitoring 메뉴로 이동합니다.
-
탐색기 탭을 클릭한 후, 로그 탐색기에서 MySQL을 선택합니다.
-
조회 기간을 확인한 뒤, 로그필터의 파일 경로에
"*/mysql/mysql_log/slowquery.log"
를 입력합니다. -
검색 조건 설정이 완료되면, 검색 결과를 차트와 로그 목록으로 확인할 수 있습니다.
로그 탐색기의 자세한 설명은 로그 탐색기 문서를 참고하시기 바랍니다.
-
카카오클라우드 콘솔에서 Monitoring 메뉴로 이동합니다.
-
탐색기 탭을 클릭한 후, 로그 탐색기에서 MySQL을 선택합니다.
-
조회 기간을 확인한 뒤, 로그필터의 파일 경로에
"*/mysql_log/slowlog/slowquery.log"
를 입력합니다. -
검색 조건 설정이 완료되면, 검색 결과를 차트와 로그 목록으로 확인할 수 있습니다.
로그 탐색기의 자세한 설명은 로그 탐색기 문서를 참고하시기 바랍니다.
Stored Procedure 이용하기
- kr-central-2
카카오클라우드 MySQL에서 제공하는 기본 저장 프로시저를 통해 Slow Query를 테이블로 조회할 수 있습니다.
- 프로시저를 사용하는 경우, 카카오클라우드 모니터링의 로그 탐색기로 Slow Query를 확인할 수 없습니다.
- 테이블 데이터는 사용자의 관리가 필요하며 보관주기 설정은 지원 예정입니다.
- slow log 테이블은 조회에 일정 시간이 소요될 수 있으며 replication 대상이 아니므로 Primary 변경 시 기존 primary slow log는 변경된 신규 primary에 적재되지 않습니다.
프로시저의 자세한 설명은 Stored Procedure 문서를 참고하시기 바랍니다.
-
다음과 같이 구성옵션 프로시저를 통해 slow query, general log 설정(log_output)을 변경합니다. 해당 프로시저를 사용하는 경우, 카카오클라우드 모니터링의 로그 탐색기로 Slow Query를 확인할 수 없습니다.
CALL mysql.mnms_set_configuration('log_output', 'TABLE');
-
Slow Query를 확인합니다.
SELECT * FROM mysql.slow_log;
-
Slow Query 정보는 BLOB으로 저장되며 아래와 같이 형변환하여 확인할 수 있습니다.
SELECT start_time, user_host, query_time, lock_time, rows_sent, rows_examined, db, last_insert_id, insert_id, server_id, CONVERT(sql_text USING utf8), thread_id
FROM mysql.slow_log; -
log_output 설정을 원래대로 복구할 경우, 아래와 같이 입력합니다.
CALL mysql.mnms_set_configuration('log_output', 'FILE');
MySQL 재시작하기
가동 중인 인스턴스의 MySQL을 재시작할 수 있습니다. 현재 가용성 단일(Single) 인 인스턴스 그룹의 인스턴스만 재시작할 수 있습니다.
- 인스턴스의 상태가
PENDING
,STARTING
,TERMINATING
인 경우에는, 재시작을 할 수 없습니다.
- 카카오클라우드 콘솔 > Data Store > MySQL 메뉴로 이동합니다.
- Instance Group 메뉴에서 재시작할 MySQL 인스턴스 그룹을 선택합니다.
- 인스턴스 메뉴로 이동합니다.
- 재시작할 인스턴스의 [더 보기] 아이콘, MySQL 재시작을 클릭합니다.
- MySQL 재시작 팝업창에서 정보를 확인하고, [진행] 버튼을 클릭합니다.