전체 글 122

Calico에서 Felix와 Typha가 맡는 일

Calico 구성을 보다 보면 Felix와 Typha가 함께 나온다. 둘 다 네트워크와 관련돼 있지만 하는 일은 다르다. 이 둘을 이해하려면 설정이 전달되는 길과 실제 요청이 오가는 길을 나눠 보는 게 편하다.아래 그림은 역할을 설명하려고 새로 그린 예시다. 실제 서버 구성이나 내부 주소는 담지 않았다.Felix는 노드에 반영하고, Typha는 변경을 전달한다Calico는 Pod 네트워크와 네트워크 정책을 제공하는 프로젝트다. Felix와 Typha는 그 안에 있는 구성 요소다. Calico·Felix·Typha를 같은 수준의 제품 세 개처럼 놓으면 관계가 헷갈린다.Felix는 각 노드에서 필요한 경로와 접근 제어 등을 반영하는 에이전트다. “이 Pod에 어떤 연결과 정책이 적용돼야 하는가”라는 상태를 ..

Infra | DevOps/K8S 2026.10.27

서버를 나누기 전에 확인한 것: 통신 경로와 파일 의존성

서버를 나누는 작업을 다시 돌아보니, 프로세스를 옮긴 뒤에도 확인할 것이 남아 있었다. 실행은 됐는데 입력을 못 받을 수도 있고, 요청은 도착했는데 처리 결과가 이전과 달라질 수도 있다. 그래서 이번에는 실행 위치가 바뀌면서 무엇을 함께 확인해야 했는지 정리해 봤다.아래 그림의 A·B와 경로는 설명을 위해 만든 가상 예시다.1. 분리 전에 확인한 의존성내가 먼저 정리한 것은 실행 위치, 파일 전달, 데이터 조회, 요청과 응답이었다. 한 서버 안에서는 로컬 파일을 읽는 것으로 끝났던 동작도, 실행 위치가 나뉘면 그 파일을 어떻게 받을지 정해야 한다. 코드를 옮기기 전에 이런 연결부터 적어 두니 어디까지 바꿔야 할지 범위가 보였다.1-1. 실행·파일·데이터·통신예를 들어 A가 입력 파일을 만들고 B가 처리한..

Infra | DevOps/K8S 2026.10.26

연차 어따 쓰지?

안녕하세요. 다들 무더운 여름 잘 지내고 계신가요? 저는 지금 여름휴가를 보내며 2026년 7월의 마지막 주말을 보내고 있습니다. 어느덧 2026년도 절반을 훌쩍 넘겼습니다. 이맘때쯤이면 여름휴가를 계획하게 되는데요. 연차를 언제 써야 공휴일과 주말을 이어서 가장 오래 쉴 수 있을까요? 직접 달력을 보면서 날짜를 하나씩 계산하기는 생각보다 번거로운 일입니다.저는 올해 처음 취업을 하면서 연차를 사용해 여름휴가를 계획합니다.그러다 보니 앞으로도 매년 비슷한 고민을 하게 될 것 같았습니다.“연차를 며칠 써야 가장 오래 쉴 수 있을까?” “공휴일 앞뒤로 연차를 붙이면 며칠이나 쉴 수 있을까?” “휴가 날짜는 정했는데, 어디로 가야 할까?” 이런 고민을 조금 줄여보고 싶어서 ‘연차 어따 쓰지?’라는 서비스를 만..

z-score의 본질: 차이를 표준편차 단위로 바꾸는 것

1. z-score를 왜 헷갈렸는가?t-test를 공부하면서 이런 식으로 이해했었다.t = 평균 차이 / 표준오차즉 t-test는 단순한 평균 차이를 보는 것이 아니라,그 차이가 표본 평균의 흔들림에 비해 얼마나 큰가?를 보는 방법이었다.그러다 보니 z-score도 비슷하게 보였다.처음에는 단순히:평균에서 얼마나 떨어져 있는가?정도로 이해했다.하지만 조금 더 정확히 보면 z-score는 단순 거리 개념이 아니다.관측값이 평균에서 표준편차 몇 개만큼 떨어져 있는지를 나타내는 값이다.2. 단순 차이만 보면 왜 부족할까?예를 들어 어떤 상품의 평균 무게가 다음과 같다고 하자.평균 무게 = 100g관측 무게 = 120g단순 차이는 다음과 같다.120 - 100 = 20g그런데 여기서 바로:20g 차이면 꽤 크다..

AI/Statistics 2026.05.20

t-test란 평균 차이가 아니라 "흔들림 대비 거리"를 보는 것

0. 들어가며처음에는 t-test를 단순히 다음과 같이 이해했습니다.두 평균이 다른지 확인하는 방법하지만 실제로 개념을 공부해 보니, 단순히 평균 차이를 비교하는 것과는 조금 달랐습니다.예를 들어:기준 평균 = 100g표본 평균 = 105g평균 차이 = 5g라고 했을 때, 정말 중요한 질문은 이것입니다.이 5g 차이는 실제로 의미 있는 차이일까?아니면 데이터를 측정하다 보면 충분히 나올 수 있는 흔한 흔들림일까?t-test는 바로 이 질문에 답하기 위한 방법입니다.핵심은 단순한 평균 차이가 아니라:그 차이가 흔들림에 비해 얼마나 큰가를 보는 데 있습니다.1. 어떤 상품의 무게를 측정한다고 가정해 보자어떤 상품의 기준 평균 무게가 다음과 같다고 가정해 보겠습니다.기준 평균 무게 = 100g그런데 실제 상품..

