[책] "(가상 면접 사례로 배우는) 대규모 시스템 설계 기초"를 읽으며 - 2주차
·
인프라
필자는 클라우드 클럽 7기 시즌1 스터디에서 시스템 붕괴 방지 위원회(줄여서 시붕방) 스터디를 참여하게 되었습니다.3월 안으로 (가상 면접 사례로 배우는) 대규모 시스템 설계 기초 책을 읽고 국내 대기업의 시스템은 어떻게 이루어져 있을지 설계하고,4월에는 해당 책의 2탄을 읽고 마찬가지로 설계 해보는 스터디입니다. 우리 팀의 대부분은 직장인이지만, 필자는 대학생이기에 읽어보니 새로운 것들이 너무나 많은 것 같아 블로그에 정리하는 것도 목표로 두고 있습니다.단순히 책 내용을 요약정리하는 것이 아닌, 인상 깊었거나 궁금했던 점들 위주로 정리하는 것이 글의 주 내용입니다.당연히 슬프게도 틀린 내용이 있을 수 있으니 질문은 언제나 환영입니다.  # 6장 키-값 저장소 설계91p: 키-값 저장소키-값 저장소는 키..
[책] "(가상 면접 사례로 배우는) 대규모 시스템 설계 기초"를 읽으며 - 1주차
·
인프라
필자는 클라우드 클럽 7기 시즌1 스터디에서 시스템 붕괴 방지 위원회(줄여서 시붕방) 스터디를 참여하게 되었습니다.3월 안으로 (가상 면접 사례로 배우는) 대규모 시스템 설계 기초 책을 읽고 국내 대기업의 시스템은 어떻게 이루어져 있을지 설계하고,4월에는 해당 책의 2탄을 읽고 마찬가지로 설계 해보는 스터디입니다. 우리 팀의 대부분은 직장인이지만, 필자는 대학생이기에 읽어보니 새로운 것들이 너무나 많은 것 같아 블로그에 정리하는 것도 목표로 두고 있습니다.단순히 책 내용을 요약정리하는 것이 아닌, 인상 깊었거나 궁금했던 점들 위주로 정리하는 것이 글의 주 내용입니다.당연히 슬프게도 틀린 내용이 있을 수 있으니 질문은 언제나 환영입니다.  # 1장 사용자 수에 따른 규모 확장성--# 2장 개략적인 규모 추..
내가 만든 서비스가 MSA가 아닌가? (멍청)
·
인프라
블로그에 써놔야지... 하면서 아직까지 작성을 시작도 못한 프로젝트가 있다.영어학습 서비스인 "링고프레스"다. 혼자 풀스택으로 개발하면서 나름 많이 배웠다고 생각하고, 이걸 정리해놓자! 싶었지만, 그 글을 쓰는 것보다 이 프로젝트로 면접에서 했던 이야기를 먼저 쓰게 되었다. 면접 결과 전에 외부에 말하지 말라고 했던 게 기억나서, 일단 비밀글로라도 후다닥 써본다. 며칠 전 개발 관련 연합 동아리 면접을 보던 중 "MSA를 이용했다고 하는데, 어느 부분에서 사용했다고 말할 수 있나요?"라는 질문을 받았다. 사실 서버를 분리하여 각 서비스별 안정성이 독립적이면 MSA이지 않을까 라고 생각했고, 이 짧은 생각을 지원서에 작성했다. 그러니 면접관이 의아하게 생각하고 물어본 듯하다.현재 개발한 프로젝트는 하나의 ..
CKA 취득 후기
·
인프라
취득 계기쿠버네티스에 대한 공부는 24년도 초에 (CKA 준비용이 아닌) 유데미 강의를 보면서 조금해보았지만, 막상 제대로 구성해본 프로젝트도 없어서 이론만 겉핥기로 배우는 느낌이 강했었다. 그렇다고 군대에서 실습환경을 구성하기도 불가능에 가깝죠..또한, 인프라를 구성하고 작업하는 프로젝트 특성상 혼자할 수 있을까라는 생각도 들었습니다. 군대에 있다보니 인원을 제대로 구해보기도 쉽지 않아보였기에 말이죠. 그래서 AWS 자격증을 취득했을 때와 마찬가지로 군 복무라는 특수성에 의해, 자격증을 취득하기로 했습니다. 공부순서역시 유데미. 만 오천 원에 이 시험을 취득하는 사람이라면 누구나 듣는 뭄샤드 강의로 구매했습니다.24년 12월 중순부터 하루에 1~2시간정도만 보다가 1월이 되고서야 온종일을 투자할 수 있..
AWS SAA-C03 취득 후기 및 약간의 공부 팁?
·
인프라
취득 계기필자는 써본 AWS 서비스라고는 s3, ec2, route53, rds, 람다 정도밖에 없다.이것들도 내용을 이해하고 쓰기보다는 수박 겉 핥기 식으로 그때그때 찾아보고 쓰다 보니 언제 어떻게 쓰이는지를 잘 알지도 못하기도 하고 또 어떤 서비스들이 있나 궁금해서 취득하게 되었다.우선 SAA 시험은 Solution Architect Associate을 줄인 말로, 특정 상황에서 아키텍처가 어떤 서비들을 조합해서 사용할 수 있는지 설계하는 능력을 시험?(객관식 시험이라 얼마나 잘 될지는 모르겠지만) 한다고 보면 된다. 24년도 7월 중순부터 시작해서 10월 1일 시험 응시를 끝으로 SAA 공부를 끝냈다.중간에 훈련이나 다른 시험(포상휴가용)을 치르느라 2주는 날려먹어서 실 공부는 두 달 정도 진행하였..
[서버관리] aws cloudwatch를 이용해 인스턴스 오류 시 이메일 받자
·
인프라
어쩌다보니 프로메테우스, 그라파나 설정 방법과 이유보다, 이 글을 먼저 포스팅하게 되었다. 며칠 전 모니터링 툴과 에러 리포트 툴을 세팅하고, 기뻐하고 있었다. 이제 스프링 오류들은 다 나한테 보고가 되겠구먼! 사실 에러 리포트 툴이 해당 작업을 도와주는 거고 모니터링 툴은 성능지표 테스트할 때 사용할려고 우선 세팅해놓은 것이다. 기쁘게 설정을 다하고 하루가 지나고 이틀이 지나고 오늘이 되어보니, 내 서비스가 안들어가지더라. 분명 에러 리포트 된것도 없었었는데,,, 아이고 두야 하고 ssh 접속을 하려고 보니 인스턴스가 터져있는 거였더라고요? 에러 리포트 안되었다는 건 그렇다치더라도 사실 서버가 터지는건 쉽지 않은데.... 생각하면서 aws 들어가보니 "인스턴스 상태 검사"에 문제가 있었다. 이때,, 아..
[도커] docker run에서 주입한 환경변수를 cron에서도 사용하기
·
인프라
lingopress 프로젝트를 하면서, 하루에 한번 스크래핑해서 내 db에 올려주는 기능을 구현했어야 했다. aws 람다가 실패한 후(aws lambda..! 실패기 (tistory.com)), 시도한 방법이 docker run이었다. docker 컨테이너에 cron 적용하기(개행 문제도) (tistory.com) docker 컨테이너에 cron 적용하기(개행 문제도) 내가 며칠간 고생했던 부분의 핵심만 말하자면, 윈도우 유저는 도커 이미지에 cron을 사용하려면 개행 문자를 LF로 변경해줘야한다. 특정 로직이 주기적으로 작동되도록 구현하려면 보통 cron을 kid-chang.tistory.com 이렇게 햅삐하게 끝나는 줄 알았지만, 문제가 있었다. db 연결을 위해 환경변수를 주입하는데, 이 값들을 보..
[배포] github action과 Dockerfile로 CD 구성하기
·
인프라
이번 프로젝트를 하면서 목표했던 것 중 하나가 "도커"로 배포하기 였다. 왜 도커로 하는가? 이전 프로젝트들에서는 S3와 aws codedeploy를 이용해서 많이 배포했었다. 그런데 이런 방식으로 배포하면서 몇몇 불편함을 겪었었다. 우선 권한설정을 너무 많이 해야한다는 점이다. code deploy와 S3에 권한을 주기위해 aws IAM에서 여러 권한 작업들을 해줘야하는데 이 과정을 서너번 해봤지만 아직도 나에겐 너무 복잡하고 귀찮다. 또한, 추후 인수인계도 불편하다. 또한, appspec이라는 폴더와 내용들을 채워넣어야 한다. 이는 aws에 특정된 작업이고, 다른 클라우드 서비스를 이용하려면 조금씩 수정해줘야 한다. 이 부분은 사실 경험해보지 못했지만, 다른 벤더로 옮길 경우 추가적인 작업이 요구되는..