essemNode.js 메모리 증가 문제운영하는 Node.js 기반 서버들의 메모리가 지속적으로 증가하는 문제를 발견하였다. 증가하는 양은 조금씩 다르지만, 심한 경우 아래와 같은 현상이 나타났다. 메모리가 갑자기 줄어든 경우는 메모리 부족으로 서버가 죽거나 새 버전 배포로 인해 재시작한…Aug 26Aug 26
essemSonarqube 설치하기Sonarqube는 소프트웨어 품질 관리 소프트웨어다. 이를 테스트 목적으로 로컬 머신에 설치하는 경우와, 서비스 목적으로 쿠버네티스에 설치하는 방법을 정리한다.May 2, 2023May 2, 2023
essemS3 Endpoint 사용하기AWS 내의 서버에서 S3에 접속할때 IP를 보면 공인 IP를 사용한다. 이 말은 같은 AWS 내에 있는 서비스를 사용하지만 불필요하게 인터넷 NAT를 통해서 S3를 접속한다는 의미이다. 이를 해결하기 위해 AWS는 S3 Endpoint를 제공한다.Feb 3, 2023Feb 3, 2023
essemSigned URL을 사용하여 CloudFront 접근 제어하기CloudFront를 사용하면서 일부 파일을 항상 공개로, 일부는 특정 시간 동안만 접근할 수 있도록 제한해야 할 경우가 있다. 이를 다음과 같이 구성해보자.Feb 16, 2022Feb 16, 2022
essemhaproxy를 이용하여 쿠버네티스 클러스터 안에서만 접속 가능한 서비스에 port-forward 하기쿠버네티스 안에 MySQL 서비스가 있다고 가정하면 kubectl port-forward 기능을 사용하여 로컬 컴퓨터에서 접속할 수 있다.Feb 3, 2022Feb 3, 2022
essem커스텀 ESLint 규칙 만들기프로젝트를 진행하다 보면 해당 프로젝트에만 필요한 규칙들이 생긴다. 범용적인 코드 검사 도구를 사용할 수 있으면 좋지만, 범용적이지 않은 규칙이라면 자체 도구를 제작하여야 하고, 그마저도 어렵다면 코딩 컨벤션을 통해 규칙을 지킬 수 있도록 해야…Oct 19, 2021Oct 19, 2021
essemEKS + Calico 조합에서 ALB 인그레스 컨트롤러 설치하기EKS는 파드 네트워킹을 위한 CNI 플러그인으로 Amazon VPC CNI 플러그인을 사용한다. 문제는 이 CNI가 각 파드 마다 ENI를 통해 IP를 추가하는데 ENI는 EC2 인스턴스 크기에 따라 개수가 제한되어 있다.Oct 30, 2020Oct 30, 2020
essem그라파나에서 슬랙으로 경고 보내기그라파나에서 슬랙으로 경고 메세지를 보내기 위해서는 Incoming Webhook을 사용하는 방법과 Bot User를 사용하는 방법 두 가지가 있다.Sep 20, 2020Sep 20, 2020