Kubernetes 운영과 모니터링 및 오류 해결
·
project/resistance
resistance는 membership, dedicated, business, logging 총 4개의 마이크로 서비스로 구성되는 MSA 서비스이다.​ 아직 모니터링은 설치도 안했는데 배포하니까 총 Pod 64개가 나왔었다.​ 흠 4일정도 내내 틀어두니까 22$ 나왔다​NAT Gateway의 Data process보다 시간별 비용이 더 나온 것으로 보아 성능적 이슈는 안보였다. 근데도 오류 해결할때는 노드 성능탓만 했다ㅎㅎ​대략 게시글 7000개의 dummy 데이터를 넣어서 진행해봤는데, 무의미하게 데이터양만 늘린거 같다.​백엔드에서 동시 다발적으로 트래픽 과부하에 걸릴 정도의 병목에 버티느냐가 관건인거 같다.​​운영 모니터링 - Prometheus for k8sHelm repo를 설치해서 Promet..
Kubernetes 배포를 위한 클라우드 환경 구축
·
project/resistance
resistance 게임 프로젝트의 MSA 서버도 k8s 환경에서 배포하고자 한다.​내가 개발한 서비스를 실제 운영 환경에서 직접 관리하고 유지보수할 능력은 있어야 한다고 생각했기에, kubernetes에 대해 공부해봤다.​정확한 기간은 가격 정책 모니터링을 해야 알겠지만 목표는 일단 일주일동안 풀가동해서 모니터링하고 분석해보기​​​Terraform을 이용한 EKS 리소스 설치IaC(Infrastructure as Code)는 말 그대로 개발자들에게 친숙한 코드로 Infrastructure를 다루겠다는 소리다.​수동적인 프로세스로 관리하던 시스템과 인프라를 소프트웨어 개발과 유사한 방식으로 정의해서 쉽게 관리할 수 있다.이 IaC의 도구로, Terraform이 가장 널리 사용되고 있고 Terraform ..
Github Action으로 시작하는 GitOps 파이프라인(AWS ECR, Github Actions)
·
backend
Github Actions이 뭘까?CI/CD와 같은 workflow를 자동화 할 수 있는 도구로, 2018년부터 깃허브에서 제공하는 서비스.​깃허브를 통해서 버전 관리나 협업하는 이상, 깃허브 내의 이벤트(push,pull,merge ...) 의 발생에 대해 정해진 동작을 실행해주는 Actions 기능은 Jenkins같은 CI 툴만큼이나 편리할 수 밖에 없다. Public 레포지토리는 제한있는 무료로 사용 가능함.​Github CLI를 사용하면 Repository를 push하지 않더라도 Branch의 Actions들을 실행하고 필요한 정보를 넘겨줄 수 있다.​​​들어가기에 앞서서, 알아둬야할 핵심적인 개념을 소개하겠음 Github Actions의 구성1. WorkflowEvent를 트리거로 여러 Job으..
ArgoCD를 이용한 무중단 배포하기(Canary 방식, argo-rollout)
·
kubernetes
운영환경에 어떻게 배포하는지 Continuous Delivery/Deployment에 대해 알아보자.​Deployment는 그냥 바로 배포 때려버리는거고, delivery는 그냥 deploy전에 명시적 승인 절차를 마지막에 한번 두는거라는 차이점이 있다.​신뢰할수 있는 테스트 진행, 무중단 배포가 가능하다는 전제 하에 Deployment 배포가 되어야한다.​배포시 고려해야할 사항애플리케이션 다운타임 최소화사용자에게 미치는 영향 최소화실패한 배포를 안정적으로 롤백하는 방법​무중단 배포의 전략다운타임 없이 서버를 운영할 수 있다.그러니까, 서버의 중단 없이 업데이트를 이루는 배포 전략을 말한다.   Rolling 배포서버를 차례대로 업데이트 시키는 방식. 장점 : 인스턴스를 추가하지 않아 관리가 간편 단점 ..