본문 바로가기
Project/Cloud Project

IaC를 이용한 클라우드 인프라 구축 프로젝트 5

by kjy1010 2023. 12. 5.

이전 포스팅에서는 Terraform을 이용해 AWS 환경 구성에 대한 소개와 구현방법에 대해 설명 진행하였습니다.

이렇게 생성한 EC2 서비스를 CloudWatch를 사용하여 모니터링 하는 두번째 프로젝트에 대해 설명드리도록 하겠습니다.

우선 CloudWatch에 대해 알아보겠습니다.

 

CloudWatch란?

Amazon CloudWatch는 AWS에서 제공하는 모니터링 및 관측 서비스로, 다양한 AWS 리소스 및 애플리케이션의 성능, 가용성, 상태를 모니터링할 수 있도록 지원합니다. CloudWatch를 사용하면 리소스의 상태를 실시간으로 추적하고 경보를 설정하여 문제를 빠르게 식별할 수 있습니다.

 

CloudWatch의 주요 기능과 개념

  • 지원되는 resource 및 Metrics
    - CloudWatch는 EC2 인스턴스, RDS 데이터베이스, ELB 로드 밸런서, S3 버킷 등 AWS에서 지원하는 다양한 서비스 및 resource의 성능 Metrics을 수집할 수 있습니다.
  • Custom Metrics
    - 사용자는 자신의 애플리케이션에서 생성한 사용자 정의 메트릭을 CloudWatch에 전송할 수 있습니다. 이를 통해 특정 비즈니스 메트릭을 모니터링할 수 있습니다.
  • 알람과 이벤트 기반 리액션
    - CloudWatch는 메트릭의 값이 특정 임계값을 초과할 때 경보를 생성할 수 있습니다. 경보는 이메일, SMS, Auto Scaling 등 다양한 방법으로 통지됩니다.
  • 대시보드
    - 사용자는 CloudWatch 대시보드를 생성하여 여러 메트릭 및 경보를 중앙에서 모니터링할 수 있습니다. 대시보드는 사용자 정의 가능하며, 필요한 메트릭 및 정보를 시각적으로 표시할 수 있습니다.
  • 로그 및 이벤트 기록
    - CloudWatch Logs는 로그 데이터를 수집하고 모니터링할 수 있습니다. 또한 CloudWatch Events는 AWS 리소스에서 발생하는 이벤트를 트리거하여 자동화된 작업을 실행할 수 있습니다.
  • Autoscaling 및 리소스 최적화
    - CloudWatch는 Auto Scaling 그룹에서 사용되어 자동으로 EC2 인스턴스 수를 조정하고, 리소스 사용률을 최적화하는 데 도움을 줍니다.
  • 모니터링 및 보안 규정 준수
    - CloudWatch는 모니터링 데이터를 보존하고 AWS 서비스 및 리소스에 대한 규정 준수를 도울 수 있습니다.

 

이제 CloudWatch를 이용하여 EC2서비스를 모니터링 할 수 있도록 구현하는 과정에 대해 소개해드리겠습니다.

 

 EC2 서비스를 CloudWatch를 사용하여 모니터링

 

1. EC2 인스턴스 생성
저는 Terraform을 이용해 AWS 환경 구성 구현프로젝트에서 생성한 EC2를 이용하여 진행하였습니다
.

 

2. 대시보드 생성

대시보드 이름은 team4_CloudWatch로 생성해주었습니다.

 

3. 위젯 추가

다음과 같은 과정을 통해 위젯을 추가해줍니다.

1) 행(시간별 지표)

2) 지표 (지표 기반 위젯 추가)

3) 지표 : EC2 > 인스턴스별 지표 > 각 인스턴스의 CPUUtilization 선택 > 위젯 생성

4) 위젯 추가

5) 텍스트 위젯 > ‘## EC2 web instance’ 입력 > 생성

위와 같은 과정을 통해 생성된 위젯을 확인 할 수 있다.

 

4. 경보 생성

다음과 같은 과정을 통해 경보를 생성해줍니다.

1) CloudWatch > 경보 > 경보 상태 > 경보 생성 > 지표선택

2) EC2 > 인스턴스별 지표 > 현재 인스턴스의 CPUUtilization > 지표 선택

3) 지표 및 조건 지정
    - 임계값 유형 : 정적
    - 경보조건 : 보다 큼
    - ..보다 : 70

4) 이름 및 설명 추가 : team4_web_CloudWatch_Alarms 추가

5) 경보 생성

6) 이메일 확인 및 Confirm subscription 클릭

Confirm subscription 클릭


 

7) 경보 생성 완료

정상적으로 경보가 생성된 모습을 확인 할 수 있음

 

이렇게 IaC를 이용하여 클라우드 인프라 구축 프로젝트를 마무리 했습니다.

Terraform을 이용해 AWS 환경을 구성하고 이렇게 생성한 EC2 서비스를 CloudWatch를 사용하여 모니터링하는 프로젝트를 진행하며, AWS서비스IaC 그리고 Terraform에 대한 이해도를 높일 수 있었습니다.

이번 프로젝트를 바탕으로 실제 서비스를 IaC를 이용해 배포하는 프로젝트를 진행해보고 싶다는 생각이 들었습니다.