코드스테이츠_Devops_4기/final project 5

final) 프로젝트 마무리 회고

드디어 파이널 프로젝트가 끝났다! 내가 할 수 있을까 .. 싶었는데 역시나 항상 함께하는 팀원들이 있어서 영차영차 만들 수 있었다 프로젝트 소개 마라톤 대회 결과 기록 시스템 : 마라마라톤 (mrmrmthon) 개인 사용자와 대회 주최자를 위한 시스템 로그인 기능을 통해 토큰 발급 사용자에 따라 가능한 CRUD 작업이 다름 유저 데이터 베이스를 분리하여 관리 기록 데이터를 기반으로 사용자별 점수를 기록하는 시스템은 데이터 유실을 막기 위해 SQS를 통해 느슨하게 결합 가용성, 내결함성, 확정성, 보안성을 고려하여 시스템 구성 참고로 마라마라톤 이름 제가 아이디어를 냈답니다?(❁´◡`❁) 아키텍쳐 1️⃣ 개발자가 앱 개발을 하여 GitHub에 올리고 새로운 버전을 릴리즈하면 GitHubAction을 통한 ..

final) sns를 통해 웹훅으로 디스코드 메시지 전송하기

시간이 남으면 만들어 보자고 했던 웹훅 한번 만들어봤습니다. 원래 이런 아키텍쳐였는데 웹훅 개발을 하다보니 굳이 큐를 통해 메시지를 전달하지 않아도 되어서 sns에서 바로 람다가 디스코드 메시지를 전송하도록 했다. 람다를 만들고 기존에 우리가 만들어 둔 sns를 트리거로 붙여주었다 이때 자동으로 sns는 람다를 구독한다 이 구독이 뭔가하고 지워봤는데 지우니까 실행이 안되고 구독이 없다는 에러가 나서 다시 구독 설정을 해주었다, sns를 타고 람다까지 진입한 데이터 소스 코드를 수정해서 디스코드 메시지를 이쁘게 만들어주었다. 쨘 디스코드에서 웹훅을 할 수있도록 웹훅봇? 을 하나 만들어주어야한다. 그러면 기존 공식 기록 데이터베이스에 값이 들어가면 sns sqs를 통해 해당하는 사람에게 포인트가 적립되는 람..

final) IaC terraform 코드 작성

이것저것 작은 실수나 오타 빼고 리얼 개빡치는 오류나 설정을 작성해 보겠숩니다. 1. rds가 자꾸 default vpc에 맨들어지고 난리 보안그룹은 새로 만든 vpc에서 사용하는 보안그룹인디 rds는 default vpc에 만들어져서 안맞는다고 ㅈㄹ.. 그래서 rds의 vpc설정을 찾아보았다.. 콘솔에서는 vpc를 고르면 알아서 프라이빗 서브넷에 rds가 만들어졌는데, 테라폼은 뭐 서브넷 그룹으로 설정해줘야하는 것 같아서 서브넷 그룹일 만들어보았다 https://docs.aws.amazon.com/ko_kr/AmazonElastiCache/latest/mem-ug/SubnetGroups.html 서브넷 및 서브넷 그룹 - Amazon ElastiCache 이 페이지에 작업이 필요하다는 점을 알려 주셔서..

final) 서브넷 설정과 Grafana

서브넷 설정을 위해 새로운 VPC를 만들고 퍼블릭 서브넷과 프라이빗 서브넷을 만들었다 보안그룹도 새로 만들었당 일단 우리팀은 하나의 보안그룹을 사용하기로 해서 하나에 다 열어주었당 ECS 클러스터도 새로만든 vpc의 퍼블릭 서브넷에 만들어주었다 서비스도 만들긔 마찬가지로 퍼블릭 서브넷과 보안그룹까지 넣어주었다 elb도 붙여줌 데이터베이스도 새로 만들었다 메인 디비로 사용하는 다이나모디비는 따로 서브넷 설정할 필요는 없고 rds 만 서브넷 설정을 해주면서 다시 만들었다. rds는 vpc만 설정해주면 알아서 프라이빗 서브넷에 위치시킨다고 한다 끗~ 모니터링을 위해 그라파나를 띄울 ec2를 하나 만들어주었당 vpc 설정과 퍼블릭 서브넷 설정 그라파나를 도커로 올릴꺼라서 이러케.. 퍼블릭 IP 자동할당도 해주었..

final) 다이나모 디비를 트리거로 사용하는 람다함수만들기

다이나모 디비에 특정 테이블에 데이터가 들어가면 람다함수가 동작되도록 구현 시작했다. 트러블슈팅 1. 다이나모디비의 Stream 권한 설정 다이나모를 통해서 람다가 동작하려면 스트림설정을 해줘야한다. DynamoDB 스트림에 대해서만 읽기 액세스 권한을 부여하는 IAM 정책(테이블은 부여하지 않음) - Amazon DynamoDB 스트림에 대해서만 읽기 액세스 권한을 부여하는 IAM 정책(테이블은 부여하지 않음) 테이블에서 DynamoDB Streams를 활성화하면 테이블 항목의 모든 수정에 대한 정보가 캡처됩니다. 자세한 내 docs.aws.amazon.com 정책 만들어주었다. 그리고 람다함수를 정책을 추가해서 다시 생성해주었다 람다함수 트리거로 다이나모디비 붙이기 성공 그리고 람다함수의 값을 전달할..