2026/04 5

[논문 리뷰] TurboQuant: Online Vector Quantization with Near-optimalDistortion Rate

https://arxiv.org/abs/2504.19874 TurboQuant: Online Vector Quantization with Near-optimal Distortion RateVector quantization, a problem rooted in Shannon's source coding theory, aims to quantize high-dimensional Euclidean vectors while minimizing distortion in their geometric structure. We propose TurboQuant to address both mean-squared error (MSE) and innerarxiv.orgAI 모델이 커질수록 가장 먼저 문제가 되는 것은 단..

논문 2026.04.21

[K8s] K8s 환경에서 Python 애플리케이션 모니터링 구축

기존에 docker-compose로 간단히 구축하던 Personal AI Dispatcher 서비스를 쿠버네티스(Minikube) 환경으로 이관하여 가시성을 확보하기 위해 모니터링 시스템을 구축했다. 단순 설치를 넘어 k8s 네트워크 계층과 Prometheus Operator의 동작 원리를 이해했던 내용들을 정리한다.1. Application Layer: Prometheus Metrics 서버 구축먼저 Python 앱에서 지표를 노출하기 위해, prometheus_client 라이브러리를 활용해 메트릭 서버를 별도의 스레드로 실행했다.💡 지표 정의와 'Lazy Initialization'의 함정프로메테우스의 Counter는 선언만 한다고 데이터가 생성되지 않는다. 실제로 데이터가 기록되기 전까지는 En..

코딩/k8s 2026.04.16

Swap 메모리로 1GB RAM 맷집 키우기

Oracle Cloud와 같은 클라우드 무료 티어나 저가형 서버를 쓰다 보면 당황스러운 순간이 온다. Docker를 올리거나 Nginx 설정을 바꾸는데 갑자기 터미널이 멈추고 서버 접속이 끊겨버리는 경우가 있다.원인은 명확하다. 1GB라는 미니미한 RAM 용량 때문입니다. 서버가 처리할 데이터는 많은데 담을 그릇이 부족하니 결국 서버가 '기절'해버리는 것이다. 오늘은 이 좁은 그릇을 대신해 하드디스크의 일부를 메모리처럼 사용하는 Swap(스왑) 설정으로 서버에 8GB급 맷집을 키워보자.🛠️ 1GB RAM 서버 심폐소생술 (Swap 7GB 설정)1. 7GB 크기의 빈 공간 확보하기서버 안에 7GB짜리 거대한 빈 파일을 만든다. 약 10~20초 정도 소요sudo fallocate -l 7G /swapfil..

코딩/Linux 2026.04.14

[K8s] 메모리 고갈로 인한 OOMKilled 테스팅

대규모 언어 모델을 포함한 AI 서빙 환경에서 가장 치명적인 위협은 CPU 부하가 아닌 메모리 고갈(OOM, Out Of Memory)이다. CPU 부하는 서비스의 지연을 초래하지만, 메모리 임계치 초과는 쿠버네티스 커널에 의한 컨테이너 즉시 사살로 이어지기 때문이다.이번 실습에서는 의도적으로 메모리 부하를 일으켜 k8s의 Self-healing 메커니즘과 메모리 기반 HPA(Horizontal Pod Autoscaler)의 실제 동작 방식을 분석했다.실험 환경 구축Infra: Minikube (Metrics Server 활성화)Monitoring: Prometheus & Grafana (w. Helm)App: Flask 기반의 'Mock-LLM' 서버 (요청 시마다 20MB씩 메모리 점유하는 로직 구현..

코딩/k8s 2026.04.06

[K8s] Minikube 환경에서 HPA와 k6로 구현하는 부하 테스트

로컬 환경인 Minikube에서 쿠버네티스의 핵심 기능 중 하나인 HPA(Horizontal Pod Autoscaler)가 실제로 어떻게 동작하는지를 확인하기 위해, k6를 이용해 트래픽 부하를 주고, Prometheus 와 Grafana로 모니터링하며 Pod가 자동으로 확장되는 과정을 정리해본다.1. 환경 세팅: Minikube먼저 맥북의 자원을 효율적으로 사용하기 위해 Docker 드라이버를 사용하여 minikube를 시작한다.Minikube 설치 및 시작brew install minikube# Docker 데스크탑 설정에서 CPU 4, Memory 8GB 이상으로 설정 권장minikube start --driver=docker --cpus=4 --memory=8192mb2. 모니터링 구축: Prom..

코딩/k8s 2026.04.02