반응형 배포7 Loki, Promtail 활용 로그 모니터링 환경 구축 해당 포스트에서는 Loki와 Promtail을 활용하여 서버에서 발생하는 로그들을 모니터링 서버에 보내고, 이를 손쉽게 확인할 수 있도록 만들도록 해보겠습니다.해당 포스트는 아래의 2개의 포스트에 있는 내용인 Prometheus, Grafana를 활용한 모니터링 환경 구축, Logback을 활용한 서버 로그 관리에 이어서 작업하도록 하겠습니다.프로젝트명이 변경된 부분을 제외하고는 내용은 동일합니다. Prometheus, Grafana를 이용한 EC2 모니터링 환경 구축프로젝트를 진행하면서 이후 유저에게 서비스를 제공하는 상황을 대비하여 배포 서버에 대한 모니터링 환경 구축을 해보고자 합니다.데이터 수집 툴 선택우선 EC2를 모니터링하기 위한 방식을dy-coding.tistory.com Logback을 .. 2024. 12. 4. Prometheus, Grafana를 이용한 EC2 모니터링 환경 구축 프로젝트를 진행하면서 이후 유저에게 서비스를 제공하는 상황을 대비하여 배포 서버에 대한 모니터링 환경 구축을 해보고자 합니다.데이터 수집 툴 선택우선 EC2를 모니터링하기 위한 방식을 선택할 때 2가지의 선택지를 고민했었습니다.첫 번째 선택지는 InfluxDB였고, 두 번째는 Prometheus였습니다. 둘 다 TSDB(Time Series DataBase)로써 시계열 데이터를 다루는 데에 특화된 데이터베이스입니다.저는 이 두 TSDB 중에서 아래의 글들을 참고하여 Prometheus를 선택하였습니다.https://multicloud.tistory.com/m/84 Prometheus vs InfluxDB편향적인 내용으로 당연히 절대 평가는 되지 않습니다. 상황에 맞게 써야 하며, 특성을 참고하는데 도움은.. 2024. 7. 18. Logback을 이용한 EC2 환경 로그 관리 이번 게시글에서는 Logback을 활용하여 EC2 환경에서 로그 관리하는 방법에 대해서 다루도록 하겠습니다.프로젝트를 진행하면서 로컬에서 개발할 때는 바로 로그를 확인할 수 있지만 EC2에 프로젝트를 배포해 놓았을 때는 로그를 바로 확인하지 못하면 사라지는 문제가 있었습니다.오류가 발생해도 로그 관리를 하지 못하여 인지하지 못하거나 다시 확인하지 못하는 것은 심각한 문제라 생각하여 스프링에서 제공하는 기능은 Logback을 활용하여 로그 관리를 하기로 결정하였습니다.로그백 설정Logback은 build.gradle에서 아래와 같은 라이브러리를 등록하면 사용할 수 있습니다. 해당 라이브러리는 스프링 개발을 위해서 필수적이기 때문에 사실상 추가로 해주어야 하는 작업은 없다고 생각하시면 됩니다.implemen.. 2024. 7. 17. AWS ec2 + rds 이용 스프링 프로젝트 배포 (4) - 스프링 프로젝트 배포 이전 포스트에서까지 ec2와 rds를 이용하여 배포할 서버를 준비하는 과정을 실습하였습니다. 이제 제가 만든 스프링 프로젝트를 배포하고 postman을 이용하여 제대로 동작하는지 테스트를 진행해보도록 하겠습니다. 우선 로컬 환경에서 작동하던 프로젝트를 ec2 서버에 올리기 위해서는 application.properties나 application.yml에 있는 DB 연동 정보를 수정해주어야 합니다. 아래의 그림에서 url에서 하얗게 칠해진 부분에는 DB의 엔드포인트를, password에는 이전 포스트에서 rds의 비밀번호로 설정해둔 값을 넣습니다. 그 후 우측의 gradle을 열어서 bootjar를 더블 클릭해주면 jar 파일이 생성이 됩니다. 위와 같이 jar 파일을 만든 뒤 다시 ec2 서버로 접속을 .. 2024. 1. 22. AWS ec2 + rds 이용 스프링 프로젝트 배포 (3) - rds 설정 이번 포스트에서는 rds를 설정하여 mysql과 ec2 서버를 연동해보겠습니다. 우선 아래의 그림과 같이 aws에서 rds를 검색하여 rds 서비스로 들어가줍니다. 위와 같이 rds를 누르면 아래의 화면이 나오는데 데이터베이스 생성을 눌러줍니다. 데이터베이스 생성 방식은 손쉬 생성으로 하고 저는 MySQL를 사용할 것이기 때문에 엔진 옵션을 MySQL로 선택해줍니다. 그 후 아래의 그림과 같이 프리 티어로 설정하고 DB 인스턴스 식별자, 암호 등을 설정해줍니다. 그리고 유의해야 하는 점이 우측 상단에 현재 내가 어디에 rds를 설정할 것인지에 대한 지역 정보가 있는데 이를 이전에 만들어둔 ec2 서버와 같은 위치로 해주어야 합니다. 마스터 암호도 나중에 rds에 접속할 때 필요하므로 따로 저장해둡니다. .. 2024. 1. 22. AWS ec2 + rds 이용 스프링 프로젝트 배포 (2) - ec2 연결 이전 포스트에서는 ec2를 생성하고 설정해보았습니다. 이번에는 로컬 컴퓨터에서 ec2 서버에 연결을 해보도록 하겠습니다. 이를 위해서 우선 putty와 puttygen을 설치해주셔야 합니다. 두 프로그램을 모두 깔았으면 우선 puttygen을 실행시켜 Load를 누르고 이전 포스트에서 생성했던 .pem 파일을 찾아줍니다. 해당 파일이 있는 곳으로 가서 확장자를 All Files로 바꾸면 해당 파일이 보일 것이고 이를 선택하여 열기를 눌러줍니다. parameters는 그대로 RSA로 두고 save private key를 눌러줍니다. 이 버튼을 누르면 .ppk 파일이 생성되는데 이를 이용하여 ec2에 접속할 것이기 때문에 이 파일도 잘 저장하여 두어야 합니다. 이제 Putty를 실행시켜 Host Name에 .. 2024. 1. 21. AWS ec2 + rds 이용 스프링 프로젝트 배포 (1) - ec2 생성 및 설정 해당 글은 AWS에 가입된 아이디가 있다는 전제 하에 작성되었습니다. 우선 ec2를 사용하는 방법을 알아보도록 하겠습니다. 우선 aws에 로그인하면 아래와 같은 화면이 나오는데 아래의 사진에 표시된 서비스를 누른 후 EC2를 눌러줍니다. 해당 버튼을 누르면 아래와 같은 화면이 나옵니다. 아래의 사진에서 인스턴스 시작 버튼을 눌러줍니다. 위의 버튼을 누르면 아래와 같은 화면이 나오는데 본인이 사용할 서버의 이름을 입력하여줍니다. 위와 같이 서버의 이름을 입력한 후 스크롤을 조금 내린 후 Quick Start에서 AMI를 Amazon Linux에서 Ubuntu로 설정하여 줍니다. AMI는 운영체제를 의미한다고 생각하셔도 좋습니다. 그 후 조금 더 스크롤을 내려 아래에 있는 새 키 페어 생성 버튼을 눌러 키 .. 2024. 1. 21. 이전 1 다음 반응형