AI/Statistics 2026.05.14

컨테이너의 운영 본질: "실행이 아니라 운영이다" (Control Plane · Pod · Service · 선언형 시스템)

1. 왜 쿠버네티스(Kubernetes)가 필요한가?"컨테이너는 잘 띄웠는데, 운영이 지옥이다."Docker가 해결한 문제는 실행 환경의 표준화였습니다."내 PC에서는 되는데 서버에서는 안 된다."이 문제의 원인은 실행 환경 차이였고, Docker는 이를 이미지 기반 실행 환경 표준화로 해결했습니다.Docker의 격리 방식과 이미지 구조는 컨테이너의 본질: OS가 아니라 프로세스다에서 설명했습니다. 이 글에서는 여러 컨테이너의 배치와 상태 유지를 Kubernetes가 어떻게 관리하는지 살펴봅니다.하지만 실제 서비스 운영에는 여전히 남는 문제가 있습니다.컨테이너가 죽으면 누가 다시 띄우는가?트래픽이 늘어나면 어떻게 확장하는가?여러 서버 중 어디에서 실행할 것인가?업데이트는 어떻게 무중단으로 수행할 것인가?..

Infra | DevOps/K8S 2026.03.08

컨테이너의 본질: "OS가 아니라 프로세스다" (Engine·Image·CAS까지)

1. 서론 - Docker를 한 문장으로"내 PC에서는 되는데 서버에서는 안 된다."이 문제의 본질은 단 하나입니다.실행 환경이 다르기 때문입니다.Docker는 실행 환경을 표준화합니다.그리고 그 표준화의 단위는 "가상 OS"가 아니라 컨테이너입니다.2. Docker VS VM - 격리 단위가 다릅니다.2.1. 구조 비교┌─────────────────────────────┐ ┌─────────────────────────────┐│ 가상머신 (VM) │ │ 컨테이너 (Docker) ││ │ │ ││ ┌──────────┐ ┌──────────┐ │ │..

[Metric Learning] 거리 학습의 본질: Spectral 부터 Deep Metric Learning까지의 계보

[Metric Learning] 거리(Distance)로 지능을 정의하다: Spectral부터 Deep Metric Learning까지1. 서론: 분류(Classification)를 넘어 거리(Distance)의 공간으로우리가 흔히 접하는 딥러닝 모델은 대부분 "이 사진은 고양이인가, 강아지인가?"를 맞히는 분류(Classification) 문제를 풉니다. 이때 사용하는 Softmax 함수는 정해진 클래스(Closed-set) 내에서 확률을 계산하는 데에는 탁월하지만, 치명적인 한계가 있습니다.만약 학습 때 본 적 없는 새로운 강아지 품종이 들어오면 어떻게 될까요? 혹은 얼굴 인식 시스템(FaceID)에 등록되지 않은 외부인이 카메라를 본다면요? 일반적인 분류 모델은 이를 억지로 기존 클래스 중 하나로 ..

AI/Deep Learning 2026.02.08

[OSTEP] 12주차 - 39. 파일과 디렉토리 (Files and Directories)

CPU(프로세스)와 메모리(주소 공간)를 가상화했습니다.이제 마지막 퍼즐 조각: 영속적 저장소(Persistent Storage)입니다.메모리는 전원이 꺼지면 데이터가 사라지지만,디스크는 데이터를 영구적으로 보관합니다."OS는 영속적 장치를 어떻게 관리해야 할까?"이 글은 Remzi H. Arpaci-Dusseau와 Andrea C. Arpaci-Dusseau의 OSTEP 39장: Files and Directories를 공부하며 파일 API와 자료구조의 관계를 정리한 학습 노트입니다. 장치와 운영체제의 연결이 궁금하다면 앞선 I/O 장치 정리 글부터 읽으면 흐름을 이어갈 수 있습니다.1. 파일과 디렉터리의 개념파일(File)┌─────────────────────────────────────────┐│..

OSTEP 2026.01.18

[OSTEP] 12주차 - 36. I/O 장치 (I/O Devices)

지금까지 우리는 CPU 가상화(프로세스)와 메모리 가상화(주소 공간)를 배웠습니다.이제 세 번째 핵심 주제인 영속성(Persistence)으로 넘어갑니다.그 첫 관문이 바로 I/O 장치입니다.프로그램에 입력이 없다면? → 매번 같은 결과만 출력프로그램에 출력이 없다면? → 실행한 의미가 없음"OS는 I/O 장치를 어떻게 시스템에 통합해야 할까?"1. 시스템 아키텍처: 버스의 계층 구조왜 컴퓨터에는 여러 종류의 버스가 있을까요?답은 간단합니다: 물리학과 비용 때문입니다.┌─────────────────────────────────────────────────────┐│ 시스템 구조 ││ ..

OSTEP 2026.01.17