전체 글

분석과 탐구

Amazon MSK 커넥션 끊김 이슈 디버깅 (feat. Nest.js, IRSA)

개요사내 아키텍처에서는 어플리케이션의 역할을 명확히 구분하기 위해 MSA(MicroService Architecture) 를 도입하고 있다. 여기서, RabbitMQ와 Kafka를 활용해 EDA(Event Driven Architecture)를 구성하고 있으며, 각각의 메시지 큐는 어플리케이션의 역할에 따라 선택하였다. 예를 들어, RabbitMQ는 순서 보장과 Queue 단위로 이벤트를 처리하기 수월한 도메인과 Kafka는 확장성과 처리량이 중요한 도메인에 적용하고 있다. 현재 메시지 큐는 AmazonMQ-RabbitMQ와 Amazon MSK-Kafka를 사용하고 있는데, 운영 환경에 MSK를 사용하는 신규 어플리케이션을 배포한 이후, 갑작스럽게 MSK 커넥션이 종료되는 문제가 발생하게 되었다. 이에 ..

Infrastructure

제로부터 시작하는 IRSA (feat.terraform)

🧩 개요Kubernetes를 클라우드 환경에서 구성할 때, 일반적으로 AWS EKS, Google GKE, Azure AKS와 같은 Cloud Service Provider(CSP)의 관리형 Kubernetes를 사용할 것이다. 우리는 이러한 서비스를 통해 Kubernetes Cluster의 Control Plane 및 Worker Node에 대한 고민 없이 관리를 자동화할 수 있게 된다. 만약, Cluster를 업그레이드하거나, 네트워크 설정을 온프레미스의 환경에서 작업하게 된다면, 엄청나게 머리 아픈일이 아닐 수 없다. 클라우드 환경에서 Kubernetes로 구성한 서비스들은 각 어플리케이션에 필요한 네트워크 설정, 권한 관리 필수적인 것이다. 특히, 권한 관리에서는 최소 권한 원칙(Zero Tru..

분석과 탐구

Terraform으로 생성한 IAM Role은 비정상일까?

개요이번 게시글은 OpenSearch에서 Snapshot Repository를 설정하여 로그를 백업하는 방법을 작성하려 했었다. 그러나 해당 작업을 구현하던 중 Terraform으로 생성한 IAM Role에서 이상이 있는 것을 확인하게 되었고, 이를 인지하기까지 많은 시간이 소요되었다. 이번 게시글에서는 Terraform Assume Role 문제를 해결하기 위해 겪은 과정을 공유하고자 한다. Assume Role Assume Role은 AWS STS를 이용해 특정 역할(Role)을 임시로 부여 받아 엑세스 권한을 획득하는 방식을 뜻한다. 각각의 개념을 먼저 알아보고, Assume Role이 어떤 역할을 하는지 살펴보도록 하자. AWS STSAWS STS(Security Token Service)는 특정..

Infrastructure

ALB를 이용해 EKS 단일 장애점 개선하기 (이론)

개요 최근 EKS로 인프라를 마이그레이션하면서, 수많은 챌린지를 진행하고 있습니다. 초기에는 EKS 구축에만 많은 리소스를 사용하고 있었지만, 현재는 어느정도 쿠버네티스가 익숙해졌고 EKS를 이용하여 다수의 어플리케이션이 배포된 상태입니다. 이렇게 EKS를 이용해 여러 서비스들이 배포된 상황이긴 하지만, 매번 설계한 아키텍처에서 마음에 들지 않는 부분이나 개선되었으면 좋을 부분들이 점점 눈에 띄고 있는 상태입니다. 이번 게시글에서는 사용에 직접적인 문제는 없지만, 개선되어야할 부분 중 하나인 Niginx Ingress Controller의 단일 장애점(SPOF, Single Point Of Failure)에 대한 개선기를 작성해보고자 합니다. 먼저 알아보기 1️⃣ Ingress 인그레스(Ingress)는..

Conference

AWS Unicorn Day 2024 방문기

개요최근 사내에서 엄청난 격변의 시기가 지속되고 있습니다. 인프라 개선부터 기술 스택, 보안, 추후 방향성에 대한 수많은 고민들이 눈앞에 다가오게 되었습니다. 그러던 중 사내 슬랙에서 AWS 컨퍼런스가 있다는 것을 알게 되었고, 현재 겪고 있는 문제에 대한 인사이트를 얻을 수 있을 것이라고 판단하였습니다. 그렇게, AWS Unicorn Day 2024에 방문하여 세션을 경험하며 어떤 인사이트를 얻었는지에 대해 이야기해볼까 합니다. AWS Unicorn Day 2024AWS Unicorn Day 2024는 다른 넥슨의 NDC나 네이버의 DEVIEW와 달리 모든 세션을 시간마다 선택하는 것이 아니라, 한개의 Track에 있는 모든 세션을 계속 듣도록 구성되었습니다. 저는 여러 트랙 중에서 현재 가장 많은 ..

커스텀 리
만능 코드공방