brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Aug 14. 2023

33탄-4. AWS - RDS - 2023

33탄 - (요약) AWS 1일 완성 - 2023

목표

RDS 이해

RDS 모니터링 이해  - 인스턴스 모니터링, 운영체제 모니터링, 데이터베이스 엔진 레벨 모니터링


<1> RDS 란?

<2> AWS 데이터베이스 모니터링

<3> Amazon Cloudwatch 모니터링 - 실습

 <4> 확장 모니터링으로 확인하자. Amazon RDS Enhanced Monitoring  실습

<5> 성능개선 도우미 = Performance Insights 

<6> 성능 개선 도우미 실습

<7> DevOps Grue for Amazon RDS?



<1> RDS 란?


1

관계형 데이터베이스.

Relational Database Service



6가지?

Amazon Aurora  (아마존에서 만든것. mysql , postgre)

Aurora (MySQL Compatible)

Aurora (PostgreSQL Compatible)

Mysql

Postgre SQL

MariDB

SQL Server

ORACLE



3

하드웨어를 설치하거나 소프트웨어 설치를 하지 않아도 된다.

데이터베이스를 AWS의 완전 관리형 데이터베이스를 사용하면 AWS에서 운영 작업의 많은 부분을 관리해 준다.





<2> AWS 데이터베이스 모니터링


3가지 레벨의 모니터링 제공 


인스턴스 모니터링, 운영체제 모니터링, 데이터베이스 엔진 레벨 모니터링




1

인스턴스 모니터링 

Amazon Cloudwatch



2

운영체제 모니터링 

Amazon RDS Enhanced Monitoring 

디폴트는 안되어 있음.

생성시 enable 하도록 하세요.



3

데이터베이스 엔진 모니터링

Amazon RDS Performance Insights  (성능개선 도우미)

DevOps Grue for Amazon RDS


Amazon RDS Performance Insights  (성능개선 도우미)?

데이터베이스에 부하를 유발하는 여러 원인을 분석을 제공한다.


DevOps Grue for Amazon RDS?

머신러닝 기반으로 프로액티브한 진단과 분석을 제공한다.





<3> Amazon Cloudwatch 모니터링 - 실습


1

 Cloudwatch 메트릭으로 확인?

 cpuutil

 databaseConnections

 ReadLatency

 WriteLatency

 여유 메모리  



 2

 지표 유지시간?

 1분 미만 데이터는 3시간 유지.

 1분은 15일 유지.

 5분 데이터는 63일 유지 (2달 이군요)

 1시간은 15달 유지.  



 3

 경고 기능?

 SNS 서비스로 이메일이나 문자로 받아보자.  



 4

 Cloudwatch로  RDS 모니터링과 조치? 

 RDS -------- Cloudwatch ------------- SNS ------- 람다, SQS  


 스토리지 IOPS에 대한 지표가 임계치를 넘어서서 병목 현상이 일어나는 경우?

 람다 함수에서 관리자의 개입 없이 스토리지를 증설하여 자동 조치할 수 있다.  


람다는 함수

서버리스

사용량 대비


비용 ?

호출수

메모리

스토로지

https://aws.amazon.com/ko/lambda/pricing/



 5

 Amazon Aurora의 읽기 전용 복제본의 Auto Scaling 기능 사용? 

 읽기 전용 복제본 RDS의 CPU가 50% 이상이면, 데이터 베이스 복제본이 자동 확장되도록 설정가능하다.  



 6

 Cloudwatch 알람 기능 중  이상 탐지 기능이 있다.

 일반적으로 정책 기준으로 알람은 받는다.

 이상 탐지 기능으로 이전 대비 이상한 부분에 대해  알람을 받을 수 있다.  



 7

 Slack으로 알람을 받을 수 있다. 


 RDS ------- CloudWatch 알람 -------SNS -------AWS Chatbot ------Slack ----개발자 / 모니터링 담당자.    




 <4> 확장 모니터링으로 확인하자. Amazon RDS Enhanced Monitoring  실습



 1

 Cloudwatch 가 데이터베이스 인스턴스 레벨의 CPU 사용량 확인.

 확장 모니터링은 CPU 사용률 그룹 안에서 GUEST 프로그램에서 사용 중인 CPU 비율이나 유휴 상태 CPU 비율등 더 세분화된 CPU 사용지표를 확인할 수 있다. 


 2

 확장 모니터링 지표는 기본적으로 30일만 저장된다. (기간 조정 가능하다.) 


 3

 기능 활성화가 필요하다.

 (내부적으로 DB 인스턴스 에이전트가 설치되어 수집한다.)  




<5> 성능개선 도우미 = Performance Insights 


1

대시보드를 제공한다.


2

로드를 유발하는 SQL문과 이유 파악 가능하다.


3

기능을 활성화만 하면 된다. 따로 설치는 없다.


4

성능개선 도우미를 통해 적절한 시스템 사양을 제공할 수 있다. (비용 절감)

CPU load < vCPU 수  = 인스턴스 사이즈 축소 필요.

CPU load > vCPU 수  = 인스턴스 사이즈 확장 필요.




<6> 성능 개선 도우미 실습


1

RDS 생성.

데이터 입력 됨.


2

데이터 베이스 > 모니터링 탭 >  모니터링 > 향상된 모니터링 / 성능 개선 도우미 모두 활성화시켜야 사용가능하다.


3

ec2에서  rds로 부하를 주자.


4

성능개선 도우미에서 확인하자.




<7> DevOps Grue for Amazon RDS?


1

머신러닝 기반으로 프로액티브한 진단과 분석을 제공한다.


2

Insight  2가지 제공.

Reactive Insights와 Proactive Insights 제공한다


3

Reactive Insights?

현재 발생하고 있는 문제를 해결하는데 도움이 되는 권장사항과 지표 제공한다.



4

Proactive Insights?

데이터베이스 성능에 영향을 끼칠 수 있는 잠재적인 이슈에 대한 정보 제공.



5

사용을 위해서는 Amazon RDS 성능 개선 도우미 활성화해주어야 한다.

SNS와 연동해서 알람을 발생시킬 수 있다.




다음은 보안 지원 프로그램

https://brunch.co.kr/@topasvga/3403


기초 전체 자료

https://brunch.co.kr/@topasvga/3406

감사합니다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari